-p 端口映射
--name 启动容器名称
-v 目录挂载
-e 初始化root密码
-d 后台运行mysql
--privileged
可能是时区问题。1、因为docker部署mysql主节点默认使用的UTC标准时区,所以会导致mysql的时间与实际时间相差8小时,这样docker部署mysql主节点为空的了。
2、这时候就需要输入vetclocaltimeetclocaltime,此方法仅能保证docker容器中的时区与宿主机一致,这样docker部署mysql主节点为空就解决了。
1 启动mysql实例docker run --name some-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
some-mysql: 容器别名
my-secret-pw:初始化设置的root用户的密码
tag:mysql的版本,不写默认使用最新版
-p 3306:3306:表示在这个容器中使用3306端口(第二个)映射到本机的端口号也为3306(第一个)
2 连接到mysql实例
2.1 连接到本地mysql
docker run -it --link some-mysql:mysql --rm mysql sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
2.1 连接其他地方的mysql
docker run -it --rm mysql mysql -hsome.mysql.host -usome-mysql-user -p
3 切换到容器shell中
docker exec -it some-mysql bash
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)