注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

网站开发,php,.net,App接口

深圳网站建设 Linux运维

 
 
 

日志

 
 

mysql单机主从同步  

2014-01-23 12:16:18|  分类: 技术交流 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

1:打开3306端口,以便于远程访问

# vi /etc/sysconfig/iptables

把其中的一个端口信息复制,然后改成3306

 

重启即可:/etc/init.d/iptables restart

 

2: 在主服务器上为从服务器建立一个用户:
grant replication slave on *.* to 'root'@'211.154.139.180' identified by '123'; //用户名:root,密码:123

 

3:修改主库my.cnf,主要是设置个不一样的id和logbin
#vim /etc/my.cnf    
server-id = 1   
log-bin= mysql-bin   
binlog-do-db=bbs1       //要同步的数据库
binlog-do-db=bbs       //要同步的数据库

4:先把主数据库锁定,然后导出要同步的数据库

5:记录File和Position,从数据库设置

mysql> show master status;
+------------------+----------+----------------------+------------------+
| File             | Position | Binlog_Do_DB         | Binlog_Ignore_DB |
+------------------+----------+----------------------+------------------+
| mysql-bin.000017 |    28515 | iandroid,bbs,ucenter |                  |
+------------------+----------+----------------------+------------------+

 

6:重启主数据库

 

7:从数据库设置:#vim /etc/my.cnf   

server-id=2
master-host=192.168.0.2 //主数据库IP

master-user=root //用户名

master-password=123 //密码

master-port=3306
replicate-do-db=bbs1

replicate-do-db=bbs

 

8:把主数据库导入到从数据库中,然后重启数据库 /etc/init.d/mysqld restart

 

9:停止主从:mysql>slave stop

 主服务器操作:

 1)停止主服务器的apache服务,
 2)运行/usr/local/bak/auto_bak_db.sh脚本,
 3)用mysql的客户端连接主服务器查询当前的日志位置,show master status,结果如下,
  mysql> show master status;
  +------------------+----------+----------------------+------------------+
  | File             | Position | Binlog_Do_DB         | Binlog_Ignore_DB |
  +------------------+----------+----------------------+------------------+
  | mysql-bin.000023 | 291563048| iandroid,bbs,ucenter |                  |
  记录好file和Position数值。
 4)开启主服务器的apache服务

 

从服务器操作:
 5)用工具把刚备份的文件恢复到从服务器中,
 6)用上面File和Position的值来替换下面的语句中的master_log_file和master_log_pos的值,然后执行以下语句,
  slave stop;    
  change master to master_host='10.10.0.2',master_user='slave_mysql', master_password='sjhc168',    master_log_file='mysql-bin.000082', master_log_pos=3024122;    
  slave start;  
 7)执行show slave status 看看是否同步成功。

 

启动同步:mysql>slave start

 

mysql>show slave status查看同步是否成功 或者show slave status\G

 

如果要屏蔽1062错误,在从服务器my.cnf中输入slave-skip-errors=1062即可

  评论这张
 
阅读(141)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017