windows下Mysql master-slave

假设安装过一个Mysql
1.先安装2个Mysql 其实也就是复制一个Mysql (Mysql5.1  和 Mysql5.2)
2.修改端口号和安装地址(my.ini) 这里我们不使用默认端口3306 主要测试
 

 

  Mysql5.1
  [client]
  port=3307
  [mysqld]
  port=3307
  basedir="E:/Mysql5.1/"
  datadir="E:/Mysql5.1/Data/"

  Mysql5.2
  [client]
  port=3308
  [mysqld]
  port=3308
  basedir="E:/Mysql5.2/"
  datadir="E:/Mysql5.2/Data/"


3.在Master(Mysql5.1)的数据库中建立一个备份帐户,命令如下
 

 

GRANT REPLICATION SLAVE ON *.* TO 'slave'@'localhost' IDENTIFIED BY '123456';



4.Master 为Mysql5.1 修改如下(my.ini): 
 

 

[mysqld]
  #Master start
  #日志输出地址 主要同步使用
  log-bin=E:\Mysql5.1\Data\log-bin.log
  #同步数据库
  binlog-do-db=cnb
  #主机id 不能和从机id重复
  server-id=1 
  #Master end


5.Slave 为Mysql5.2 修改如下(my.ini):
 

[mysqld]
  #Slave start
  log-bin=E:\Mysql5.2\Data\log-bin.log
  #从机id,区别于主机id
  server-id=2
  #主机ip,供从机连接主机用
  master-host=localhost
  #主机端口
  master-port=3307
  #刚才为从机复制主机数据新建的账号
  master-user=slave 
  #刚才为从机复制主机数据新建的密码
  master-password=123456
  #重试间隔时间10秒
  master-connect-retry=10 
  #需要同步的数据库
  replicate-do-db=cnb
  #启用从库日志,这样可以进行链式复制
  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 end

6.查询当前主机数据库文件和位置
  mysql> show master status;
  +----------------+----------+--------------+------------------+
  | File           | Position | Binlog_Do_DB | Binlog_Ignore_DB |
  +----------------+----------+--------------+------------------+
  | log-bin.000001 |       98 | cnb          |                  |
  +----------------+----------+--------------+------------------+

6.数据库操作测试如下为在Master(Mysql5.1)端操作 然后查看Slave(Mysql5.2) 
 

  1. create databse cnb;  
  2.     
  3.   CREATE TABLE `users` (  
  4.      `id` bigint(20) NOT NULL auto_increment,  
  5.      `namevarchar(255) default NULL,  
  6.      PRIMARY KEY  (`id`)  
  7.   ) ENGINE=InnoDB DEFAULT CHARSET=utf8;  
  8.   
  9.   insert users(namevalues('jacky'); 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值