规划
使用docker方式极简安装mysql,适宜自研、开发和测试。
镜像
• mysql:5.7.30:官方镜像,支持x86-64,适用一般服务器
• biarms/mysql:5.7.30-linux-arm64v8:支持arm64v8,树莓派可用
宿主机
• 基础环境:centos-7.8/centos-7.9+docker-19.03.8
• 配置目录:无
• 配置文件:/opt/server/mysql/my.cnf
• 数据目录:/opt/server/mysql/data/
• 日志目录:/opt/server/mysql/data/
• 开放端口:3306
• 网络模式:host
拉取镜像
# x86-64
docker pull mysql:5.7.30
# arm64v8
docker pull biarms/mysql:5.7.30-linux-arm64v8-issue-03
配置文件
mkdir -p /opt/server/mysql
vi /opt/server/mysql/my.cnf
写入
[mysqld]
##
server_id=1
##
binlog-ignore-db=mysql
##
log-bin=replicas-mysql-bin
##
binlog_cache_size=1M
##
binlog_format=mixed
##
max_allowed_packet=125M
max_connections=200
max_connect_errors=10000
datadir =/opt/mysql/data
socket =/opt/mysql/data/mysql.sock
lower_case_table_names = 1
#Encoding
collation-server = utf8mb4_bin
init-connect='SET NAMES utf8mb4'
character-set-server = utf8mb4
log_error=error.log
[client]
default-character-set = utf8mb4
socket =/opt/mysql/data/mysql.sock
:wq关闭保存
启动容器
x86版本
docker run -d \
--name mysqld \
--net=host \
--privileged=true --restart=always \
-e TZ=Asia/Shanghai -e MYSQL_ROOT_PASSWORD=Fast@1234 \
-v /opt/server/mysql/my.cnf:/etc/mysql/my.cnf \
-v /opt/server/mysql/data:/opt/mysql/data \
mysql:5.7.30
arm64v8版本
docker run -d \
--name mysqld \
--net=host \
--privileged=true --restart=always \
-e TZ=Asia/Shanghai -e MYSQL_ROOT_PASSWORD=Fast@1234 \
-v /opt/server/mysql/my.cnf:/etc/mysql/my.cnf \
-v /opt/server/mysql/data:/opt/mysql/data \
biarms/mysql:5.7.30-linux-arm64v8
使用容器
• 访问地址:mysql://$:3306
• 用户名/密码:root/Faste@1234
删除容器
docker stop mysqld && docker rm mysqld
# 强制删除
docker rm -f mysqld
日常运维
docker start mysqld
docker restart mysqld
docker stop mysqld
备份相关
• 配置文件:/opt/server/mysql/my.cnf
• 数据目录:/opt/server/mysql/data/
评论区