sql >> Databáze >  >> RDS >> Mysql

Chyba 1148 MySQL Použitý příkaz není v této verzi MySQL povolen

Načítání lokálního souboru v MySQL představuje bezpečnostní riziko a je ve výchozím nastavení vypnuto, chcete-li jej nechat vypnuté, pokud můžete. Když to není povoleno, zobrazí se tato chyba:

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

Řešení:

  1. Použijte --local-infile=1 argument na příkazovém řádku mysql:

    Když spustíte MySQL na terminálu, zahrňte --local-infile=1 argument, Něco jako toto:

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

    Potom je příkaz povolen:

    Query OK, 3 rows affected (0.00 sec)
    Records: 3  Deleted: 0  Skipped: 0  Warnings: 0
    
  2. Nebo odešlete parametr do démona mysql:

    mysqld --local-infile=1
    
  3. Nebo jej nastavte v souboru my.cnf (Toto je bezpečnostní riziko):

    Najděte svůj mysql my.cnf soubor a upravte jej jako root.

    Přidejte local-infile řádek pod označením mysqld a mysql:

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

    Uložte soubor, restartujte mysql. Zkuste to znovu.

Více informací naleznete zde:http:// dev.mysql.com/doc/refman/5.1/en/load-data-local.html



  1. Hodnoty oddělené čárkami v klauzuli MySQL IN

  2. Jak vytvořit schéma v Oracle pomocí SQL Developer?

  3. PDOException SQLSTATE[HY000] [2002] Žádný takový soubor nebo adresář

  4. Určete, zda příkaz sql začíná slovem SELECT