最近在玩mysql主从配置,在此记录一下

一、前言

  1、安装两个虚拟机(CentOS 7)。iP分别是192.168.47.131 和192.168.47.133.其中192.168.47.133作为主数据库,192.168.47.131作为从数据库

  2、在线安装Mysql数据库。具体安装方法请参考:http://www.cnblogs.com/jerrylz/p/5645224.html

  3、在主从数据库中创建 testdb 数据库。(作为同步的数据库)

二、具体步骤

  1、主数据库(master)配置

    (1)在Master MySQL上创建一个用户‘test’,并允许其他Slave服务器可以通过远程访问Master,通过该用户读取二进制日志,实现数据同步。

mysql>create user test; //创建新用户
//test用户必须具有REPLICATION SLAVE权限,除此之外没有必要添加不必要的权限,密码为mysql。说明一下192.168.47.%,这个配置是指明test用户所在服务器,这里%是通配符,表示192.168.47.0-192.168.47.255的Server都可以以test用户登陆主服务器。当然你也可以指定固定Ip。
mysql> GRANT REPLICATION SLAVE ON *.* TO 'test'@'192.168.47.%' IDENTIFIED BY 'mysql';

    (2)修改Master MySQL的配置文件 my.cnf

[root@bogon local]# vim /etc/my.cnf
//在my.cnf 的 [mysqld]添加以下内容
server_id =1
log-bin=mysql-bin
binlog-do-db=testdb #允许复制的数据库名称,一行代表一个数据库
binlog-ignore-db=mysql #不复制的数据库

    (3)重启数据库,查看。

[root@bogon local]# service mysqld restart

//进入数据库
show master status;

    结果如下:

+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 | 699 | testdb | mysql | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

  看到file和position,记录下来,后面需要用到。分别是 mysql-bin.000001和

  2、从数据库(slave)配置

    (1)修改MySQL的配置文件 my.cnf

[root@bogon local]# vim /etc/my.cnf
//在my.cnf 的 [mysqld]添加以下内容
server_id=2
log-bin=mysql-bin
replicate-do-db=testdb
replicate-ignore-db=mysql

    (2)重启数据库 命令:service mysqld restart。登录数据库。

mysql> stop slave;  #关闭slave同步进程
mysql> change master to master_host='192.168.47.133',master_user='test',master_password='mysql',master_log_file='mysql-bin.000001',master_log_pos=699;
mysql> start slave; #启动slave同步
mysql> show slave status; #查看状态

   注意:slave_io_running:yes 和slave_sql_running:yes 说明能正常同步了。

  3、测试。

    (1)在主服务器中 testdb 创建 t_user 表,并插入一条数据。

CREATE TABLE t_user(
id INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(50),
age INT
) INSERT INTO t_user (NAME,age) VALUES ('test',21);

    (2)在从服务器中的 testdb 查看是否存在 t_user 表,并且是否有相应的数据。

SELECT * FROM t_user;

    从数据库中存在 t_user 表 ,并且有相应的数据。说明mysql主从配置已经成功了。

