`

Mysql 数据库双机热备的配置

阅读更多

1。MySQL 数据库 没有增量备份的机制,当数据量太大的时候备份是一个很大的问题。还好mysql数据库提供了一种主从备份的机制,其实就是把主数据库的所有的数据同时写到备份数据库中。实现mysql数据库的热备份。

2。要想实现双机的热备首先要了解主从数据库服务器 的版本的需求。要实现热备mysql的版本都要高于3.2,还有一个基本的原则就是作为从数据库的数据库版本可以高于主服务器数据库的版本,但是不可以低于主服务器的数据库版本。

3。设置主数据库服务器:

a.首先查看主服务器的版本是否是支持热备的版本。然后查看my.cnf(类Unix ) 或者my.ini(windows)中mysqld配置块的配置有没有log-bin(记录数据库更改日志),因为mysql的复制机制是基于日志的复制 机制,所以主服务器一定要支持更改日志才行。然后设置要写入日志的数据库或者不要写入日志的数据库。这样只有您感兴趣的数据库的更改才写入到数据库的日志 中。

server-id=1 //数据库的id这个应该默认是1就不用改动

log-bin=log_name //日志文件的名称,这里可以制定日志到别的目录 如果没有设置则默认主机名的一个日志名称

binlog-do-db=db_name //记录日志的数据库

binlog-ignore-db=db_name //不记录日志的数据库

以上的如果有多个数据库用","分割开

然后设置同步数据库的用户帐号

mysql> GRANT REPLICATION SLAVE ON *.*

-> TO 'repl'@'%.mydomain.com' IDENTIFIED BY 'slavepass';

4.0.2以前的版本, 因为不支持REPLICATION 要使用下面的语句来实现这个功能

mysql> GRANT FILE ON *.*

-> TO 'repl'@'%.mydomain.com' IDENTIFIED BY 'slavepass';

设置好主服务器的配置文件后重新启动数据库

b.锁定现有的数据库并备份现在的数据

锁定数据库

mysql> FLUSH TABLES WITH READ LOCK;

备份数据库有两种办法一种是直接进入到mysql的data目录然后打包你需要备份数据库的文件夹,第二种是使用mysqldump的方式来备份数据库但是要加上"--master-data " 这个参数,建议使用第一种方法来备份数据库

c.查看主服务器的状态

mysql> show master status\G;

+---------------+----------+--------------+------------------+

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+---------------+----------+--------------+------------------+

| mysql-bin.003 | 73 | test | manual,mysql |

+---------------+----------+--------------+------------------+

记录File 和 Position 项目的值,以后要用的。

d.然后把数据库的锁定打开

mysql> UNLOCK TABLES;

4。设置从服务器

a.首先设置数据库的配置文件

server-id=n //设置数据库id默认主服务器是1可以随便设置但是如果有多台从服务器则不能重复。

master-host=db-master.mycompany.com //主服务器的IP地址或者域名

master-port=3306 //主数据库的端口号

master-user=pertinax //同步数据库的用户

master-password =freitag //同步数据库的密码

master-connect-retry=60 //如果从服务器发现主服务器断掉,重新连接的时间差

report-host=db-slave.mycompany.com //报告错误的服务器

b.把从主数据库服务器备份出来的数据库导入到从服务器中

c.然后启动从数据库服务器,如果启动的时候没有加上"--skip-slave-start"这个参数则进入到mysql中

mysql> slave stop; //停止slave的服务

d.设置主服务器的各种参数

mysql> CHANGE MASTER TO

-> MASTER_HOST='master_host_name', //主服务器的IP地址

-> MASTER_USER='replication_user_name', //同步数据库的用户

-> MASTER_PASSWORD='replication_password', //同步数据库的密码

-> MASTER_LOG_FILE='recorded_log_file_name', //主服务器二进制日志的文件名(前面要求记住的参数)

-> MASTER_LOG_POS=recorded_log_position; //日志文件的开始位置(前面要求记住的参数)

e.启动同步数据库的线程

mysql> slave start;

查看数据库的同步情况吧。如果能够成功同步那就恭喜了!

查看主从服务器的状态

mysql> SHOW PROCESSLIST\G //可以查看mysql的进程看看是否有监听的进程

如果日志太大清除日志的步骤如下

1.锁定主数据库

mysql> FLUSH TABLES WITH READ LOCK;

2.停掉从数据库的slave

mysql> slave stop;

3.查看主数据库的日志文件名和日志文件的position

show master status;

+---------------+----------+--------------+------------------+

| File | Position | Binlog_do_db | Binlog_ignore_db |

+---------------+----------+--------------+------------------+

| louis-bin.001 | 79 | | mysql |

+---------------+----------+--------------+------------------+

4.解开主数据库的锁

mysql> unlock tables;

5.更新从数据库中主数据库的信息

mysql> CHANGE MASTER TO

-> MASTER_HOST='master_host_name', //主服务器的IP地址

-> MASTER_USER='replication_user_name', //同步数据库的用户

-> MASTER_PASSWORD='replication_password', //同步数据库的密码

-> MASTER_LOG_FILE='recorded_log_file_name', //主服务器二进制日志的文件名(前面要求记住的参数)

-> MASTER_LOG_POS=recorded_log_position; //日志文件的开始位置(前面要求记住的参数)

6.启动从数据库的slave

mysql> slave start;

分享到:
评论

相关推荐

    MySQL数据库双机热备

    MySQL是开源的数据库,现在的应用也比较多。...对于MySQL数据库来说,一般应用于中小规模的应用,不太可能投入巨大的成本去采购双机热备的产品。本文档详细解决了在不增加成本的条件下如何解决MySQL数据库的双机热备。

    Mysql双机热备配置教程

    Mysql 双机热备配置教程 本教程旨在指导读者如何配置 Mysql 双机热备系统,通过本教程,读者将掌握 Mysql 双机热备的基本概念和配置步骤。 知识点 1:Mysql 双机热备的基本概念 Mysql 双机热备是一种高可用性的...

    windows下mysql双机热备.doc

    Windows服务器Mysql数据库双机热备机制可以保证数据的一致性和高可用性,通过准备工作、创建同步用户、修改配置文件my.ini、重启Mysql服务、指定同步位置、查看从服务器状态等步骤来实现双机热备机制。

    MYSQL+KEEPALIVED 双机热备方案.docx

    在高可用性数据库设计中,MYSQL+KEEPALIVED 双机热备方案是一种常见的解决方案。该方案旨在解决数据库单机故障问题,提高数据库的可用性和可靠性。本文将详细介绍 MYSQL+KEEPALIVED 双机热备方案的实现细节。 MYSQL...

    mysql数据库双机热备与主从热备

    MySQL数据库的双机热备和主从热备是确保数据高可用性和连续性的关键策略。在企业级应用中,数据库的稳定性和数据的一致性至关重要,因此这些技术被广泛采用。下面将详细介绍这两种备份方式以及如何在Windows环境下...

    linux基于keepalived的mysql双机热备实现方案(详细过程完整版)

    总结,实现基于Keepalived的MySQL双机热备方案需要综合考虑系统架构、网络配置、数据库同步策略以及故障恢复机制。在实际部署过程中,每一个细节都可能影响到系统的稳定性和可用性,因此需要仔细规划和严谨操作。...

    MySQL数据库双机热备服务器配置.docx

    MySQL数据库双机热备服务器配置是一项关键任务,用于确保数据的高可用性和连续性。这种配置通常涉及到两台服务器,它们共享同一份数据库,并通过心跳机制监控彼此的状态,以实现故障切换。以下是对整个配置过程的...

    mysql实现双机热备

    MySQL 双机热备是一种高可用性解决方案,确保在一个系统发生故障时,另一个系统能够立即接管服务,保证数据的连续性和一致性。该技术主要依赖于MySQL的复制功能,通过实时捕获主服务器的更新日志并应用到备用服务器...

    MySQL数据库双机热备的配置.docx

    MySQL数据库双机热备是一种高可用性和容灾恢复策略,旨在确保在一台服务器出现故障时,另一台服务器能够无缝接管工作,保持业务连续性。在互联网行业中,由于数据的重要性,MySQL数据库的双机热备配置是常见的做法。...

    基于Linux系统和Mysql数据库的双机热备环境安装实施指南全套.doc

    本文档提供了基于Linux系统和Mysql数据库的双机热备环境安装实施指南,涵盖了环境及布局、软件安装、数据库配置等方面的详细指导。 在了解本指南之前,读者需要具备基本的计算机知识和Linux系统操作经验。 1. 环境...

    图文演示双机热备mysql主主模式配置全过程.pdf

    首先,我们来探讨双机热备的概念。双机热备是一种高可用性的解决方案,它确保当一台主机出现故障时,另一台主机可以立即接管服务,从而保证...掌握这些知识点对于维护MySQL数据库的高可用性和数据一致性具有重要意义。

    mysql 数据库双机热备

    ### MySQL 数据库双机热备实现详解 #### 一、双机热备概念与意义 在现代企业级应用中,数据库作为数据存储的核心组件,其稳定性和可用性至关重要。一旦数据库发生故障,可能会导致业务中断甚至数据丢失。为了提高...

    nginx+php+mysql+heartbeat配置双机热备文档.pdf

    Nginx+PHP+MySQL+heartbeat 配置双机热备解决方案 本文档旨在介绍 Nginx+PHP+MySQL+heartbeat 配置双机热备解决方案,该方案旨在解决单点故障问题,提供高可用性和自动切换的解决方案。下面是该解决方案的详细介绍...

Global site tag (gtag.js) - Google Analytics