记录Docker安装Mysql容器,及其数据卷的配置

1.进入Docker Hub

Docker Hub Container Image Library | App Containerization

2.无需登录,左上角search搜索Mysql,带有OFFICIAL IMAGE 的是官方提供的容器

进来之后进去mysql,在Tags里面找自己需要的版本,以8.0为例

3.我用的finashell,在命令行输入 docker pull mysql:8

[root@localhost ~]# docker pull mysql:8

4.安装完成之后查看

docker images

5.启动

docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root --name zspmysql --restart=always -d mysql:8.0

#设置端口映射

#设置密码

#设置名字

#设置容器自启动

6.运行mysql

docker ps 查看mysql运行的id,id为2d81960dc52a 

运行以下命令

docker exec -it 0c55686eeb36 bash

mysql -u root -p 

Enter password: root

7.进入mysql运行:

mysql> show databases;

8.开启远程权限,mysql8.0需要修改东西,依次执行下面步骤

1.给root用户分配远程访问权限

mysql> GRANT ALL PRIVILEGES ON *.* TO root@'%' WITH GRANT OPTION;

2.更换密码加密方式

mysql> ALTER USER 'root'@'%' IDENTIFIED BY 'zsp123456' PASSWORD EXPIRE NEVER;

3.更新用户密码

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'zsp123456';

4.刷新权限

FLUSH PRIVILEGES;

9.外部也可以连接。以Navcat为例,新建连接,服务器ip地址和账户密码就可以直接访问。

10.数据卷,持久化数据到宿主机,容器存储数据的路径在哪?/var/lib/mysql,接下来用-v命令

-v (参数一):(参数二) 

参数一:把数据存到哪里

参数二:要存储的数据在哪里

先把docker里面的容器全删除

 docker rm -f $(docker ps -qa)

运行以下命令

docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root --name zspmysql --restart=always -v /root/data:/var/lib/mysql -d mysql:8.0

运行之后会自动创建一个名为data的目录。

总结:启动mysql,开启端口映射(3306)指定用户名密码后台运行,在docker重启之后自动运行,设置数据卷,持久化数据到宿主机。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值