- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MySQL5.5实现双向同步复制机制的实现
MySQL支持单向、异步复制,复制过程中一个服务器充当主服务器(Master),而一个或多个其它服务器充当从服务器(Slave),利用该特性实现读写分离,是很多大型网站常用的数据库架构。MySQL的replication的配置相对于Oracle来说,要简单的多。本文演示了在同一台windows机器中配置单向异步复制的过程。这里的Replication是异步复制。MySQL的同步复制是MySQL Cluster中的一个特性。要启用复制特性,MySQL必须使用二进制日志。关于二进制日志的特性,请参考官方手册(5.0,5.1,6.0)。本例中MySQL的版本:mysql select version();+————————-+| version() |+————————-+| 5.0.37-community-nt-log |+————————-+1 row in set (0.00 sec)主库配置文件my.iniport=3306datadir=”D:/Program Files/MySQL/MySQL Server 5.0/Data/”server-id=1log-bin=mysql-bin.log从库配置文件my2.iniport=3307datadir=”D:/Program Files/MySQL/MySQL Server 5.0/Data2/”server-id=2#启用从库日志,这样可以进行链式复制log-slave-updates#从库是否只读,0表示可读写,1表示只读read-only=1#只复制某个表replicate-do-table=tablename#只复制某些表(可用匹配符)replicate-wild-do-table=tablename%#只复制某个库replicate-do-db=dbname#只复制某些库replicte-wild-do-db=dbname%#不复制某个表replicate-ignore-table=tablename#不复制某些表replicate-wild-ignore-table=tablename%#不复制某个库replicate-ignore-db=dbname#复制完的sql语句是否立即从中继日志中清除,1表示立即清除relay-log-purge=1#从服务器主机,用于show slave hosts生成从库清单report-host=hostname启动主库mysqld-nt –defaults-file=my.ini连接到主库中,创建复制用户D:\mysql -uroot -ppassword -P3306Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 3Server version: 5.0.37-community-nt-log MySQL Community Edition (GPL)mysql grant replication slave on *.* to ‘rep’@localhost’ identified by ‘rep’;Query OK, 0 rows affected (0.00 sec)锁住主库的table,以便备份数据文件到从库进行初始化mysql flush tables with read lock;Query OK, 0 rows affected (0.00 sec)显示主库状态,注意记下当前二进制日志文件名和positionmysql show master status;+——————+———-+————–+——————+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+——————+———-+————–+——————+| mysql-bin.000002 | 228 | | |+——————+———-+————–+——————+1 row in set (0.00 sec)将D:/Program Files/MySQL/MySQL Server 5.0/Data/下的内容打包复制到D:/Program Files/MySQL/MySQL Server 5.0/Data2/下,执行从库的初始化。当然,初始化也可以使用mysqldump来完成。另外开启一个cmd,启动从库mysqld-nt –defaults-file=my2.ini连接到从库进行配置D:\mysql -uroot -ppassword -P3307Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL c
文档评论(0)