Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Fehler 1148 MySQL Der verwendete Befehl ist mit dieser MySQL-Version nicht erlaubt

Das Laden einer lokalen Datei in MySQL stellt ein Sicherheitsrisiko dar und ist standardmäßig deaktiviert. Sie sollten es nach Möglichkeit deaktiviert lassen. Wenn es nicht erlaubt ist, erhalten Sie diesen Fehler:

ERROR 1148 (42000): The used command is not allowed with this MySQL version

Lösungen:

  1. Verwenden Sie --local-infile=1 Argument in der mysql-Befehlszeile:

    Wenn Sie MySQL auf dem Terminal starten, schließen Sie --local-infile=1 ein Argument, etwa so:

    mysql --local-infile=1 -uroot -p
    
    mysql>LOAD DATA LOCAL INFILE '/tmp/foo.txt' INTO TABLE foo 
    COLUMNS TERMINATED BY '\t';
    

    Dann ist der Befehl erlaubt:

    Query OK, 3 rows affected (0.00 sec)
    Records: 3  Deleted: 0  Skipped: 0  Warnings: 0
    
  2. Oder senden Sie den Parameter an den mysql-Daemon:

    mysqld --local-infile=1
    
  3. Oder setzen Sie es in der Datei my.cnf (Dies ist ein Sicherheitsrisiko):

    Finden Sie Ihre mysql my.cnf Datei und bearbeiten Sie sie als root.

    Fügen Sie die local-infile hinzu Zeile unter den Bezeichnern mysqld und mysql:

    [mysqld]
    local-infile 
    
    [mysql]
    local-infile 
    

    Speichern Sie die Datei, starten Sie mysql neu. Versuchen Sie es erneut.

Weitere Informationen finden Sie hier:http:// dev.mysql.com/doc/refman/5.1/en/load-data-local.html