使用docker容器化部署mysql8.0.27,并更改其默认端口3306为3306全流程记录。
1.创建镜像
#查看镜像
docker images|grep mysql
#搜索镜像
docker search mysql
#拉取镜像
docker pull mysql:latest
#运行镜像,--name 后的参数自己命名,我的数据库密码设置为root
docker run --privileged=true --name mysql-harbor -d -p 3307:3307 -e MYSQL_ROOT_PASSWORD=root mysql
#退出容器
exit
2.修改默认端口号
1、进入容器
docker exec -it mysql-harbor /bin/bash
2、进入容器后,进入到/etc/mysql文件夹,修改 my.cnf ,有以下两种方法
第一种方式
因为没有安装vim编辑器,所以会报错。
root@f6054e37e2dd:/etc/mysql# vim my.cnf
bash: vim: command not found
安装 vim 命令 相对麻烦
以下是安装vim的命令(我是用的第一个,第二个我的不成功)
获取到最新的软件包 (必须先update在install)
apt-get update
apt-get install vim
或
yum update
yum install vim
然后 vim /etc/mysql/my.cnf 修改端口号
在配置文件中添加端口
第二种方式:先将 my.cnf 复制到宿主机中修改,修改完成再复制进容器(推荐)
命令说明
mysql-harbo: 是指容器名
/etc/mysql/my.cnf:是指容器中 my.cnf路径
/data/mysql-harbo/:my.cnf 是指在宿主机保存路径 (若/etc下没有文件夹需要创建)docker cp mysql-harbo:/etc/mysql/my.cnf /data/mysql-harbo (复制前必须先退出容器,否则找不到该命令)
然后在使用vim my.cnf 进入文件修改或添加端口号
添加或者修改完成之后再将文件重新复制进容器内
docker cp /data/mysql-harbor/my.cnf mysql-harbor:/etc/mysql/
3、重启容器
docker restart mysql-harbor
4.测试连接
5最后登录mysql查看端口
show global variables like 'port';