
目录
今天给大家分享Centos8系统下安装mysql8.0.27,具体参考下面的步骤就可以使用Docker正确安装mysql。
- #拉取最新的mysql版本
- docker pull mysql
- #查看mysql镜像
- docker images mysql
输出:

启动容器创建宿主主机要挂载的目录,然后拷贝容器对应的目录到宿主主机。
- #运行mysql容器
- docker run --name mysql8 -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:8.0.27
- #查看mysql日志,如果没有报错信息,然后进行下面的操作
- docker logs mysql8
- #进入mysql容器内部
- docker exec -it mysql8 /bin/bash
- #查看mysql的配置文件my.cnf
- cat /etc/mysql/my.cnf
- #退出容器
- exit
- #当前服务器创建挂在mysql配置文件
- mkdir -p /usr/local/mysql8/conf /usr/local/mysql8/data
- #文件夹授权
- chmod -R 755 /usr/local/mysql8
- #将容器中的my.cnf文件拷贝到服务器
- docker cp 容器名:容器中my.cnf的路径/要拷贝到服务器的相应路径
- docker cp mysql8:/etc/mysql/my.cnf /usr/local/mysql8/conf
-
-
修改后my.cnf文件内容具体内容如下:
[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
secure-file-priv= NULL
character_set_server = utf8mb4
collation_server = utf8mb4_bin
- #停止容器
- docker stop mysql8
- #删除容器
- docker rm mysql8
- #进入服务器创建的mysql目录
- cd /usr/local/mysql8
- #创建mysql运行脚本
- vi mysqlRun.sh
mysqlRun.sh脚本内容如下:
设置MYSQL的配置信息、挂载目录、开放端口
- #!/bin/sh
- docker run \
- -p 3306:3306 \
- --name mysql8 \
- --privileged=true \
- --restart unless-stopped \
- -v /home/mysql8/conf/my.cnf:/etc/mysql/my.cnf \
- -v /home/mysql8/logs:/logs \
- -v /home/mysql8/data:/var/lib/mysql \
- -v /etc/localtime:/etc/localtime \
- -e MYSQL_ROOT_PASSWORD=123456 \
- -d mysql:8.0.27
-
-
- #执行脚本启动mysql容器
- sh mysql8-docker-run.sh
- #查看MySQL日志是否有报错
- docker logs mysql8
查看日志果没有报错,就可以用mysql客户端测试链接是否ok,
要保证mysql默认的3306端口可以外网访问。
验证mysql数据挂在是否成功
创建test数据库,创建user表
服务器MySQL数据如图:

- #docker容器查看是否有对应的数据文件
- docker exec -it mysql8 /bin/bash #进入容器内部
- cd cd /var/lib/mysql # 进入docker的MySQL目录
- ls #查看是否有test
- cd test #进入test目录
- ls #查看是否有 user.ibd 文件

- #停止容器
- docker stop <容器Id>
- docker stop 572219d3a0ca
- #重新启动
- docker start <容器Id>
- docker start 572219d3a0ca
-
-