mac的m芯片+docker本地部署mysql8.0
一、镜像拉取
渡渡鸟的镜像小站:https://docker.aityp.com/image/docker.io/mysql:8.0.46?platform=linux/arm64
docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/mysql:8.0.46-linuxarm64
docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/mysql:8.0.46-linuxarm64 docker.io/mysql:8.0.46
二、配置
1、创建network
docker network create --driver bridge chaiysnetwork
2、docker-compose.yaml配置
version: "3.8"
services:
mysql:
image: mysql:8.0.46
container_name: mysql8
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: mysql123456
MYSQL_DATABASE: chaiys
MYSQL_USER: chaiys
MYSQL_PASSWORD: chaiys123456
TZ: Asia/Shanghai
volumes:
- ./data:/var/lib/mysql
- ./my.cnf:/etc/mysql/my.cnf:ro
networks:
- chaiysnetwork
networks:
chaiysnetwork:
external: true
数据挂载在同级目录下的data目录内。
3、my.cnf配置
配置挂载于同目录下的my.cnf文件:
[mysqld]
# ========== 基础配置 ==========
user = mysql
port = 3306
bind-address = 0.0.0.0
server-id = 1
# 字符集
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect = 'SET NAMES utf8mb4'
# 认证插件(MySQL 8 默认 caching_sha2_password,兼容旧客户端可改为 mysql_native_password)
default-authentication-plugin = mysql_native_password
# 完全禁用 SSL
ssl = 0
require_secure_transport = OFF
# 确保不自动生成 SSL 证书
skip_ssl
# ========== 存储引擎 ==========
default-storage-engine = InnoDB
# ========== InnoDB 配置 ==========
innodb_buffer_pool_size = 512M
innodb_buffer_pool_instances = 2
innodb_log_file_size = 128M
innodb_log_buffer_size = 16M
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
innodb_file_per_table = 1
# ========== 连接配置 ==========
max_connections = 200
max_connect_errors = 1000
wait_timeout = 600
interactive_timeout = 600
# ========== 查询缓存(MySQL 8 已移除,仅作说明) ==========
# query_cache_type = 0
# query_cache_size = 0
# 错误日志
log_error = /var/lib/mysql/error.log
# ========== 性能优化 ==========
tmp_table_size = 64M
max_heap_table_size = 64M
sort_buffer_size = 4M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
join_buffer_size = 4M
# ========== 安全 ==========
local_infile = 0
skip-symbolic-links
[mysql]
default-character-set = utf8mb4
[client]
default-character-set = utf8mb4
port = 3306
4、启动
docker compose up -d
浙公网安备 33010602011771号