2017-02-22 4 views
1

Windows-2007 MySQL 5.7secure-Datei-priv Empty set

Empfangsfehler:

ERROR 1290 (HY000): Der MySQL-Server mit der --secure-Datei-priv Option läuft so es kann diese Aussage nicht ausführen

So ging ich davon aus, dass es einfach ein Privileg Fehler für das Verzeichnis war, dass ich meine DB gespeichert hatte.

So lief ich:

SHOW VARIABLES LIKE "secure-Datei-priv";

und zurückgegeben:

Empty set (0,00 sec)

so I für "my.ini" my.ini gesucht wird, in C: \ Program \ MySQL \ MySQL Server 5.7

MySQL ist im Verzeichnis C: \ Program Files (x86)

ich habe eine Kopie o f meine Links.csv in den Ordner Speicherort von my.ini und der Fehler immer noch zurückgegeben.

Drehbuch:

mysql> LOAD DATA INFILE 'Links.csv' INTO TABLE Verbindungen;

+0

Prüfen Sie [6.1.5 Server-Systemvariablen :: secure_file_priv] (https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_secure_file_priv). – wchiquito

+0

Ich habe das Dokument tatsächlich schon durchgesehen, was mich hierher gebracht hat. Es ist nicht intuitiv und ich bin neu in MySQL (Datenbank-Erstellung im Allgemeinen). Ich verstehe nicht, wie man den Befehl einrichtet. Wenn es hilft, ich 5.7.14 laufen lassen – Rthomas529

+0

Siehe [http://Stackoverflow.com/a/37614254/1316440](http://Stackoverflow.com/a/37614254/1316440). – wchiquito

Antwort

0

Ich verwende Windows 10.

Check:

mysql> SELECT VERSION(); 
+------------+ 
| VERSION() | 
+------------+ 
| 5.7.17-log | 
+------------+ 
1 row in set (0.00 sec) 

mysql> SHOW VARIABLES LIKE 'secure_file_priv'; 
+------------------+--------------------------------+ 
| Variable_name | Value       | 
+------------------+--------------------------------+ 
| secure_file_priv | V:\PATH\TO\MySQL Server\Files\ | 
+------------------+--------------------------------+ 
1 row in set, 1 warning (0.00 sec) 

mysql> SELECT `VARIABLE_VALUE` 
    -> FROM `performance_schema`.`global_variables` 
    -> WHERE `VARIABLE_NAME` = 'secure_file_priv'; 
+--------------------------------+ 
| VARIABLE_VALUE     | 
+--------------------------------+ 
| V:\PATH\TO\MySQL Server\Files\ | 
+--------------------------------+ 
1 row in set, 1 warning (0.00 sec) 

mysql> SELECT @@GLOBAL.secure_file_priv; 
+--------------------------------+ 
| @@GLOBAL.secure_file_priv  | 
+--------------------------------+ 
| V:\PATH\TO\MySQL Server\Files\ | 
+--------------------------------+ 
1 row in set (0.00 sec) 

Wenn Sie den Pfad ändern müssen, müssen Sie es tun in der my.ini Datei:

# Secure File Priv. 
secure-file-priv="V:/NEW/PATH/TO/MySQL Server/Files" 

dann starte MySQL neu: (in meinem Fall):

V:\>net stop MySQL 

V:\>net start MySQL 
+0

keine Würfel: SHOW VARIABLES LIKE 'secure_file_priv'; secure_file_priv | C: \ Programme \ MySQL \ MySQL Server 5.7 \ Uploads \ im my.ini Dokument finden Sie unter: C: \ Programme \ MySQL \ MySQL Server 5.7 geändert: secure-Datei-priv = "C:/Programdata/MySQL/MySQL Server 5.7/Uploads“ an: secure-Datei-priv = "C:/App/MySQL/MySQL Server 5.7/Datenbank" MySQL neu gestartet dann: SHOW VARIABLES LIKE 'secure_file_priv'; secure_file_priv | C: \ ProgramData \ MySQL \ MySQL Server 5.7 \ Uploads \ Keine Änderung – Rthomas529

+0

@ Rthomas529: Es scheint nicht die richtige my.ini-Datei zu lesen. Sie können das Ergebnis von (in meinem Fall): 'V: \> sc qc MySQL' posten. Siehe [SC] (https://technet.microsoft.com/en-us/library/bb490995.aspx). – wchiquito

+0

Sie haben Recht. sc qc MySQL57 zeigt "C: \ App \ MySQL \ MySQL Server 5.7 \ my.ini" MySQL57 während mysql> SHOW VARIABLES LIKE 'secure_file_priv'; zeigt "C: \ ProgramData \ MySQL \ MySQL Server 5.7 \ Uploads", aber ich kann den Pfad "secure_file_priv" nicht ändern. Wie weise ich MySQL57 auf den richtigen Pfad hin? – Rthomas529