一、 概念: ① 数据库同步 (主从同步 --- 主数据库写的同时 往从服务器写数据) ② 数据库同步 (主主同步 --- 两台数据库服务器互相写数据) 二、 举例 主主数据库同步服务器配置
一、 概念: ① 数据库同步 (主从同步 --- 主数据库写的同时 往从服务器写数据)② 数据库同步 (主主同步 --- 两台数据库服务器互相写数据)
二、 举例主主数据库同步服务器配置数据库服务器(A) 主数据库 IP:192.168.1.134数据库服务器(B) 主数据库 IP:192.168.1.138两台服务器同步的用户名为: bravedu 密码: brave123
一、主数据库操作设置(A):
① 创建同步用户名 允许连接的 用户IP地址 (非本机IP)复制代码 代码如下:grant replication slave on *.* to 'bravedu'@'192.168.1.%' identified by 'brave123';flush privileges;② 更改mysql配置文件复制代码 代码如下:[mysqld] server-id = 1 log-bin=/www/mysql/binlog/binlog (路径要根据自己的安装设置)binlog-do-db = dbname (要同步的数据库名) binlog-ignore-db=mysql#相对应主从数据库同步不同的地方 复制代码 代码如下:log-slave-updatessync_binlog=1auto_increment_offset=1auto_increment_increment=2replicate-do-db = dbnamereplicate-ignore-db = mysql,information_schema重启mysql服务器
③ 查看主数据库同步状态 IP: ***.134 复制代码 代码如下:mysql>flush tables with read lock; mysql>show master status\G*************************** 1. row ***************************File: mysql-bin.000001 (这里注意 设置从服务器的时候要用)Position: 106 (这里注意设置从服务器的时候要用)Binlog_Do_DB: dbnameBinlog_Ignore_DB: mysql1 row in set (0.00 sec)mysql>unlock tables;*****主服务器到目前位置设置完毕*******二、从数据库操作设置(B):
① 创建同步用户名复制代码 代码如下:grant replication slave on *.* to 'bravedu'@'192.168.1.%' identified by 'brave123';flush privileges;② 更改mysql配置文件复制代码 代码如下:[mysqld] server-id = 2 log-bin=/www/mysql/binlog/binlog (路径要根据自己的安装设置)binlog-do-db = dbname (要同步的数据库名) binlog-ignore-db= mysql,information_schema#相对于主从同步不同的地方 binlog-do-db = dbname binlog-ignore-db=mysqllog-slave-updatessync_binlog=1auto_increment_offset=2auto_increment_increment=2重启mysql服务器
查看主数据库同步状态 IP: ***.138 复制代码 代码如下:mysql>flush tables with read lock; mysql>show master status\G*************************** 1. row ***************************File: mysql-bin.000005 (这里注意 设置从服务器的时候要用)Position: 106 (这里注意设置从服务器的时候要用)Binlog_Do_DB: dbnameBinlog_Ignore_DB: mysql1 row in set (0.00 sec)mysql>unlock tables;③ 指定主主数据库服务器同步指令注:IP为主服务器的IP,用户名,密码,log_file,log_post 服务器互相统一可能这块操作 需要先 解除锁表、停止数据库状态、在运行后 在启动状态复制代码 代码如下:mysql > stop slave;#设置192.168.1.138数据库服务器配置 那么host 配置文件信息 就是 134的信息mysql > change master to master_host='192.168.1.134', master_user='bravedu', master_password='brave123', master_log_file='mysql-bin.000005', master_log_pos=106;#设置192.168.1.134 数据库服务器配置 那么host 等配置文件信息 就是 134的信息mysql > change master to master_host='192.168.1.138', master_user='bravedu', master_password='brave123', master_log_file='mysql-bin.000001', master_log_pos=106; mysql > start slave;mysql > unlock tables;④ 查看主数据库同步状态 会出来很多信息 但是主要看这两个状态就行了 如果都是 yes 就可以了复制代码 代码如下:mysql>show slave status\G;Slave_IO_Running: YesSlave_SQL_Running: Yes至此,主主数据库同步成功配置完成。