mysql在docker中部署,主从复制,进入docker中的mysql

docker pull mysql:5.7



sudo docker run --name mysql-master4 -p 3328:3306   -v  /home/tom/0903/master:/etc/mysql/mysql.conf.d   -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

sudo docker run --name mysql-slave1 -p 3329:3306   -v  /home/tom/0903/slave1:/etc/mysql/mysql.conf.d   -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

//进入mysql容器
docker exec -it mysql-master /bin/bash

//登陆mysql
mysql -u root  -p123456  

//修改root可以通过任何客户端连接
ALTER USER  'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

//退出
exit

//重启mysql
docker restart mysql-master


change master to
master_host='192.168.145.130',
master_port=3328,
master_user='root',
master_password='123456',
master_log_file='mysql-bin.000003',
master_log_pos=154;

//启动从库引擎
start slave;

show slave status G;


//config

[mysqld]
port=3306
pid-file =/var/run/mysqld/mysqld.pid
socket =/var/run/mysqld/mysqld.sock
basedir=/usr/local/mysql
datadir =/usr/local/mysql/data
max_connections=200
max_connect_errors=10
character-set-server = UTF8MB4
default-storage-engine=INNODB  
#从库用MyISAM
default_authentication_plugin=mysql_native_password
symbolic-links=0
log-bin=mysql-bin
server-id=2

[mysql]

default-character-set=utf8mb4

[client]
port=3306
default-character-set=utf8mb4


//进入docker中的mysql
docker exec -it mysql01 /bin/bash #执行docker容器的mysql,这里容器名是mysql01

  之后就可以进入MySQL容器,mysql也可以用了

mysql -u root -p #进入容器名为mysql01的mysql
//创建表
create table 'Student'('name' varchar(30),'age' bigint(20) );
原文地址:https://www.cnblogs.com/kingsmart/p/15418153.html