1. 程式人生 > 其它 >Docker部署Mysql,如何開啟binlog

Docker部署Mysql,如何開啟binlog

0.拉取映象

sudo docker pull mysql:5.7

1.建立存放對映資料夾

mkdir -p mydata/mysql/log
mkdir -p mydata/mysql/data
mkdir -p mydata/mysql/conf

2.docker run

sudo docker run -p 3306:3306 --name mysql
-v /mydata/mysql/log:/var/log/mysql
-v /mydata/mysql/data:/var/lib/mysql
-v /mydata/mysql/conf:/etc/mysql
-e MYSQL_ROOT_PASSWORD=password
-d mysql:5.7

3.修改配置檔案

切換到conf目錄下

touch my.cnf
touch my.conf

先修改my.conf配置

vi /mydata/mysql/conf/my.conf

下面是my.conf配置檔案內容

[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

再修改my.cnf配置

vi /mydata/mysql/conf/my.cnf

下面是my.cnf配置檔案內容

[mysqld]
log-bin=/var/lib/mysql/mysql-bin
server-id=123654
expire_logs_days = 30

儲存之後執行下面操作

  1. docker restart mysql #重啟mysql
  2. docker exec -it mysql bin/bash #docker啟動mysql客戶端
  3. mysql -u root -p
  4. show variables like '%log_bin%'; #檢視是否生效

log_bin : ON binlog開啟成功

參考:https://www.freebytes.net/it/java/dokcer-mysql-binlog.html