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

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
 

 

转载于:https://www.cnblogs.com/lechie/p/3580695.html

在面对高并发环境下的数据库架构设计时,确保数据的致性系统的稳定性至关重要。《MySQL主从负载均衡双机热备详解》是处理这类问题的优秀参考资料,尤其适合那些希望了解如何通过MySQL实现高效数据备份负载分配的开发者。 参考资源链接:[MySQL主从负载均衡双机热备详解](https://wenku.youkuaiyun.com/doc/5cgxeiu07h?spm=1055.2569.3001.10343) 实现MySQL双机热备负载均衡,首先需要理解几个关键概念:主从复制、负载均衡双机热备。主从复制是通过配置个或多个从服务器来复制主服务器上的数据变更,而负载均衡则是将客户端请求合理分配到多个服务器上,以提高系统的整体性能可靠性。双机热备则是指两个主服务器之间互相备份,台服务器出现问题,另台能够立即接管服务。 具体实现步骤如下: 1. 确保两台服务器的操作系统位数致,并安装相同版本的MySQL数据库。 2. 在每台服务器上配置复制用户,并授予`replication slave`权限。注意设置正确的权限网络地址。 3. 在主服务器上配置二进制日志(binlog)记录,以便记录所有的数据变更。 4. 在从服务器上配置中继日志(relay log),并设置`server_id`,确保其唯性。 5. 启动从服务器的复制进程,并使用`START SLAVE`命令开始同步数据。 6. 利用负载均衡器(如HAProxy或Nginx)将流量分配到主从服务器,确保请求均匀分布。 7. 定期检查复制状态服务器性能,调整配置以应对高并发的请求。 通过上述步骤,你可以为应用搭建起个高并发下稳定可靠的数据环境。建议在实施过程中,详细阅读《MySQL主从负载均衡双机热备详解》中的每个细节,确保每个配置项都正确无误,从而实现个无单点故障的数据库架构。 参考资源链接:[MySQL主从负载均衡双机热备详解](https://wenku.youkuaiyun.com/doc/5cgxeiu07h?spm=1055.2569.3001.10343)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值