mysql热备份的配置

第一步:保持主从两个数据库是同步的,最好事先手动同步一下;

第二步:停止两个数据库,分别更改配置文件;

在mysql安装目录下找到my.ini

在[mysqld]下添加配置

主服务器数据库,增加如下配置:

server-id =1    #这个唯一就OK

log-bin = mysql-bin  #bin日志所在目录
从服务器数据库,增加如下配置:

server-id = 2    #这个唯一就O,
log-bin = mysql-bin  #bin日志所在目录
relay_log=mysqlid_relay_bin #中继日志所在目录

第三步,分别重启两个服务器的MySQL服务;

两个服务器的MySQL服务都要启动起来;

第四步,主服务器授权Slave权限账号

GRANT REPLICATION SLAVE ON *.* to 'name'@'从服务器ip' identified by '123456';

设置用户名和密码,以及从服务器的ip,在配置从服务器的时候会用到

第五步,登录主服务器,查询master状态;

show master status;得到file和position

 

第六步:登录从服务器,配置从服务器的Slave

change master to master_host='主服务器ip',master_user='name',master_password='123456', master_port=3306,

master_log_file='mysql-bin.000003',master_log_pos=106;

master_log_pos是上面查询出来的Position106。

第七步、启动从服务器的Slave

start slave;

第八步、验证从服务器的Slave服务状态

show slave status\G

以下两个状态必须为Yes。

Slave_IO_Running: Yes     Slave_SQL_Running: Yes    

如果有一项为No都不会同步成功。

 

 

 

 

 

**********所用到的查询语句

Show slave like ‘Slave_running’;// slave是否在运行

Show processlist\G;// 查看进程列表,“\G”是让显示出来的顺序更容易看

Show master logs;//查看主服务器的log文件

Show master status\G; //查看主服务器的配置状态

Show slave status\G;// 查看从服务器的链接状态

Show binlog events in ‘mysql_bin.000002’;// 查看这个mysql_bin.000002 log内容

Reset master;// 清除主服务器形成的日志

Reset slave //清除从服务器形成的日志

**********容易遇到的问题

1,如果Slave_IO_Running为NO,可能是配置从服务器的Slave

的时候,file,position,master_port等数据不准确,没有和主服务器提供的匹配上

2,如果Slave_SQL_Running为NO,则有可能是从服务器的程序可能在slave上进行了写操作,
也可能是slave机器重起后,事务回滚造成的

   解决方法:

   1.首先停掉Slave服务:slave stop

   2.到主服务器上查看主机状态:
   记录File和Position对应的值。

   3.重新change同步

 

 

 

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值