记录

1 在centos中安装宝塔面板

参照宝塔面板官方网页上步骤进行操作,然后登录网页地址

成功后直接拉取

成功后可以在本地镜像中看到

2 创建配置文件

cd /home/mysql/conf 
vim my.cnf
[root@plmomn-gw conf]# cat /home/mysql/conf/my.cnf
[client]
#设置客户端默认字符集utf8mb4
default-character-set=utf8mb4
[mysql]
#设置服务器默认字符集为utf8mb4
default-character-set=utf8mb4
[mysqld]
#配置服务器的服务号,具备日后需要集群做准备
server-id = 1
#开启MySQL数据库的二进制日志,用于记录用户对数据库的操作SQL语句,具备日后需要集群做准备
log-bin=mysql-bin
#设置清理超过30天的日志,以免日志堆积造过多成服务器内存爆满。2592000秒等于30天的秒数
binlog_expire_logs_seconds = 2592000
#解决MySQL8.0版本GROUP BY问题
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
#允许最大的连接数
max_connections=1000
# 禁用符号链接以防止各种安全风险
symbolic-links=0
# 设置东八区时区
default-time_zone = '+8:00'

 wq!保存文件后退出

3 创建容器

 点击创建容器使用命令创建

docker run 
-p 3306:3306 
--name mysql
--privileged=true
-v /home/mysql/log:/var/log/mysql  
-v /home/mysql/data:/var/lib/mysql  
-v /home/mysql/conf:/etc/mysql
-v /home/mysql/conf/my.cnf:/etc/mysql/my.cnf
-e MYSQL_ROOT_PASSWORD=root  
-d mysql:latest

创建成功,可以通过docker ps -a看到

 

 参考:Docker部署MySQL 8.3.0(保姆级图文教程)_docker 安装mysql8.3-CSDN博客

过程中报错处理:

容器启动失败,查看docker启动日志

[root@plmomn-gw conf]# docker logs mysql
2024-12-25 06:37:22+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 9.1.0-1.el9 started.
2024-12-25 06:37:22+00:00 [ERROR] [Entrypoint]: mysqld failed while attempting to check config
        command was: mysqld --verbose --help --log-bin-index=/tmp/tmp.T3ZII1YPbD
        mysqld: Can't read dir of '/etc/mysql/conf.d/' (OS errno 2 - No such file or directory)
mysqld: [ERROR] Stopped processing the 'includedir' directive in file /etc/my.cnf at line 32.
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!

提示没有/etc/mysql/conf.d/文件

在宿主机映射的位置创建conf.d

[root@plmomn-gw conf]# mkdir -p /home/mysql/conf/conf.d

再删除容器重新创建成功

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