mysql 双机热备
来源:互联网 发布:网络安全工程师待遇 编辑:程序博客网 时间:2024/05/01 12:39
mysql 热备配置出现的问题
最近公司做mysql数据库的双向热备,期间遇到有如下问题:
1、主备机的server-id=ID 数一样导致不能建立mysql热备;
2、同步的数据库表建了触发器,会导致同步到备机重复进行写操作,导致“primary key”主键重复写入错误;
3、跨库操作的sql语句,不记mysql同步日志,不同步到备机上;
4、mysqldump导出数据库时,一并导出了触发器(可以采用:mysqldump -uroot -p123456 hacconf --ignore-table=hacconf.network_config --triggers=false >/val/log/hacconf.sql)
mysql双机热备实施
1、建立mysql数据库双向热备,首先建立复制帐号,帐号名和密码为“slaveuser”,执行的sql语句如下:
GRANT REPLICATION SLAVE ON *.* TO 'slaveuser' @ '%' IDENTIFIED BY 'slaveuser';
#GRANT REPLICATION SLAVE ON *.* TO 'slaveuser' @ 'RedunHost' IDENTIFIED BY 'slaveuser';
2、修改主备机的my.cnf配置文件
server-id = 1
log-bin=mysql-bin
relay-log=relay-bin
log-slave-updates
#slave-skip-errors = all(可选)
master-host = RedunHost
master-user = slaveuser
master-password = slavepass
master-port=8004
#跨库操作配置
replicate-wild-do-table=db_name.%
如果需要同步跨库操作,需使用 –replicate-wild-do-table=db_name.% 选项
#replicate-do-db=db_name 指定要复制的数据库,本身不支持跨库更新
replicate-do-table=db_name.t_name (db_name.%) 同replicate-do-db功能类似,与replicate-do-db区别,支持跨库更新
注解:
server-id = 1
服务器ID号,整数值,保证唯一标识一台服务器就可以
log-bin=mysql-bin
打开二进制日志
relay-log=relay-bin
中继日志名称
master-host = RedunHost
主服务器IP地址或者主机名,比如:172.20.16.204
master-user= slaveuser
主服务器上创建的复制用户帐号名称,比如以上创建的:slaveuser
master-password=slaveuser
主服务器上创建的复制用户帐号密码,比如以上创建的:slaveuser
relay-log-index=relay-bin
中继索引文件名称
slave-skip-errors =all 是跳过错误,继续执行复制操作(可选)
log-slave-updates
log-slave-updates 这个参数一定要加上,否则不会给更新的记录些到二进制文件里
主备机执行Reset master;stop slave;reset slave;start slave;
重启主备机mysql服务,主备机执行show slave status/G,如果复制状态Slave_IO_Running,Slave_SQL_Running都为Yes,说明复制已经配置正确。
注:以上配置针对主备机数据库数据一致进行的操作,若要某些操作不记录mysql同步日志,可以用“set SQL_LOG_BIN = 0或1;”设置打开记录mysql同步日志的开关。
- Mysql双机热备
- mysql 双机热备
- mysql双机热备
- MYSQL双机热备
- mysql 双机热备
- mysql双机热备
- MySQL 双机热备
- mysql双机热备。
- mysql双机热备
- mysql双机热备
- MySQL双机热备
- MYSQL双机热备
- MYSQL双机热备
- mysql 双机热备
- MySql数据库双机热备
- linux mysql双机热备
- mysql 双机热备实战
- mysql双机热备问题
- 【转载】给未来的电子工程师
- 美国俚语:Keep your eyes peeled什么意思?_
- 美国俚语:Brown nosing的特殊意思_英语口语_可可英语
- 小议JNI
- 美国俚语:Fine 的特殊意思
- mysql 双机热备
- 【转载】如何学习嵌入式开发
- 美国俚语:Dark meat?什么意思
- 让 .Net 程序 脱离 .net framework框架 运行(源代码实现说明)
- null或空值的判断处理-java
- 【转载】一位嵌入式工程师的学习经验
- 美国俚语:Get away with murder什么意思?_
- java异常
- JMS createSession方法参数