mac docker环境搭建mysql主从同步服务器
参考地址:https://www.cnblogs.com/jinjiangongzuoshi/p/9299275.html
1.下载镜像
docker pull mysql:5.7.19
2.建立配用文件
--mysql
--master
--data
--conf
--my.cnf
--slave
--data
--conf
--my.cnf
3.master配置文件
[mysqld] log-bin= mysql-bin read-only=0 replicate-ignore-db=mysql replicate-ignore-db=sys replicate-ignore-db=information_schema replicate-ignore-db=performance_schema !includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mysql.conf.d/ |
4.slave配置文件
[mysqld] log-bin= mysql-bin read-only=1 replicate-ignore-db=mysql replicate-ignore-db=sys replicate-ignore-db=information_schema replicate-ignore-db=performance_schema !includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mysql.conf.d/ |
5. 启动服务
主服务
docker run --name mastermysql -d -p 3307:3306 -eMYSQL_ROOT_PASSWORD=123456 ~/docker/mysql-master/data:/var/lib/mysql -v ~/docker/mysql-master/conf/my.cnf:/etc/mysql/my.cnf 3e3878acd190
从服务
docker run --name slavemysql -d -p 3308:3306 -eMYSQL_ROOT_PASSWORD=123456 -v ~/docker/mysql-slave/data:/var/lib/mysql -v ~/docker/mysql-slave/conf/my.cnf:/etc/mysql/my.cnf imageid
6.进入容器
主服务
docker exec -it mastermysql bash
mysql -u root -p
//查看状态,记住File、Position的值,在Slave中将用到
show master status/G;
从服务 //进入slaver容器
docker exec -it slavemysql bash
//启动mysql命令,刚在创建窗口时我们把密码设置为:root
mysql -u root -p
//设置主库链接master_log_file(主服务File)master_log_pos(主服务Position)
change master to master_host='172.17.0.2',master_user='slave',master_password='123456',master_log_file='mysql-bin.000001',master_log_pos=0,master_port=3306; //启动从库同步 start slave; //查看状态 show slave status\G;
//启动从库同步
start slave;
//查看状态
show slave status\G;
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
mysql --help |grep 'my.cnf'
chmod 664 /etc/my.cnf
最新文章
- SVN提交代码的规范
- vs2013 无法打开 源 文件 ";SDKDDKVer.h";
- [开源ORM] SqliteSugar 3.x .net Core版本成功上线
- 获取程序的SHA1值
- css浮动与绝对定位小记
- sprintf()函数,把数字转换成字符串
- 学习ASP.NET MVC(七)——我的第一个ASP.NET MVC 查询页面
- face mask in opencv
- COM/ATL 资料收集
- hdu 4144 状态压缩dp
- 使用SharePoint 2010的母版页
- CAS SSO对手机应用支持的一种思路
- Android WebView Error – Uncaught TypeError: Cannot call method ‘getItem’ of null at
- 关于document.selection和TextRange对象的介绍
- 网站压力测试之ApacheBench
- NET 平台下的插件化开发内核
- angular指令笔记(一):ng-options
- Request和Response的格式
- maya cmds pymel selectType() 选择类型切换
- 2018-2019-1 20189201 《LInux内核原理与分析》第八周作业
热门文章
- 重启报错:Failed to open /dev/initctl: No such device or address
- linux强制将数据写入磁盘,防止丢失内存的数据
- Android:四大架构的优缺点,你真的了解吗?
- Confluence 6 临时目录(安装目录)
- Linux超级守护进程——xinetd
- ionic3 点击输入 框弹出白色遮罩 并把 界面顶到上面
- 2017-2018-2 20165314 实验三《 敏捷开发与XP实践》实验报告
- oracle 备份脚本
- 饮冰三年-人工智能-Python-13Python基础之运算符与数据类型
- 步步为营-90-SEO(url重写+超链接技巧)