MySQL数据库集群Master-Slave模式安装摘要

    技术2022-05-20  76

    很久前搞过了,有点忘了,重新配一下,巩固巩固,呵呵!

    M-S使用的单向,异步的复制方法。而Cluster采用的是无共享的系统中部署内存中数据库的簇。

    M-S 是概念上的“同步”,而Cluster是真正意义上的同步,MySQLCluster是类似与DB2的无共享集群,易于扩展。

    这里讲讲Master-Slave模式,以Windows下安装为例:

     

    1.分别在两台机上安装MySQL数据库.

    master:  192.168.2.14   

    slave:     192.168.2.8

     

    2.在master上建立要同步的数据库,如testdb.

    打开my.ini文件,在最后面添加如下内容后重启服务。(linux下my.cnf)

    server-id=1binlog-do-db=testdblog-bin=mysql-bin

     

    3.在slave上同样建立testdb。

    (网上有的说建立之后反而报错,但是我发现好像一开始还是需要建立库和表结构的,之后才会同步数据

    莫非版本不同?我这是用的是MySQL5.0.x, 详情可参考数据库安装目录下data/机器名.err文件)

    打开my.ini文件,在最后面添加如下内容后重启服务。

    server-id=2master-host=192.168.2.14master-user=rootmaster-password=rootmaster-port=3306replicate-do-db=testdb

     

    4.在master上赋一下权限

    grant all on *.* to root@'192.168.2.8' identified by 'root'

     

    5.查询下状态

    master:   show master stutas;

    slave   :   show slave stutas;

     

    参考资料:

    http://blog.myspace.cn/e/404626452.htm

    http://java221.javaeye.com/blog/686284

    http://www.javaeye.com/topic/829371

    http://www.javaeye.com/topic/171427

    http://database.51cto.com/art/201006/205858.htm

    http://hi.baidu.com/fairywood/blog/item/f9a26213a3e2eb886438db3c.html

    http://blog.163.com/dandanhjj@126/blog/static/162586077201032602631133/ 

     

    下面是一个关于MySQL 5.1下配置的网页:

    http://www.zhuoda.org/lunzi/114670.html

     

    1、一台机器上装了两个版本不同的mysql数据库来实现,5.1版本做master,5.0的版本做slave来实现主从备份。2、5.1端口用的3307,5.0端口用的3308.在Master(Mysql5.1)的数据库中建立一个备份帐户,命令如下   GRANT REPLICATION SLAVE ON *.* TO 'slave'@'localhost' IDENTIFIED BY '654321';3、Master 为Mysql5.1 修改如下(my.ini): 加在文件的最后就可以,[mysqld]  #Master start  #日志输出地址 主要同步使用   log-bin=C:/ProgramData/MySQL/MySQL Server 5.1/Data/log-bin.log  #同步数据库  binlog-do-db=test  #主机id 不能和从机id重复  server-id=1   #Master end4、.Slave 为Mysql5.0 修改如下(my.ini): 同样把下列代码加到文件的底部即可,[mysqld]  #Slave start  log-bin=D:/Program Files/MySQL/MySQL Server 5.0/Data/log-bin.log  #从机id,区别于主机id  server-id=2  #主机ip,供从机连接主机用  master-host=localhost  #主机端口  master-port=3307  #刚才为从机复制主机数据新建的账号  master-user=slave   #刚才为从机复制主机数据新建的密码  master-password=654321  #重试间隔时间10秒  master-connect-retry=10   #需要同步的数据库  replicate-do-db=test  #启用从库日志,这样可以进行链式复制  log-slave-updates  #从库是否只读,0表示可读写,1表示只读  read-only=1  #只复制某个表  #replicate-do-table=tablename                   #只复制某些表(可用匹配符)  #replicate-wild-do-table=tablename%  #只复制某个库  #replicate-do-db=dbname  #不复制某个表  #replicate-ignore-table=tablename  #不复制某些表  #replicate-wild-ignore-table=tablename%  #不复制某个库  #replicate-ignore-db=dbname  #Slave end5、查询当前主机数据库文件和位置 show master status; 6、use test;    CREATE TABLE `users` (     `id` bigint(20) NOT NULL auto_increment,     `name` varchar(255) default NULL,     PRIMARY KEY  (`id`)  ) ENGINE=InnoDB DEFAULT CHARSET=utf8;  insert users(name) values('jacky');测试ok,可以正常工作。

     

    下面是Master-Master模式的安装资料:

    http://blog.csdn.net/yueliangdao0608/archive/2008/10/29/3173231.aspx

    http://www.javaeye.com/topic/162717

     


    最新回复(0)