快速业务通道

mysql主从复制的原理及配置实现

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-03-25
mysqld restart

GRANT REPLICATION CLIENT,REPLICATION SLAVE ON *.* TO repl@''192.168.1.%'' IDENTIFIED BY ''passwd'';
FLUSH PRIVILEGES;

show master status;

从服务器上面的配置
1.配置server-id,此server-id不能和主服务器一样,也不能和其他的从服务器一样
2.启用relay log,如果次从服务器后面还有从服务器也就是主从复制的多级架构那么把二进制日志也启用起来
3.使用有复制权限的用户帐号连接到主服务器上面

relay-log=relay-bin
relay-log-index=relay-bin.index
replicate-ignore-db =mysql 设置忽略复制系统数据库
server-id=2

server mysqld restart

SHOW VARIABLES LIKE ''relay%'' 查看一下relay相关的信息

CHANGE MASTER TO MASTER_HOST=''192.168.1.1'',MASTER_USER=''repl'',MASTER_PASSWORD=''passwd'';

SET GLOBAL read_only=ON; 设置从服务器为只读的
START SLAVE; 启动复制进程
SHOW SLAVE STATUS\G; 查看从服务器状态
如下所示,这说明已经连接上了主服务器,并且复制操作的两个进程都已经起来了
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

验证:
在主服务器上面创建一个数据库
CREATE DATABASE mydb;
在从服务器上面SHOW DATABASES;可以看到在主服务器上面刚刚创建的数据库mydb,表示成功了!


复制时候忽略某些数据库或者表的操作最好不要在主服务器上面进行,主服务器忽略之后就不会再往二进制文件中写了,但是在从服务器上面虽然忽略了某些数据库但是主服务器上面的这些操作信息依然会被复制到从服务器上面的relay log里面,只是不会在从服务器上面执行而已

不管是黑名单还是白名单只写一个就行了,如果同时使用那么只有白名单生效
binlog-do-db= //这里是白名单,写上要复制的数据库
replication-do-db=mydb1
replication-do-db=mydb2
replication-do-table=
binlog-ignore-db= //这里是黑名单,写上不复制的数据库
replication-ignore-db=
replication-ignore-table=

本文出自 “成长全记录” 博客,请务必保留此出处http://lymrg.blog.51cto.com/1551327/696132

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号