`

CentOS下MYSQL数据库的主主互备配置

 
阅读更多

 关于MYSQL数据库的主主备份和主从备份,查询了很多资料,根据大牛们的资料配置 了好几遍,终于在自己的环境中配置起来了。先前没有配置起来的原因可能是大家的配置环境不一样造成的,所以网上有很多资料,虽然有些大同小异,但是配置不 起来。MYSQL支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日志文件,并维 护日志文件的一个索引以跟踪日志循环。当一个从服务器连接到主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置。从服务器接收从那 时起发生的任何更新,然后封锁并等待主服务器通知下一次更新。

       在实际项目中,两台分布于异地的主机上安装有MYSQL数据库,两台服务器互为主备,客户要求当其中一台机器出现故障时,另外一台能够接管服务器上的应用,这就需要两台数据库的数据要实时保持一致,在这里使用MYSQL的同步功能实现双机的同步复制。

       下面将自己环境的配置记录下来。

       一、主机环境与软件版本:

         1、主机系统:32位Centos 6.3 版本;

              两个虚拟机:

              主机(master):IP地址: 192.168.31.139;

              主机(salver):IP地址: 192.168.31.137;

         2、MYSQL版本:mysql-5.5.11版;

         3、虚拟机版本:VMware® Workstation 9.0.0 build-812388;

         4、虚拟机与主机名称和IP地址的设置:http://blog.csdn.net/limingzhong198/article/details/19919761

       二、配置过程

         1、主机master与salver均关闭防火墙iptables,执行service iptables stop命令:

             

         2、设置SELINUX文件的SELINUX=disabled,如图所示:

              

         3、在master和salver分别安装MYSQL软件:http://blog.csdn.net/limingzhong198/article/details/19823629

         4、主机(master)配置:

              A:在/usr/local/mysql目录下建立MYSQL复制的日志配置文件/usr/local/mysql/mysql-bin.log并赋予权限以及改变文件的所有者:

                   [root@master mysql] touch mysql-bin.log

                   [root@master mysql] chmod 755 mysql-bin.log

                   [root@master mysql] chown -R mysql:mysql .

                   配置结果如图所示:

                  

              B:配置/etc/my.cnf文件:

                   [root@master mysql] vi /etc/my.cnf

                   在文件中添加或修改相应的配置项,如图所示:

                   

                   重要事项说明:

                  log-bin = /usr/local/mysql/mysql-bin.log:bin日志路径

                  server-id = 1:服务器ID号(系统默认,不需配置或修改)

                  binlog-ignore-db=mysql:忽略mysql数据库复制

                  auto-increment-increment = 2:每次增长2

                  auto-increment-offset = 1:设置自动增长的字段的偏移量,即初始值为1

              C:启动并登陆MYSQL系统:

                   [root@master mysql] service mysql start

                   显示:Starting MySQL.... SUCCESS!就表明启动成功

                   [root@master mysql] mysql -u root -padmin

                   注:-p 表示密码项,后面的'admin'表明root用户的密码是admin

                   显示结果如图所示:

                   

                   注:如果出现如图的SHELL界面,就表示登陆成功。

              D:在主机master上添加主机salver的同步账号:

                   mysql> grant replication slave on *.* to'slave'@'192.168.31.137' identified by 'admin';

         5、主机(salver)配置:

              A:在/usr/local/mysql目录下建立MYSQL复制的日志配置文件/usr/local/mysql/mysql-bin.log并赋予权限以及改变文件的所有者:

                   注:这一步骤与配置主机(master)完全一样。

              B:配置/etc/my.cnf文件:

                   [root@salver mysql] vi /etc/my.cnf

                   在文件中添加或修改相应的配置项,如图所示:

                  

                   重要事项说明:

                  server-id = 2:服务器ID号(系统默认为1,由于服务器ID号必须唯一,故改为2)

                         

                   重要事项说明:

                  log-bin = /usr/local/mysql/mysql-bin.log:bin日志路径

                  binlog-ignore-db=mysql:忽略mysql数据库复制

                  auto-increment-increment = 2:每次增长2

                  auto-increment-offset = 2:设置自动增长的字段的偏移量,即初始值为2

              C:启动并登陆MYSQL系统:

                   注:这一步骤与配置主机(master)完全一样。

              D:在主机salver上添加主机master的同步账号:

                   mysql> grant replication slave on *.* to'slave'@'192.168.31.139' identified by 'admin';

         6、主机(master)配置:

              A:重新启动并登陆MYSQL系统:

              B:在MYSQL的SHELL下执行如下命令:

                   mysql> stop slave;

                   mysql> change master to master_host='192.168.31.137',master_user='slave',master_password='admin';

                   mysql> start slave;

         7、主机(salver)配置:

              A:重新启动并登陆MYSQL系统:

              B:在MYSQL的SHELL下执行如下命令:

                   mysql> stop slave;

                   mysql> change master to master_host='192.168.31.139',master_user='slave',master_password='admin';

                   mysql> start slave;

         8、分别登陆两台服务器mysql后台查看主主备份连接状态:

              mysql> show slave status \G;

              显示结果如图: 

                   

              注:两台主机均出现如下内容,则主主配置成功:

                     Slave_IO_State: Waiting for master to send event 

                     Slave_IO_Running: Yes 

                     Slave_SQL_Running: Yes

                     如果出现Slave_IO_Running: Connecting的情况,则很可能是因为防火墙未关闭的原因。

         9、测试过程结果:

              A:重新启动并登陆MYSQL系统:

              B:在主机(master)上的test数据库中,建立test表,并插入测试数据,在主机(salver)上查看是否备份成功:

              C:在主机(salver)上的test数据库中,插入测试数据,在主机(master)上查看是否备份成功:

              D:如果两台主机上都备份成功,则主主备份模式配置成功。

              E:测试如图:

                 

                 

            主主互备模式配置完毕。

转自:http://blog.csdn.net/limingzhong198/article/details/20413597

分享到:
评论

相关推荐

    CentOS7下MySQL8的主主互备安装文档和my.cnf配置文件

    首先,我们从【标题】入手,"CentOS7下MySQL8的主主互备安装文档"意味着我们将学习在CentOS7这个Linux发行版上安装MySQL 8.0数据库服务器,并设置主主复制(也称为主备同步),使得两个或多个MySQL实例可以相互备份...

    centos下mysql数据库源码安装教程

    本文档旨在提供一份详细的CentOS 6.8环境下MySQL数据库5.6.14版本的源码安装指南。相较于传统的RPM包安装方式,从源码安装可以更加灵活地定制安装选项,同时也能获得更高的性能优化。 #### 卸载旧版本 在开始安装新...

    CentOS更改MySQL数据库目录位置.pdf

    "CentOS更改MySQL数据库目录位置" 本文档旨在介绍CentOS系统中...本文档详细介绍了CentOS系统中MySQL数据库目录位置的更改步骤,包括关闭MySQL服务、创建新的目录、拷贝数据、修改配置文件和启动MySQL服务等步骤。

    虚拟机CentOS安装mysql数据库.docx

    ### 虚拟机 CentOS 安装 MySQL 数据库及配置读写分离 #### 一、环境准备 在本文档中,我们将详细介绍如何在虚拟机 CentOS 上安装 MySQL 数据库,并进行必要的网络配置以支持读写分离的功能。为了实现这一目标,...

    Centos6.7系统安装MySQL5.7总结

    Centos6.7系统安装MySQL5.7总结 本资源总结了在Centos6.7系统中安装MySQL5.7的步骤,包括下载和安装MySQL...可以使用mysql命令来远程连接MySQL数据库,需要将root账户的host地址修改为%,以便从任何IP地址连接数据库。

    centos 服务器 mysql 数据库输入正确密码却无法登录.pdf

    在 CentOS 服务器上,尝试通过命令行方式登录 MySQL 数据库时,即使输入了正确的密码,仍然收到了“Access denied for user 'root'@'localhost' (using password: YES)”的错误消息。这通常意味着虽然用户提供的凭据...

    CentOS下mysql成功安装

    CentOS下MySQL成功安装 MySQL是一种流行的关系数据库管理系统,广泛应用于Web应用程序和企业级应用程序中。在CentOS操作系统中,安装MySQL服务器需要经过一系列的步骤,包括下载、编译、安装、初始化数据库、注册...

    centos7安装数据库MySQL启动报错Job for mysqld

    当我们在 CentOS 7 操作系统中安装 MySQL 数据库时,如果出现启动报错的现象,需要meticulously检查 my.cnf 配置文件中的每一行配置。可以使用以下命令来查看错误日志: cat /var/log/mysqld.log |grep ERROR 通过...

    xp主机用mysql-front访问centos_6.4虚拟机mysql数据库配置教程

    - **日志位置**:MySQL数据库的日志通常存储在`/var/log/mysql`目录下。 - **数据文件存放位置**:数据库文件位于`/var/lib/mysql`目录。 - **主配置文件**:MySQL的主要配置文件是`/etc/my.cnf`,用于设置MySQL...

    CentOs7下mysql5.7的下载安装以及主从同步、双主多从配置详情

    CentOs7 下 Mysql 5.7 的下载安装和主从同步、双主多从配置详解 CentOs 7 是一个流行的 Linux 操作系统,而 Mysql 5.7 是一个广泛使用的关系型数据库管理系统。本文将详细介绍如何在 CentOs 7 下下载安装 Mysql 5.7...

    centOS下安装配置mysql数据库

    在 CentOS 操作系统中安装和配置 MySQL 数据库是一项基础但至关重要的任务,因为 MySQL 是一个广泛应用的关系型数据库管理系统,广泛用于存储和管理各种类型的数据。本文将详细阐述如何在 CentOS 环境下进行 MySQL ...

    Centos下安装mysql数据库

    ### Centos 下安装 MySQL 数据库 #### 知识点概览 - **环境准备与工具安装**:确保系统满足安装 MySQL 的基本需求,并安装必要的辅助工具。 - **MySQL 软件包安装**:通过 RPM 包手动安装 MySQL 服务器及其相关组件...

    CentOS7环境mysql小版本升级步骤

    在CentOS7环境下,对MySQL的小版本升级是一个关键的...完成以上步骤后,你的MySQL数据库系统应该已经成功从5.7.26升级到了5.7.31。记得在生产环境中,任何系统变更都需要谨慎操作,遵循最佳实践,以确保业务不受影响。

    基于centos7 安装MySQL数据库及配置

    在本教程中,我们将详细介绍如何在 CentOS 7 操作系统上安装并配置 MySQL 数据库。MySQL 是一款广泛使用的开源关系型数据库管理系统,适用于各种规模的应用场景。在 CentOS 7 上安装 MySQL 需要遵循一系列步骤,包括...

    CentOS安装MySQL5.7

    ### CentOS安装MySQL 5.7知识点详解 #### 一、环境准备与系统要求 在开始安装MySQL 5.7之前,我们需要确保系统满足以下条件: ...通过这些步骤,您可以顺利地在CentOS上部署并运行MySQL数据库服务。

    centos7安装配置mysql5.7教程全

    在Linux系统中,CentOS 7是广泛使用的服务器操作系统,而MySQL 5.7则是一款高性能、开源的关系型数据库管理系统。本教程将详细介绍如何在CentOS 7上完整地安装和配置MySQL 5.7。 一、安装MySQL 5.7 1. 更新系统:...

Global site tag (gtag.js) - Google Analytics