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



使用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进程是否重新启动了!

使用此行

ports:
- "33067:3306"

您的连接线必须是

mysql -umy_user -ppwd@shroot -h172.27.1.7 -P33067

最新更新