版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/limingzhong198/article/details/20578821
————————————————
版权声明:本文为CSDN博主「秋风瑟瑟」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/limingzhong198/article/details/20578821

关于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,然后重启reboot如图所示:

vim /etc/sysconfig/selinux

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

binlog-ignore-db=mysql

binlog-ignore-db=information_schema

C:启动并登陆MYSQL系统:

[root@master mysql] service mysql start

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

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

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

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

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

执行如下命令查看:

select user.host from mysql.user;

可以看见备份账户以及设置完成。下面对数据库表加锁只读。

mysql锁表只读(其他账户登录mysql后无法进行写表操作,防止备份数据库后,主mysql表更新,导致和从数据库内容不一致)

mysql> flush tables with read lock;

E:查看状态:

[root@master mysql] mysql -u root -padmin -e "show master status"

结果如图:

注:File字段的日志名称(mysql-bin.000001)就是从机备份所需要的日志文件。

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

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

注:log-bin被注释是因为主机不需要复制备份从机的数据。

C:启动并登陆MYSQL系统:

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

D:在MYSQL的SHELL下执行如下图命令:

注:其中change master to master_host='192.168.31.139',

master_user='slave',

master_password='admin',

master_log_file="mysql-bin.000001",

master_log_pos=107 ;

中的master_log_file项就是前面提到的日志复制备份所需的名称。

6、主机(salver)配置:

A:解锁数据库:

mysql> unlock tables;

B:查询数据库状态:

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的情况,则很可能是因为防火墙未关闭的原因。

7、测试过程:

A:在主机上的test数据库中,建立test表,并插入测试数据,在从机上查看是否备份成功;

B:在从机上的test数据库中,在test表插入测试数据,在主机上查看是否备份成功;

C:主机的数据在从机的数据库上备份成功,从机的数据在主机上没有被复制备份,则说明配置成功。

D:主机的数据在从机的数据库上备份成功,从机的数据在主机上也被复制备份,则说明配置失败。

E:主机的数据在从机的数据库上备份失败,则说明配置失败。

CentOS下MYSQL数据库的主从备份配置的更多相关文章

  1. Linux下Mysql数据库互为主从的配置过程

    配置准备: 两台机器:A(193.168.10.101)  B(193.168.10.102) mysql大版本需要一致,小版本可忽略 配置过程: A(193.168.10.101) 机器配置: 执行 ...

  2. CentOS 下Mysql数据库的安装与配置

    一.mysql简介 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常 的方便,在Linux上如果要安装数据库, ...

  3. Centos下MongoDB数据库的安装以及配置开机自启动(三)

    最近写了一个用node来操作MongoDB完成增.删.改.查.排序.分页功能的示例,并且已经放在了服务器上地址:http://39.105.32.180:3333. 在服务器上完全可以用yum来安装管 ...

  4. Centos下MySQL数据库主从双向同步配置

    MYSQL支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护日志文件的一个索引以跟踪日志循环.当一个从服务器连接到主服务 ...

  5. [转] Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置

    from:  http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得 ...

  6. Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置

    原文:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得搭建好j ...

  7. Linux学习之CentOS(十三)--CentOS6.4下Mysql数据库的安装与配置(转)

    原文地址:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html 如果要在Linux上做j2ee开发,首先得搭建 ...

  8. Linux学习之CentOS(一)--CentOS6.6下Mysql数据库的安装与配置

    在这里我是通过yum来进行mysql数据库的安装的,通过这种方式进行安装,可以将跟mysql相关的一些服务.jar包都给我们安装好,所以省去了很多不必要的麻烦!!! [root@larry ~]# c ...

  9. Linux学习之CentOS--CentOS6.4下Mysql数据库的安装与配置【转】

      如果要在Linux上做j2ee开发,首先得搭建好j2ee的开发环境,包括了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有详细讲解了Linux学习之CentOS(七)--C ...

随机推荐

  1. 032 01 Android 零基础入门 01 Java基础语法 03 Java运算符 12 运算符和if-else条件语句的综合案例——闰年问题

    032 01 Android 零基础入门 01 Java基础语法 03 Java运算符 12 运算符和if-else条件语句的综合案例--闰年问题 本文知识点:运算符和if-else条件语句的综合案例 ...

  2. P2832 行路难

    题面 Link 题目背景 小X来到了山区,领略山林之乐.在他乐以忘忧之时,他突然发现,开学迫在眉睫 题目描述 山区有 \(n\) 座山.山之间有 \(m\) 条羊肠小道,每条连接两座山,只能单向通过, ...

  3. Sprign-mvc系列之Spring快速入门 什么是sprign-mvc spring-mvc的作用及其基本使用+组件解析+注解解析

    Spring-mvc 什么是SpringMvc SpringMvc是一种基于java的实现Mvc设计模式的请求驱动类型的轻量级web框架,属于SpringFrameWork的后续产品,已经融合在Spr ...

  4. 最新vue项目添加水印

    在utils文件夹中创建 wartermark.ts 文件(位置看自己的组件放那,这都行),内容如下: 1 "use strict"; 2 3 const setWatermark ...

  5. ubuntu20 使用命令安装 rabbitmq

    安装 rabbitmq sudo apt-get install erlang-nox -y sudo apt-get update sudo apt-get install rabbitmq-ser ...

  6. 多测师讲解自动化测试 _RF课堂_定位详解(002上午)_高级讲师肖sir

    1,打开克览器 2.id定位 Input Text id=kw 我是id定位 #id定位方法 3.name定位 Input Text name=wd 我是name定位方法 #我是name定位方法 4. ...

  7. 慕课网go语言体系课抢先体验

    慕课网go语言体系课抢先体验,课程分四个阶段: <第一阶段go语言基础语法篇>,从go语言基础语法篇讲起,go语言环境集成,常用开发工具集成,常用数据类型讲解,流程控制,函数,结构体,方法 ...

  8. jsoncpp笔记

    Json Json是一种轻量级数据交换格式,可以表示数字,字符串,布尔值,null,数组,键值对: { "encoding" : "UTF-8", " ...

  9. 请求https接口时报错:Caused by SSLError(SSLError(1, u'[SSL: CERTIFICATE_VERIFY_FAILED] certificat,安装certifi

    如何解决SSL 根证书验错误: 一种解决方法是:verify=False 在session.request 里面: session.post(post_url,data=post_data,heade ...

  10. C语言和单片机C语言为什么会有差异?虽不同但理同!

    许多小伙伴在学完C语言后想入门单片机,但学着学着发现明明都是C语言,为什么单片机C语言和我当初学的C语言有差异呢? 今天小编就来梳理我们平时所学的C语言与单片机C语言的有什么样的不同. 单片机c语言比 ...