CentOS 7下的 Mysql 主从配置的更多相关文章

  1. CentOS 7 下 MySql5.7 主从配置

    演示用两台全新MySql服务器: mysql1:10.10.1.55 (主) mysql2:10.10.1.56 (从) 配置主从,步骤如下:   STEP 1:在mysql1上创建复制账号 repl ...

  2. CentOS双机中Docker下安装Mysql并配置互为主从模式

    CentOS双机中Docker下安装Mysql并配置互为主从模式 目录 1.搜索镜像... 1 2.拉取镜像... 1 3.绑定端口: 1 4.配置文件(修改/etc/mysql/my.cnf文件): ...

  3. centos MySQL主从配置 ntsysv chkconfig setup命令 配置MySQL 主从 子shell MySQL备份 kill命令 pid文件 discuz!论坛数据库读写分离 双主搭建 mysql.history 第二十九节课

    centos  MySQL主从配置 ntsysv   chkconfig  setup命令  配置MySQL 主从 子shell  MySQL备份  kill命令  pid文件  discuz!论坛数 ...

  4. windows环境下mysql主从配置

    mysql主从配置. 相关理论知识可以百度一下,这里就不多说了,直接说如何配置. 一.环境介绍及说明 主库所在的操作系统:win7 主库的版本:mysql-5.6.24-winx64.zip 主库的i ...

  5. MySQL主从配置详解

    一.mysql主从原理 1. 基本介绍 MySQL 内建的复制功能是构建大型,高性能应用程序的基础.将 MySQL 的 数亿分布到到多个系统上去,这种分步的机制,是通过将 MySQL 的某一台主机的数 ...

  6. sql MYSQL主从配置

    MYSQL主从配置 1.1 部署环境 主(master_mysql): 192.168.1.200 OS:CentOS 6.5 从(slave_mysql): 192.168.1.201 OS:Cen ...

  7. mysql主从配置

    引言: 双11,阿里云服务器打折,于是我忍不住又买了一台服务器,于是咱也是有两台服务器的爷们了,既然有了两台服务器,那么肯定要好好利用一下吧,那么就来玩玩mysql的主从配置吧. 准备 两台数据库服务 ...

  8. Mysql主从配置,实现读写分离

    大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够.到了数据业务层.数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢 ...

  9. linux下搭建mysql主从

    在master上创建repl账户,用于复制. grant replication slave on *.* to 'repl'@'%' identified by 'P@$$W0rd'; flush ...

随机推荐

  1. 这个错误,每个ScrumMaster都犯过

    [小编]ScrumMaster要授之以渔,还是授之以鱼?从04年开始接触XP,到08年自己的团队开始提出敏捷的概念,再到10年接受ScrumMaster培训:在刚开始做ScrumMaster的一段时间 ...

  2. vsftpd 配置详解

    1.默认配置: 1>允许匿名用户和本地用户登陆. anonymous_enable=YES local_enable=YES 2>匿名用户使用的登陆名为ftp或anonymous,口令为空 ...

  3. Biee 11g权限详解

    前言:BIEE11g的权限较之前10g版本有了较大的变化,最明显的地方就是构架上的变化,其与 Oracle Fusion Middleware Security 紧密的集成在了一起. 在开始之前先让我 ...

  4. HTML基础(一)——一般标签、常用标签和表格

    第一部分  HTML <html>    --开始标签 <head> 网页上的控制信息 <title>页面标题</title> </head> ...

  5. 获取session、request、parmeter的方法

    package com.hanqi.action; import java.util.Map; import com.opensymphony.xwork2.ActionContext; public ...

  6. arcgis 随手记

    1,ArcGISDynamicMapServiceLayer   3.0  用  4.1 以后用MapImageLayer 代码如下: <!DOCTYPE html> <html&g ...

  7. iOS UIAlertView添加输入框

    这玩意有时不用就忘,还是记录一下吧 添加: UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"新建文件夹" mes ...

  8. Linux的文件时间

    在windows下,一个文件有:创建时间.修改时间.访问时间.而在Linux下,一个文件也有三种时间,分别是:访问时间.修改时间.状态改动时间. 1.访问时间,读一次这个文件的内容,这个时间就会更新. ...

  9. 必须知道的八大种排序算法【java实现】(二) 选择排序,插入排序,希尔算法【详解】

    一.选择排序 1.基本思想:在要排序的一组数中,选出最小的一个数与第一个位置的数交换:然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第二个数和最后一个数比较为止. 2.实例 3.算法 ...

  10. 《Inside UE4》-1-基础概念

    <Inside UE4>-1-基础概念   InsideUE4   创建测试项目 接上文的准备工作,双击生成的UE4Editor.exe,选择创建测试C++空项目Hello(以后的源码分析 ...