最近在玩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. JAVA中的字符串小结

    String字符串是只读的,不可变的 查看String类的源码,可以发现String类是被final关键字修饰的: 另外还可以看下String类源码中的其它方法实现,随便举个可以修改String值的方 ...

  2. MVC6的内置ActionResult类型

    BadRequestObjectResult,BadRequestResult http 400 bad request ChallengeResult   ContentResult   Creat ...

  3. Maven Scope

    Dependency Scope  在POM 4中,<dependency>中还引入了<scope>,它主要管理依赖的部署.目前<scope>可以使用5个值:  * ...

  4. What Need To Do when A Node down!

    就以pdsp node3 down了为例,如下 ==========================START===================================== The Who ...

  5. C#调用SQL Server分页存储过程

    以SQL Server2012提供的offset ..rows fetch next ..rows only为例 e.g. 表名:Tab1 ------------------------------ ...

  6. 记录Sqlserver2012附加Sqlserver2008的数据库出错的解决方案

    一.摘要 最近在实验里面用台式编写好了一个软件,想移植到家里的笔记本上.在附加数据的时候却出现了错误,具体也没有提示什么错误,反正就是附加失败了. 二.解决方案 在网上看了一些资料,有的说[低版本不能 ...

  7. activiti入门

    一.Activiti简介 Activiti 是一个针对商务人士. 开发人员和系统管理员的轻量级的工作流和业务流程管理 (BPM) 平台.它的核心是Java的高速和可靠的 BPMN 2 流程引擎.它是开 ...

  8. 烂泥:通过binlog恢复mysql备份之前的数据

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 上一篇文章,我们讲解了如何通过mysql的binlog日志恢复mysql数据库,文章连接为<烂泥:通过binlog恢复mysql数据库>.其 ...

  9. mongo日志切割脚本

    两种mongo日志切割脚本 vim /etc/logrotate.d/mongodb /home/mongodb/mongolog/mongod.log { daily rotate 7 compre ...

  10. Android控件开发之Chronometer(转)

    (转自:http://blog.csdn.net/sun6255028/article/details/6688349) Chronometr是一个简单的定时器,你可以给它一个开始时间,并以此定时,或 ...