• 拉取Mysql镜像(:指定版本)
docker pull mysql:5.6
  • 运行容器
docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql 

-p 3306:3306 ,将容器的 3306 端口映射到主机的 3306 端口。

-v 本机路径:容器文件路径 ,可以将容器的文件挂载在本机上,便于数据迁移

-e MYSQL_ROOT_PASSWORD=123456 ,初始化 root 用户的密码。

成功后会显示id
  • 显示正在运行的容器
docker ps
  • 进入容器
docker exec -it mysql bash
  • 登陆sql
mysql -u root -p

如果在远程连接时提示

cryptography is required for sha256_password or caching_sha2_password

这是因为mysql5.7之后的版本将默认的密码使用lugin进行加密

  • 可以更改user表使密码还是原来的mysql_native_password
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;#修改加密规则 
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码 
FLUSH PRIVILEGES; #刷新权限
  • 启动容器
docker start <id>
  • 停止所有(指定id)容器运行
docker stop $(docker ps -a -q) | <id>
  • 查看镜像
docker images
  • 删除所有(指定id)镜像
docker rmi $(docker images -q) | <id>

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注