sql >> Databasteknik >  >> RDS >> Mysql

Fel 1148 MySQL Det använda kommandot är inte tillåtet med denna MySQL-version

Att ladda en lokal fil i MySQL är en säkerhetsrisk och är avstängd som standard, du vill lämna den avstängd om du kan. När det inte är tillåtet får du detta felmeddelande:

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

Lösningar:

  1. Använd --local-infile=1 argument på mysql-kommandoraden:

    När du startar MySQL på terminalen, inkludera --local-infile=1 argument, något sånt här:

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

    Då är kommandot tillåtet:

    Query OK, 3 rows affected (0.00 sec)
    Records: 3  Deleted: 0  Skipped: 0  Warnings: 0
    
  2. Eller skicka parametern till mysql-demonen:

    mysqld --local-infile=1
    
  3. Eller ställ in det i my.cnf-filen (Detta är en säkerhetsrisk):

    Hitta din mysql my.cnf fil och redigera den som root.

    Lägg till local-infile rad under beteckningarna mysqld och mysql:

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

    Spara filen, starta om mysql. Försök igen.

Mer information finns här:http:// dev.mysql.com/doc/refman/5.1/en/load-data-local.html



  1. PHP While loop visar endast sista raden

  2. JSON_OBJECT() Funktion i Oracle

  3. SQL CASE-sats

  4. Hur man använder IF...THEN Logic i SQL Server