首页 > 代码库 > MySQL 复制
MySQL 复制
第一步:为配置主数据库与备数据库
主:server_id = 1
log_bin = E:\mysql_log_bin #复制事实上是二进制文件在备库上的重做,所以要支持二进制文件。
备:
server_id =2 #两个数据库的server_id不可以相同
log_bin = D:\mysql_log_bin #如果备库也要支持担当别的别的备库的主库时就要记录二进制文件。
第二步:在主库上创建复制账号
grant replication slave ,replication client on *.* to repl_name@‘%‘ identified by ‘passwordA‘;
#对repl_name@‘%‘的解释
# ‘%‘对应mysql 数据库的user表的 host 字段
# 例如:如果host = localhost 说明它是一个本地用户,只可以从本机登录mysql。
# 如果 host = 192.168.1.1 说明它只可从192.168.1.1登录mysql
# 如果 host = % 它可以从任何机器登录mysql
#复制账户事实上只要有主库上的replication slave 权限,并不一定需要每一端服务器都有replication client 权限
#赋予它两个权限原因有二
# 1用来监控和管理复制的账号需要replication client 权限,并且针对这两种目的使用同一账号更加容易
# 2当把主库同步到备库时,备库也就获得了同样的复制账号与权限。这样就可以方便的转换主备库了
第三步:告诉备库,主库的相关信息
CHANGE MASTER TO MASTER_HOST=‘10.100.49.4‘, #主机的ip
MASTER_USER=‘repl‘, #复制账号
MASTER_PASSWORD=‘p4ssword‘, #复制账号的密码
MASTER_LOG_FILE=‘mysql_56_bin_log.000003‘, #主库当前的二进制文件名
MASTER_LOG_POS=0; #从头开始
第四步:
告诉备库,开始复制
start slave;
MySQL 复制