关于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的主主互备安装文档"意味着我们将学习在CentOS7这个Linux发行版上安装MySQL 8.0数据库服务器,并设置主主复制(也称为主备同步),使得两个或多个MySQL实例可以相互备份...
本文档旨在提供一份详细的CentOS 6.8环境下MySQL数据库5.6.14版本的源码安装指南。相较于传统的RPM包安装方式,从源码安装可以更加灵活地定制安装选项,同时也能获得更高的性能优化。 #### 卸载旧版本 在开始安装新...
"CentOS更改MySQL数据库目录位置" 本文档旨在介绍CentOS系统中...本文档详细介绍了CentOS系统中MySQL数据库目录位置的更改步骤,包括关闭MySQL服务、创建新的目录、拷贝数据、修改配置文件和启动MySQL服务等步骤。
### 虚拟机 CentOS 安装 MySQL 数据库及配置读写分离 #### 一、环境准备 在本文档中,我们将详细介绍如何在虚拟机 CentOS 上安装 MySQL 数据库,并进行必要的网络配置以支持读写分离的功能。为了实现这一目标,...
Centos6.7系统安装MySQL5.7总结 本资源总结了在Centos6.7系统中安装MySQL5.7的步骤,包括下载和安装MySQL...可以使用mysql命令来远程连接MySQL数据库,需要将root账户的host地址修改为%,以便从任何IP地址连接数据库。
在 CentOS 服务器上,尝试通过命令行方式登录 MySQL 数据库时,即使输入了正确的密码,仍然收到了“Access denied for user 'root'@'localhost' (using password: YES)”的错误消息。这通常意味着虽然用户提供的凭据...
CentOS下MySQL成功安装 MySQL是一种流行的关系数据库管理系统,广泛应用于Web应用程序和企业级应用程序中。在CentOS操作系统中,安装MySQL服务器需要经过一系列的步骤,包括下载、编译、安装、初始化数据库、注册...
- **日志位置**:MySQL数据库的日志通常存储在`/var/log/mysql`目录下。 - **数据文件存放位置**:数据库文件位于`/var/lib/mysql`目录。 - **主配置文件**:MySQL的主要配置文件是`/etc/my.cnf`,用于设置MySQL...
CentOs7 下 Mysql 5.7 的下载安装和主从同步、双主多从配置详解 CentOs 7 是一个流行的 Linux 操作系统,而 Mysql 5.7 是一个广泛使用的关系型数据库管理系统。本文将详细介绍如何在 CentOs 7 下下载安装 Mysql 5.7...
在 CentOS 操作系统中安装和配置 MySQL 数据库是一项基础但至关重要的任务,因为 MySQL 是一个广泛应用的关系型数据库管理系统,广泛用于存储和管理各种类型的数据。本文将详细阐述如何在 CentOS 环境下进行 MySQL ...
### Centos 下安装 MySQL 数据库 #### 知识点概览 - **环境准备与工具安装**:确保系统满足安装 MySQL 的基本需求,并安装必要的辅助工具。 - **MySQL 软件包安装**:通过 RPM 包手动安装 MySQL 服务器及其相关组件...
在CentOS7环境下,对MySQL的小版本升级是一个关键的...完成以上步骤后,你的MySQL数据库系统应该已经成功从5.7.26升级到了5.7.31。记得在生产环境中,任何系统变更都需要谨慎操作,遵循最佳实践,以确保业务不受影响。
当我们在 CentOS 7 操作系统中安装 MySQL 数据库时,如果出现启动报错的现象,需要meticulously检查 my.cnf 配置文件中的每一行配置。可以使用以下命令来查看错误日志: cat /var/log/mysqld.log |grep ERROR 通过...
在本教程中,我们将详细介绍如何在 CentOS 7 操作系统上安装并配置 MySQL 数据库。MySQL 是一款广泛使用的开源关系型数据库管理系统,适用于各种规模的应用场景。在 CentOS 7 上安装 MySQL 需要遵循一系列步骤,包括...
### CentOS安装MySQL 5.7知识点详解 #### 一、环境准备与系统要求 在开始安装MySQL 5.7之前,我们需要确保系统满足以下条件: ...通过这些步骤,您可以顺利地在CentOS上部署并运行MySQL数据库服务。
在Linux系统中,CentOS 7是广泛使用的服务器操作系统,而MySQL 5.7则是一款高性能、开源的关系型数据库管理系统。本教程将详细介绍如何在CentOS 7上完整地安装和配置MySQL 5.7。 一、安装MySQL 5.7 1. 更新系统:...