记录
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
再删除容器重新创建成功