当前位置:Gxlcms > 数据库问题 > windows mysql 主从复制

windows mysql 主从复制

时间:2021-07-01 10:21:17 帮助过:3人阅读

/**************************************主从复制 start***************************************/

 

1、设置主服务器

a)【my.cnf或my.ini的[mysqld]添加】

log-bin=mysql-bin    

server-id    =1 #主服务器ID,从服务器不能相同

binlog-do-db=dbname#计划备份的数据库,不设置的话备份binlog-ignore-db以外所有数据库,包括创建数据库  

binlog-ignore-db=mysql,test,information_schema

 

实际操作{

server-id=1
log-bin=mysql-bin
binlog-do-db=think_ceshi

}

 

b)添加复制用户repluser,密码passwd,授权该用户可复制权限

mysql> GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO ‘repluser‘@‘slaveip‘ IDENTIFIED BY ‘passwd‘;

mysql>FLUSH PRIVILEGES;

其中,slaveip为从服务器ip,比如192.168.2.3

实际操作{

GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO ‘cong‘@‘192.168.80.130‘ IDENTIFIED BY ‘123456‘;

FLUSH PRIVILEGES;

}

遇到的问题  可能在从数据库连不上主数据库   可能是防火墙问题  可以关闭防火墙在试试

 

 

2、设置从服务器

my.cnf或my.ini的[mysqld]段添加

server-id  = 2

master-host     =   slaveip

master-user     =   repluser

master-password =   passwd

master-port     =  3306

log-bin=mysql-bin

 

master-connect-retry=60

replicate-do-db=dname

log-slave-updates

read-only=1#可设定只读

 

实际操作{

server-id=2
log-bin=mysql-bin
replicate-do-db=think_ceshi
log-slave-updates
read-only=1

}

 

3、设置从服务器

show master status;

记下File和Position 

File:mysql-bin.000003,Position:15386161;

 

4、从服务器设置复制点

mysql > stop slave;

代入前面(第5步)的file和position

mysql > change master to master_host=‘masterip‘, master_user=‘repluser‘, master_password=‘passwd‘, master_log_file=‘mysql-bin.000003‘, master_log_pos=15386161;

mysql > start slave;

其中,masterip为主服务器ip,比如192.168.2.2

 

实际操作{

重启mysql服务

stop slave;

change master to master_host=‘192.168.80.129‘, master_user=‘cong‘, master_password=‘123456‘, master_log_file=‘mysql-bin.000002‘, master_log_pos=120;

start slave;

}

 

5、检查slave状态

mysql >show slave status;

Slave_IO_Running和Slave_SQL_Running均为Yes说明配置成功

 

实际操作{

Slave_IO_Running:NO

主从服务器的auto.cnf中的server-uuid相同了导致的错误

把从服务器的auto.cnf 重命名auto.cnf.bak  在重新启动mysql服务器  重新生成新的auto.cnf

再次查看show slave status  ok 好了

在主数据库插入一条数据 从服务器就能同步复制

}

/**************************************主从复制end***************************************/

 

windows mysql 主从复制

标签:

人气教程排行