首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

linux mysql双机暖备

2012-08-10 
linux mysql双机热备linux mysql双机热备与win mysql双机热备略有不同,至少在win下面很快就OK.本例使用的

linux mysql双机热备

linux mysql双机热备与win mysql双机热备略有不同,至少在win下面很快就OK.

本例使用的是mysql5.1.45编译安装

linux下热备修改/etc/my.cnf

具体修改如下(截图)

linux mysql双机暖备

彩色部分内容为需要配置的地方

其中紫色本身配置文件中已写入,青色部分为后写入。红线为需要注意的地方,与另一台数据库的机器(库)不可以相同。

?

另一台机器配置与上相似,只需要修改server-id及ip即可。

?

二、在2个MYSQL上都要创建用于同步的账号

1、

Mysql>GRANT FILE , REPLICATION SLAVE ON *.* TO backup@'192.168.8.181' IDENTIFIED BY '123456'

mysql> GRANT ALL PRIVILEGES ON *.* TO backup@'192.168.8.181' IDENTIFIED BY '123456'

?

2.重启2个MYSQL服务

?

3.在2个MYSQL上都启动同步服务

?Mysql>slave start;

?

4.在2台服务器上查看备份线程状态

Mysql>show slave status;

?

*如果结果中Slave_IO_Running 和 Slave_SQL_Runing 的值都是Yes,Seconds_Behind_Master的值是0说明配置成功

?

三、问题与解决

1.? 现象:Slave_SQL_Running为No,Seconds_Behind_Master为null

原因:a.程序可能在slave上进行了写操作

?????????????? b.也可能是slave机器重起后,事务回滚造成的.

? 解决:

a.???? 假设在MYSQL_1上出现这种情况

b.??? 在MYSQL_2上查看主服务器状态:

Mysql>show master status;

+----------------------+----------+--------------+------------------+

| File??????????????????? | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+----------------------+----------+--------------+------------------+

| mysql-bin.000001? | 106????? |???backup_db????????????? |????????????????? |

+----------------------+----------+--------------+------------------+

c.???? 在MYSQL_1 上停止同步线程:

Mysql>slave stop;

d.??? 在MYSQL_1上手动执行同步

Mysql>change master to

>master_host=’192.168.8.181’,

>master_user=’backup’,

>master_password=’123456’,

>master_port=3307,

>master_log_file=’mysql-bin.000001’,

>master_log_pos=106;

e.???? 启动同步服务

??? mysql>slave start;

f.???? 通过show slave status 查看Slave_SQL_Running为Yes, Seconds_Behind_Master为0即为正常。

?

2.??? 现象:Slave_IO_Running为No, Seconds_Behind_Master为null

??????? 解决:

a.???? 假设在MYSQL_1上出现这种情况

b.??? 重启主数据库(MYSQL_2)

c.???? 在MYSQL_2上查看主服务器状态:

Mysql>show master status;

+----------------------+----------+--------------+------------------+

| File??????????????????? | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+----------------------+----------+--------------+------------------+

| mysql-bin.000001? | 106????? |???backup_db????????????? |? ????????????????|

+----------------------+----------+--------------+------------------+

d.??? 在MYSQL_1上停止同步服务

Mysql>slave stop;

e.???? 在MYSQL_1上执行下列命令

Mysql>change master to

>master_log_file=’mysql-bin.000001’,

>master_log_pos=106;

f.???? 在MYSQL_1上重新启动同步服务

Mysql>slave start;

热点排行