Mysql 如何做双机热备和负载均衡

时间:2023-01-06 18:07:06

MySQL数据库没有增量备份的机制,但它提供了一种主从备份的机制,就是把主数据库的所有的数据同时写到备份数据库中。实现MySQL数据库的热备份。

下面是具体的主从热备份的步骤:
假设主服务器A(master)、从服务器为B(slave)
A:192.168.0.104
B:192.168.0.169
1.主服务器授权
授权副服务器可以连接主服务器并可以进行更新。这是在主服务器上进行的,创建一个username和password供副服务器访问时使用。也可以使用主服务器默认的帐号和密码。
2.数据复制
将master上已有的数据复制到slave上,以便主从数据库建立的时候两个数据库的数据保持一致。导出导入数据库就不详述了。
3.配置主服务器
修改master上mysql的根目录下的my.ini配置文件
在选项配置文件中赋予主服务器一个server-id,该id必须是1到2^23-1范围内的唯一值。主服务器和副服务器的server-id不能相同。另外,还需要配置主服务器,使之启用二进制日志,即在选项配置文件中添加log-bin启动选项。
注意:如果主服务器的二进制日志已经启用,关闭并重新启动之前应该对以前的二进制日志进行备份。重新启动后,应使用RESET MASTER语句清空以前的日志。
原因:master上对数据库cartrader的一切操作都记录在日志文件中,然后会把日志发给slave,slave接收到master传来的日志文 件之后就会执行相应的操作,使slave中的数据库做和master数据库相同的操作。所以为了保持数据的一致性,必须保证日志文件没有脏数据。
4.重启master
配置好以上选项后,重启MySQL服务,新选项将生效。现在,所有对数据库中信息的更新操作将被写进日志中。
5.配置slave
在副服务器上的MySQL选项配置文件中添加以下参数:

  1. [mysqld]
  2. #唯一,并与主服务器上的server-id不同。
  3. server-id=2
  4. #主服务器的主机名或者ip地址
  5. master-host=192.168.0.104
  6. #如果主服务器没有在默认的端口上监听,则需确定master-port选项
  7. master-port=3306
  8. #步骤2.1中创建的用户名和密码
  9. master-user=root
  10. master-password=123456
  11. #复制操作要针对的数据库(可选,默认为全部)
  12. replicate-do-db=cartrader
  13. #如果主副服务器间连接经常失败,需增加master-retry-count和master-connect-retry
  14. #master-retry-count连接重试的次数
  15. #master-connect-retry 连接失败后等待的秒数
  16. master-retry-count =999
  17. master-connect-retry=60
 

5.重启slave
副服务器上MySQL服务重启后,还在数据目录中创建一个master.info文件,其中包含
所有有关复制过程的信息(连接主服务器的相关信息及与主服务器交换数据的相关信息)。在初次启动以后,副服务器将检查这个master.info文件,以得到相关信息。
如果想修改复制选项,删除master.info并重启MySQL服务,在启动过程中使用选项配置文件中的新选项进行重新创建了master.info文件。
将主服务器上备份好的数据库脚本文件(cartrader.sql)导入到副服务器数据库中,以便保
证主-副服务器上进行复制操作的起点一样。
6.查看master的状态与设置的是否一致
7.查看slave
一般情况下重启了slave之后,自动就会开启复制功能,可以通过下面的语句查看
在slave上

  1. mysql>show slave status
 

如果显示waiting for master to send event 的话就表示已经启动了,反之就运行

  1. mysql>start slave
 

来启动slave

在SHOW SLAVE STATUS的命令输出后,应该包含Slave_IO_Running对应的值为YES,
Slave_SQL_Running对应的值为YES,只有这样才保证主从机能正常备份。

暂时停止主从热备份的命令是:

    1. mysql>stop slave

