Docker + MySql 安装过程中的那些坑!!!

# docker拉取mysql镜像
#  [镜像类型:版本号](例如: mysql:latest)
docker pull mysql:latest
# 查看本地镜像
docker images
# 查看运行的容器
docker ps
# 创建并启动mysql容器
#  -p 3306:3306 (将容器的[3306]端口映射到主机的[3306]端口)
#  --name 给启动容器命名
#  -e MYSQL_ROOT_PASSWORD=123456 (初始化root用户的密码)
#  -d 后台运行容器,并返回容器ID
#  [服务类型:版本号] (例如: [ mysql:latest ])

docker run -p 3306:3306 --name localmysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest

# 特殊说明: 
#  1.不配做 [-p] 宿主机与docker的映射,会造成mysql客服端无法连接
#  2.如果一开始忘记做映射怎么办?删除容器再来一遍,这比你修改映射来的简单
#  3.Mysql8.0+上的版本, 客户端直接连接,会出现如下异常,继续跟着往下操作就行 
#   “Authentication plugin 'caching_sha2_password' cannot be loaded 乱码”
# 进入mysql容器
#  -t 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上
#  -i 则让容器的标准输入保持打开
docker exec -ti localmysql /bin/bash
# 进入mysql服务
#  -u 用户名
#  -p 登录密码
mysql -uroot -p123456
# 更新密码-加密算法
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
#  或
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

【此时mysql客户端,就可以正常连接了】

# 退出: mysql服务/mysql容器
exit
# 停止容器(mysql)
docker stop localmysql
# 启动现有容器(重启容器-mysql)
docker start localmysql
# 查看容器的标准输出
docker logs localmysql
#  或
docker logs ID
# 删除容器(mysql)
docker rm localmysql

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值