ERROR 1045 (28000): Acesso negado para o usuário 'root' @ 'localhost' (usando a senha: YES)

1

Eu estou tentando copiar dados de CSV para o mysql usando script de shell onde sou novo. E estou trabalhando com meu servidor de teste.

mysql -u root -proot csv_imports -e "LOAD DATA INFILE '/var/www/html/$_csv_directory/$_csv_files' REPLACE INTO TABLE temp_test_data FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"' LINES TERMINATED BY '\n'"

Estou recebendo o erro

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

Se eu não estou trabalhando em localhost, por que está me dando erro de 'root' @ 'localhost' ?

então eu tentei

mysql -h name-database-db-instance.something.some-server.com -P 3306 -u root -proot -e "LOAD DATA INFILE '/var/www/test.server.re/public_html/csv_files/$_csv_files' REPLACE INTO TABLE table_data FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"' LINES TERMINATED BY '\n'"

agora está me dando erro:

Access denied for user 'codered_db_user'@'%' (using password: YES)

    
por Asmita 03.12.2015 / 14:32

1 resposta

0

Para responder à sua pergunta sobre "localhost" você precisa entender um pouco sobre os usuários do MySQL.

Um usuário no MySQL é, na verdade, composto de duas coisas:

  • o nome de usuário
  • um local de rede

Assim, o usuário 'root'@'localhost' cria um login de usuário para raiz para efetuar login no host local. Comigo até agora?

Você está realmente vendo isso acontecer porque, se você não especificar um host, seu cliente MySQL terá como padrão conectar-se a uma instância do MySQL em execução no host local.

Então, do ponto de vista dos servidores MySQL, a tentativa de login é iniciada pela raiz vindo do localhost, portanto 'root'@'localhost' .

Em relação à sua senha, parece que lembro que algumas versões do cliente precisam que você use --password not -p se estiver especificando a senha na linha de comando.

    
por 03.12.2015 / 17:15

Tags