mysql mariadb-启动容器后无法访问mysql db,直到重新启动容器

时间:2020-03-06 23:11:05

标签: mysql docker mariadb

使用SQL客户端或终端,一旦创建mariadb容器,将无法访问mysql数据库。我们可以访问容器内部的数据库,但不能从外部访问。从外部,只有重新启动容器后,我们才能访问数据库。下面是我的配置,请帮忙!

services:
  db:
     image: mariadb:10.4.10
     restart: always
     environment:
      MYSQL_ROOT_USER: root
      MYSQL_ROOT_PASSWORD: pwd@123
      MYSQL_DATABASE: homestead
      MYSQL_USER: my_user
      MYSQL_PASSWORD: pwd@123
      command: --init-file /data/application/init.sql
    ports:
      - "33067:3306"
    volumes:
      - ../mariadb/init.sql:/data/application/init.sql
   networks:
     my_net:
        ipv4_address: 172.27.1.7

尝试从主机访问时出现错误,无法从主机和另一个容器访问

yah@yahv:~/yah/docker/myDock$ mysql -umy_user -ppwd@shroot -h172.27.1.7 -P3306
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 2003 (HY000): Can't connect to MySQL server on '172.27.1.7' (111)

几个小时后,不确定确切多少时间,我能够访问数据库。我确定这是在不重新启动容器的情况下发生的,但是不确定数据库内部的sql进程是否已重新启动!

1 个答案:

答案 0 :(得分:0)

此行

1

您的连接线必须为

ports:
  - "33067:3306"