Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

ERRO:O carregamento de dados locais está desabilitado - isso deve ser habilitado nos lados do cliente e do servidor


Se o recurso LOCAL estiver desabilitado, no lado do servidor ou do cliente, um cliente que tentar emitir uma instrução LOAD DATA LOCAL receberá a seguinte mensagem de erro:
ERROR 3950 (42000): Loading local data is disabled; this must be
enabled on both the client and server side

Eu encontrei o mesmo problema quando quero carregar o arquivo de texto pet.txt na tabela pet seguindo um tutorial do Mysql:https://dev.mysql.com/doc/refman/8.0/en/loading-tables.html

Depois de pesquisar on-line, consertei seguindo estas etapas:
  1. defina as variáveis ​​globais usando este comando:
mysql> SET GLOBAL local_infile=1;
Query OK, 0 rows affected (0.00 sec)
  1. sair do servidor atual:
mysql> quit
Bye
  1. conectar-se ao servidor com a variável de sistema de arquivos local:
mysql --local-infile=1 -u root -p1

Essa variável controla a capacidade LOCAL do lado do servidor para instruções LOAD DATA. Dependendo da configuração local_infile, o servidor recusa ou permite o carregamento de dados locais por clientes que tenham LOCAL habilitado no lado do cliente. time ou runtime), inicie o mysqld com local_infile desabilitado ou habilitado, respectivamente. local_infile também pode ser definido em tempo de execução.
  1. use seu banco de dados e carregue o arquivo na tabela:
mysql> use menagerie
Database changed
mysql> load data local infile '/path/pet.txt' into table pet;
Query OK, 8 rows affected, 7 warnings (0.00 sec)

Funciona?

Referências:

https://dev.mysql.com /doc/refman/8.0/en/load-data-local-security.html https://dev.mysql.com /doc/refman/8.0/en/source-configuration-options.html#option_cmake_enabled_local_infile https://dev.mysql.com /doc/refman/8.0/en/server-system-variables.html#sysvar_local_infile