Docker下安装mysql挂载本地配置本地数据库本地日志

环境:window10,docker desktop,docker image 是 mysql5.7

WSL2 仅适用于 Windows 10 版本 1903、内部版本 18362 或更高版本。

docker-desktop新版使用wsl2的Linux文件来提高文件性能了。下面的不适用新版本的docker-desktop了

步骤:

1、在E盘创建目录如下:

存放配置文件
E:/Docker/mysql-master/conf
存放日志文件
E:/Docker/mysql-master/logs
存放数据库文件
E:/Docker/mysql-master/data

2、cmd命令窗口下录入

docker pull mysql:5.7
docker run -p 3306:3306 --name mysql-master -v /E/Docker/mysql-master/conf:/etc/mysql/conf.d -v /E/Docker/mysql-master/logs:/var/log/mysql -v /E/Docker/mysql-master/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

3、创建E:/Docker/mysql-master/conf/my.cnf内容如下

#mysqld
[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
#表名字大小写是否敏感,1表示不敏感
lower_case_table_names = 1
#最大连接数
max_connections = 500

#最大错误连接数
max_connect_errors = 1000

############################主从复制设置#####################################
server-id=10
#开启mysql binlog功能
log-bin=mysql-bin

#binlog记录内容的方式,记录被操作的每一行
binlog_format = ROW

#对于binlog_format = ROW模式时,减少记录日志的内容,只记录受影响的列
binlog_row_image = minimal

#master status and connection information输出到表mysql.slave_master_info中
master_info_repository = TABLE

#the slave‘s position in the relay logs输出到表mysql.slave_relay_log_info中
relay_log_info_repository = TABLE

#作为从库时生效,想进行级联复制,则需要此参数
log_slave_updates

#作为从库时生效,中继日志relay-log可以自我修复
relay_log_recovery = 1

#作为从库时生效,主从复制时忽略的错误
slave_skip_errors = ddl_exist_errors

[mysql]
default-character-set = utf8mb4
[mysqld_safe]
default-character-set = utf8mb4
[client]
default-character-set = utf8mb4

 

启动后查看发现cnf文件生效

 

posted @ 2020-11-09 17:32  逆水寒龙  阅读(915)  评论(0编辑  收藏  举报