用户'user = bn_moodle'@'localhost'的访问被拒绝(使用密码:否)

时间:2019-04-16 15:07:52

标签: docker docker-compose mariadb moodle

我从docker映像中的MariaDB数据库中获取了此错误,我正在使用this Moodle image的docker映像,并使用docker-compose up来启动实例。

我只想在Docker数据库中还原转储,我正在关注t his thread,并且正在测试此命令:

docker exec -i mysql-container mysql -uuser -ppassword name_db < data.sql

docker-compose.yml如下:

version: '2'
services:
  mariadb:
    image: 'bitnami/mariadb:latest'
    environment:
      - MARIADB_USER=bn_moodle
      - MARIADB_DATABASE=bitnami_moodle
      - ALLOW_EMPTY_PASSWORD=yes
    volumes:
      - 'mariadb_data:/bitnami'
  moodle:
    image: 'bitnami/moodle:3'
    environment:
      - MARIADB_HOST=mariadb
      - MARIADB_PORT_NUMBER=3306
      - MOODLE_DATABASE_USER=bn_moodle
      - MOODLE_DATABASE_NAME=bitnami_moodle
      - ALLOW_EMPTY_PASSWORD=yes
    ports:
      - '80:80'
      - '443:443'
    volumes:
      - 'moodle_data:/bitnami'
    depends_on:
      - mariadb
volumes:
  mariadb_data:
    driver: local
  moodle_data:
    driver: local

所以我正在这样做:

docker exec -i docker-instance-id mysql -uuser=bn_moodle bitnami_moodle < Dump20190402.sql 

由于在yaml文件中看不到任何用户密码,因此我没有传递密码,假设我可以不使用密码登录数据库。

但我遇到此错误:

  

拒绝用户'user = bn_moodle'@'localhost'的访问(使用密码:   否)

任何建议将不胜感激! 谢谢

1 个答案:

答案 0 :(得分:1)

您的exec命令中有错字。应该是--user=bn_moodle-u bn_moodle而不是--uuser

docker exec -i docker-instance-id mysql --user=bn_moodle bitnami_moodle < Dump20190402.sql