时间:2021-05-24
一、 概念:
① 数据库同步 (主从同步 --- 主数据库写的同时 往从服务器写数据)
② 数据库同步 (主主同步 --- 两台数据库服务器互相写数据)
二、 举例
主主数据库同步服务器配置
数据库服务器(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-updates
sync_binlog=1
auto_increment_offset=1
auto_increment_increment=2
replicate-do-db = dbname
replicate-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: dbname
Binlog_Ignore_DB: mysql
1 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=mysql
log-slave-updates
sync_binlog=1
auto_increment_offset=2
auto_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: dbname
Binlog_Ignore_DB: mysql
1 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: Yes
Slave_SQL_Running: Yes
至此,主主数据库同步成功配置完成。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
一、概念:①数据库同步(主从同步---主数据库写的同时往从服务器写数据)②数据库同步(主主同步---两台数据库服务器互相写数据)二、举例数据库服务器(A)主数据
sysaltfiles主数据库保存数据库的文件syscharsets主数据库字符集与排序顺序sysconfigures主数据库配置选项syscurconfigs
1、什么是mysql主从同步?当master(主)库的数据发生变化的时候,变化会实时的同步到slave(从)库。2、主从同步有什么好处?水平扩展数据库的负载能力
本文档主要描述了Linux下python数据库驱动的安装和配置,用来实现在Linux平台下通过python访问MySQL、Oracle、SQLServer数据库
Linux下MySQL数据库的主从同步配置的好处是可以把这个方式当做是一个备份的方法,用来实现读写分离,缓解一个数据库的压力。让运行海量数据的时候无论是从速度还