Mysql 如何做双机热备和负载均衡的更多相关文章

  1. Mysql 如何做双机热备和负载均衡 (方法二)

    先简要介绍一下mysql双向热备:mysql从3.23.15版本以后提供数据库复制功能.利用该功能可以实现两个数据库同步,主从模式(A->B),互相备份模式(A<=>B)的功能. m ...

  2. Mysql 如何做双机热备和负载均衡 (方法一)

    MySQL数据库没有增量备份的机制,但它提供了一种主从备份的机制,就是把主数据库的所有的数据同时写到备份数据库中.实现MySQL数据库的热备份. 下面是具体的主从热备份的步骤:假设主服务器A(mast ...

  3. keepalived&plus;LVS 实现双机热备、负载均衡、失效转移 高性能 高可用 高伸缩性 服务器集群

    本章笔者亲自动手,使用LVS技术实现实现一个可以支持庞大访问量.高可用性.高伸缩性的服务器集群 在读本章之前,可能有不少读者尚未使用该技术,或者部分读者使用Nginx实现应用层的负载均衡.这里大家都可 ...

  4. Nginx&plus;keepalived做双机热备加tomcat负载均衡

    Nginx+keepalived做双机热备加tomcat负载均衡 环境说明: nginx1:192.168.2.47 nginx2:192.168.2.48 tomcat1:192.168.2.49 ...

  5. nginx负载均衡三:keepalive&plus;nginx双机热备 和负载均衡

    环境 centos7.0 nginx:1.15 1.主备四台服务器 f1:负载均衡  192.168.70.169 f2:web站点  192.168.70.170 f3:web站点  192.168 ...

  6. Mycat&plus;Mysql主从复制实现双机热备

    Mycat+Mysql主从复制实现双机热备 一.mysql主从配置原理 双机热备的概念简单说一下,就是要保持两个数据库的状态自动同步.对任何一个数据库的操作都自动应用到另外一个数据库,始终保持两个数据 ...

  7. MySQL 5&period;6 双机热备windows7

    MySQL 5.6 双机热备 目录: 1.说明 2.数据手工同步 3.修改主数据库配置文件 4.修改从数据库配置文件 5.主数据库添加备份用户 6.从数据库设置为Slave 7.验证 1.说明 1)数 ...

  8. 两台Windows的 IIS 应用站点 基于NLB &plus; ARR 实现双机热备和负载

    IIS负载均衡中我们使用微软的ARR,但提到网站的高可用性,ARR只能做请求入口的消息分发服务,这样如果我们的消息分发服务器给down掉啦,那么做再多的应用服务集群也都枉然. 这里我们主要针对解决这一 ...

  9. Nginx&plus;Keepalived 实现双击热备及负载均衡

    Nginx master : 10.1.58.191   Nginx负载均衡主机 Nginx  slave    : 10.1.58.181   Nginx负载均衡备机Nginx_VIP_TP: 10 ...

随机推荐

  1. 图论&dollar;&bsol;cdot&dollar;最短路问题

    Dijkstra单源最短路径算法 Dijkstra可以计算出发点到每个点的最短路,及单源最短路径(SSSP).这一特点使得Dijkstra常常用来进行其他算法的预处理.用Dijkstra算法计算最短路 ...

  2. 为你的PHP程序选择合适的密码库(初稿)

    如果本文中的术语让你感到疑惑,请先参阅密码学术语及概念一文. 密码学不是魔术.加密一个应用程序并不能保证它在袭击下的安全(特别是在你没有设置验证密文的情况下).但如果出于商业需求你要确保程序的安全,传 ...

  3. zk set 方法

    [root@wx03 zook]# cat a4.pl use ZooKeeper; use AnyEvent; use AE; use Data::Dumper; my $zk = ZooKeepe ...

  4. C&plus;&plus;中string

    之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 担心内存是否足够.字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至 ...

  5. xftp5和xshell的使用

    目的:实现windows和linux系统之间文件的传输 步骤:1)下载xshell5 百度搜索即可,直接下载安装 2)xshell5下载完成后与虚拟机链接成功 3)下载xftp5点击 然后跟据官方的指 ...

  6. mysql数据库操作语句整合

    查看版本:select version();显示当前时间:select now(); 注意:在语句结尾要使用分号; 远程连接 一般在公司开发中,可能会将数据库统一搭建在一台服务器上,所有开发人员共用一 ...

  7. input file 上传 判断文件类型、路径是否为空

    <html> <body bgcolor="white"> <TABLE cellSpacing=0 cellPadding=0 width=&quo ...

  8. Windows Azure Web Site &lpar;19&rpar; Azure Web App链接到VSTS

    <Windows Azure Platform 系列文章目录> 之前遇到一个问题,客户在海外使用 我参考了一下国内Azure China的文档:https://school.azure.c ...

  9. js点击空白处触发事件

    我们经常会出现点击空白处关闭弹出框或触发事件 <div class="aa" style="width: 200px;height: 200px;backgroun ...

  10. &lbrack;ios&rsqb;ios读写文件本地数据

    参考:http://blog.csdn.net/tianyitianyi1/article/details/7713103 ios - Write写入方式:永久保存在磁盘中.具体方法为:第一步:获得文 ...