3
respostas

Não consigo criar usuário root no mysql e Criar as tabelas.

Ao criar o container do Mysql, não esta conseguindo criar o usuário root: ERROR 1396 (HY000) at line 1: Operation CREATE USER failed for 'root'@'%'

Eu alterei o compose e coloquei um usuário diferente, assim consegui subir o container normal. Porém, alterei o sh de subir as as tabelas com o meu usuário e a senha, mesmo assim não consegui criar as tabelas: ERROR 1045 (28000): Access denied for user 'weslley.goveia'@'localhost' (using password: YES)

Ate com o usuário root default não esta indo: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

Eu entrei dentro do mysql e executei os comandos para ver os usuários: +----------------+-----------+ | user | host | +----------------+-----------+ | root | % | | weslley.goveia | % | | mysql.session | localhost | | mysql.sys | localhost | | root | localhost | +----------------+-----------+

Mesmo assim não consegui, ate rodei o comando de todos os privilégios. Estou usando Windows, sera que é esse o problema?

3 respostas

Olá Weslley, tudo bem? Quando ao Windows, não vejo problema, porém você está utilizando o Docker for Windows ou o Docker ToolBox? Se for o Docker for Windows não terá maiores problemas. Quando ao problema realmente, você poderia tentar excluir o container do MySQL, com o seguinte comando (dentro da pasta mysql):

docker-compose down

E depois, "descompactar novamente o projeto inicial" (para usarmos as configurações iniciais), e tentar executar o comando :

docker-compose up -d

E depois você pode tentar entrar novamente no container e executar o arquivo import.sh para isso os passos são:

  • Na sua máquina executar o comando para entrar no container:
    docker exec -it banco_mysql bash
  • Depois, já dentro do container:
    cd /home
  • Agora é só executar o arquivo import.sh:
    sh import.sh
    Fala pra gente onde se o erro aconteceu novamente, se possível coloque todos os logs aqui pra gente poder verificar e ti dar uma resposta mais exata possível!

Ola Jonilson, tudo bem e você?

Segue o log: 2020-03-25 11:29:50+00:00 [Note] [Entrypoint]: Creating database empresa

2020-03-25 11:29:50+00:00 [Note] [Entrypoint]: Creating user root

ERROR 1396 (HY000) at line 1: Operation CREATE USER failed for 'root'@'%'

Weslley, isso realmente é muito estranho, executei aqui e funcionou normalmente, mas você poderia fazer o seguinte teste:

  • Excluir o container MySQL com o comando (dentro da pasta "mysql"):

    docker-compose down
  • Modificar o arquivo docker-compose.yml do MySQL e deixar da seguinte forma:

    version: '3.7'
    services:
    db:
      image: mysql:5.7
      container_name: banco_mysql
      volumes:
        - ./:/home
    
      ports:
        - '3306:3306'
      environment:
        MYSQL_DATABASE: 'empresa'
        MYSQL_ROOT_PASSWORD: 'q1w2e3r4'

    Fala pra gente qual o resultado!