sql >> Database teknologi >  >> RDS >> Mysql

Fejl 1148 MySQL Den brugte kommando er ikke tilladt med denne MySQL-version

Indlæsning af en lokal fil i MySQL er en sikkerhedsrisiko og er deaktiveret som standard, du vil lade den være fra, hvis du kan. Når det ikke er tilladt får du denne fejlmeddelelse:

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

Løsninger:

  1. Brug --local-infile=1 argument på mysql-kommandolinjen:

    Når du starter MySQL på terminalen, skal du inkludere --local-infile=1 argument, Noget som dette:

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

    Så er kommandoen tilladt:

    Query OK, 3 rows affected (0.00 sec)
    Records: 3  Deleted: 0  Skipped: 0  Warnings: 0
    
  2. Eller send parameteren ind i mysql-dæmonen:

    mysqld --local-infile=1
    
  3. Eller indstil det i my.cnf-filen (Dette er en sikkerhedsrisiko):

    Find din mysql my.cnf fil og rediger den som root.

    Tilføj local-infile linje under mysqld- og mysql-designerne:

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

    Gem filen, genstart mysql. Prøv det igen.

Mere info kan findes her:http:// dev.mysql.com/doc/refman/5.1/en/load-data-local.html



  1. Konverter hex til binær i MySQL

  2. Overvejelser om kryptering af data i hvile for MariaDB

  3. lokale samlingstyper er ikke tilladt i SQL-sætninger

  4. Brug af DATE_ADD med et kolonnenavn som intervalværdi