mysql的master和slave主从服务器的配置

来源:互联网 发布:鬼冢虎 知乎 编辑:程序博客网 时间:2024/05/20 05:30

1.主服务器的配置,在my.cnf的[mysqld]中加入:log-bin server-id=1两行,并重启mysql。

2.在主服务器上创建一个mysql用户并赋予replication slave权限,GRANT REPLICATION SLAVE ON *.* TO 'replication'@'%.yourdomain.com' IDENTIFIED BY 'slavepass',其它权限另赋。

3.执行FLUSH TABLES WITH READ LOCK语句清空所有表和块写入语句并锁定表,用mysqldump命令(如:mysqldump -u$user -p$userPWD --default-character=utf8 -R --flush-logs --delete-master-logs dbname > $dumpFile)备份要同步的数据库,用show master status/G读取主服务上当前的二进制日志名和偏移量,如:当前日志文件为localhost-bin.000003,偏移量为73,记录该值,设置从服务器时需要使用这些值,记录好后解锁:unlock tables。

4.从服务器的配置,在my.cnf的[mysqld]中加入:server_id=2,并重启从服务器。

5.将主服务器上备份下来的sql恢复到从从服务器上。

6.在从服务器上执行下面的语句(根据自己的实际值配置):
mysql->change master to
->master_host="192.168.1.1",
->master_user="backup",
->master_password="1234",
->master_log_file="localhost-bin.000003",
->master_log_pos=73;

7.启动从服务器线程:
mysql->start slave;

8.在从服务器上用show slave status/G;即可看到从服务器的信息,注意只有在slave_io_running和slave_sql_running都为yes时,主从复制才起作用。