分类: 服务器与存储
2008-06-13 13:32:05
有两台,192.168.0.2和192.168.0.3。我需要这两台服务器上的MYSQL互为备份,设置如下:
在192.168.0.2的机器上安装MYSQL,并添加用户:
GRANT REPLICATION SLAVE ON *.* TO 'backup'@'192.168.0.3' IDENTIFIED BY '123';
修改my.cnf文件:
[mysqld]
log-bin
server-id=1
#master部分
sql-bin-update-same
binlog-do-db= test
#slave部分
master-host=192.168.0.3
master-user=backup
master-password=123
master-port=3306
server-id=2
master-connect-retry=60
replicate-do-db=testdatabase [要更新的数据库]
log-slave-updates
在192.168.0.3的机器上安装MYSQL,并添加用户:
GRANT REPLICATION SLAVE ON *.* TO 'backup'@'192.168.0.2' IDENTIFIED BY '123';
修改my.cnf文件:
[mysqld]
log-bin
server-id=1
#master部分
sql-bin-update-same
binlog-do-db= test
#slave部分
master-host=192.168.0.2
master-user=backup
master-password=123
master-port=3306
server-id=2
master-connect-retry=60
replicate-do-db=testdatabase [要更新的数据库]
log-slave-updates
然后重起这两台机器的MYSQL服务。
起动slave start就可以起动备份了。
如果有问题可以用如下命令:
SET GLOBAL SQL_SLAVE_SKIP_COUNTER = n
让SLAVE跳过MASTER上的N个事件。
START SLAVE UNTIL RELAY_LOG_FILE = 'debian-relay-bin.000001', RELAY_LOG_POS = 1;
用来指定relay日志和pos数。
详细请查看MYSQL MANUAL。