Mysql创建双主复制
2019-05-02 11:28
34 查看
操作环境
操作系统:centos7.6
数据库:mysql 5.7
1. 配置my.cnf
centos命令:
vi /etc/my.cnf 打开编缉
在[mysqld]下面添加以下代码
数据库A:
server-id=1 log-bin=master-bin log-slave-updates=true auto_increment_increment=2 auto_increment_offset=1
数据库B:
server-id=2 log-bin=master-bin log-slave-updates=true auto_increment_increment=2 auto_increment_offset=2
说明:
server_id : 用于标识不同的数据库服务器
log-bin :二进制日志文件名
log-slave-updates :该从库是否写入二进制日志,如果需要成为多主则可启用。只读可以不需要。
auto-increment-offset :该服务器自增列的初始值。
auto-increment-increment :该服务器自增列增量。
2. 互相授权
-
配置好my.cnf后,需要重启数据库
service mysqld restart
-
登录数据库:
mysql -u admin -p
-
互相授权:
数据库A:
grant replication slave on *.* to 'slave'@'192.168.1.114' identified by 'Admin123!';
flush privileges;
数据库B:
grant replication slave on *.* to 'slave'@'192.168.1.112' identified by 'Admin123!';
flush privileges;
-
分别查看两个数据库master的状态
show master status;
记录下File和Position -
互相设置同步日志节点
数据库A:mysql> change master to ->master_host='192.168.1.114', ->master_port=3306, ->master_user='slave', ->master_password='Admin123!', ->master_log_file='master-bin.000001, ->master_log_pos=154;
数据库B:
mysql> change master to ->master_host='192.168.1.112', ->master_port=3306, ->master_user='slave', ->master_password='Admin123!', ->master_log_file='master-bin.000001, ->master_log_pos=154;
-
两台服务器启动slave
mysql> start slave;
-
查看slave状态
mysql> show slave status \G;
注意:两台服务器的防火墙必须关闭
至此 已完成mysql双主配置
相关文章推荐
- mysql 复制表结构或创建新表
- MySQL入门之创建、更新、修改、复制、查看表
- Windows环境下创建MySQL主从复制
- MySQL入门(6)- 创建表、表的复制、增/删/改 表结构
- mysql一些复制表、增删改索引、建存储过程、创建函数、创建触发器的一些命令
- [MySQL] 复制(3)- 创建主备复制(从另一个服务器开始复制)
- MySQL表结构复制、表数据迁移以及临时表、视图创建
- mysql ---复制表结构---创建新表
- MySQL复制旧表结构创建新表
- mysql复制创建表
- MySQL表结构复制、表数据迁移以及临时表、视图创建
- mysql如何新创建一个mysql只复制结构,或复制自己想要的内容
- [MySQL] 复制(2)- 创建主备复制(主备库都为空)
- MySQL基础教程2-创建表和列操作
- mysql的AB复制
- MySQL5.6同步复制新特性详解
- MySQL一主两从复制转换为级联复制
- mysql主从复制延迟问题
- mysql安装及主从复制
- linux上 mysql创建某个用户只对某个库有所有权限