一、环境

 操作系统 :CentOS 6.5
数据库版本:MySQL 5.6.27
主机A:192.168.1.1 (Master)
从机B:192.168.1.2 (Slave)
从机B:192.168.1.3 (Slave)

二、基本环境配置

MYSQL是通过3306端口访问的,所以要保证防火墙对3306端口的开启。

三、Master的配置

1、配置my.cnf

在Linux环境下MySQL的配置文件的位置是在 /etc/my.cnf ,在该文件下指定Master的配置如下:

[root@mycentos ~]# vim /etc/my.cnf

server-id               = 1       # 一般用IP的最后一段,这个标识是唯一的
log-bin = mysql-bin
binlog-ignore-db = test # 排除不同步的库
binlog-ignore-db = mysql
binlog-ignore-db = performance_schema
binlog-ignore-db = information_schema
binlog-do-db = vertical_analysis # 选择要同步的库
binlog_format = mixed
expire_logs_days = 7
relay-log = relay-log
log_slave_updates
skip-slave-start

说明:

binlog-ignore-db:表示同步的时候ignore的数据库

binlog-do-db:指定需要同步的数据库

2、重启mysql

[root@mycentos ~]# service mysqld restart

3、进入mysql

[root@mycentos ~]# mysql -u root -p

4、 赋予从库权限帐号

允许用户在主库上读取日志,赋予192.168.1.2/3也就是Slave机器有File权限,只赋予Slave机器有File权限还不行,还要给它REPLICATION SLAVE的权限才可以。

在Master数据库命令行中输入:

mysql> GRANT FILE ON *.* TO 'slaver'@'%' IDENTIFIED BY '';
mysql> GRANT REPLICATION SLAVE ON *.* TO 'slaver'@'%' IDENTIFIED BY '';
mysql> FLUSH PRIVILEGES

这里slaver 用户作为同步的时候使用到的用户,可以自己设定。

5、检测授权结果 

mysql> select * from user where host='%' and user='slaver'\G; 

# 如果Repl_slave_priv项为Y,表示授权成功。

6、查看主数据库master状态

mysql> show master status;

+------------------+----------+-----------------------+---------------------------------------------------+-------------------+

| File             | Position | Binlog_Do_DB          | Binlog_Ignore_DB                                  | Executed_Gtid_Set |

+------------------+----------+-----------------------+---------------------------------------------------+-------------------+

| mysql-bin.000004 |    28125 | vertical_analysis     | performance_schema ,information_schema,test,mysql |                   |

+------------------+----------+-----------------------+---------------------------------------------------+-------------------+

1 row in set (0.00 sec)

这里的 File 、Position 是在配置Salve的时候要使用到的,Binlog_Do_DB表示要同步的数据库,Binlog_Ignore_DB 表示Ignore的数据库,这些都是在配置的时候进行指定的。

四、Slave的配置

1、配置my.cnf

[root@mycentos ~]# vim /etc/my.cnf

server-id               = 2            # 一般用IP的最后一段,这个标识是唯一的
log-bin = mysql-bin
binlog_format = mixed
expire_logs_days = 7
relay-log = relay-log # 注意:不同的slave这里也是唯一的
binlog-ignore-db = information_schema
binlog-ignore-db = performance_schema
binlog-ignore-db = mysql
binlog-ignore-db = test
replicate-do-db = vertical_analysis
replicate-ignore-db = mysql
log_slave_updates
skip-slave-start
slave-skip-errors = all
slave-net-timeout = 60

2、配置Slave同步信息

mysql> stop slave;

mysql> change master to
  master_host='192.168.1.1',
  master_port=3306,
  master_user='slaver',
  master_password='',
  master_log_file='mysql-bin.000004',
  master_log_pos=28125; mysql> start slave;

3、检测从数据库复制功能状态

mysql> show slave status\G;

# 其中下面两项都必须为yes。
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

五、验证

在主库上建一张表,看下从库是否同步过来。

附:

错误1:Slave failed to initialize relay log info structure from the repository

解决方法:使用reset slave all清空所有的复制信息,然后重置master.info、start slave后复制正常。

CentOS6.5配置MYSQL一主多从详解的更多相关文章

  1. MySQL Cluster 配置文件(config.ini)详解

    MySQL Cluster 配置文件(config.ini)详解 ################################################################### ...

  2. MySQL数据类型以及基本使用详解

    MySQL数据类型以及基本使用详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.MySQL服务器的主要组件 我们知道MySQL的主要组件主要是由服务端(mysqld)和客户端 ...

  3. mysql互为主从实战设置详解及自动化备份(Centos7.2)

    mysql互为主从实战设置详解(Centos7.2) 第一步:mysql配置  my.cnf配置 服务器1 (10.89.10.90) [mysqld]  server-id=1  log-bin=/ ...

  4. Mysql数据库导入命令Source详解

    Mysql数据库导入命令Source详解 几个常用用例: 1.导出整个数据库 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u root -p dat ...

  5. Nginx 主配置文件参数详解

    Nginx 主配置文件参数详解 Nginx 安装完毕后,会有响应的安装目录,安装目录里 nginx.conf 为 nginx 的主配置文件, ginx 主配置文件分为 4 部分,main(全局配置). ...

  6. MySQL事务及隔离级别详解

    MySQL事务及隔离级别详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.MySQL的基本架构 MySQL的基本架构可以分为三块,即连接池,核心功能层,存储引擎层. 1> ...

  7. mysql 聚集函数 count 使用详解

    mysql 聚集函数 count 使用详解 本文将探讨以下问题 1.count(*) . count(n).count(null)与count(fieldName) 2.distinct 与 coun ...

  8. mysql中event的用法详解

    一.基本概念mysql5.1版本开始引进event概念.event既“时间触发器”,与triggers的事件触发不同,event类似与linux crontab计划任务,用于时间触发.通过单独或调用存 ...

  9. MYSQL常用内置函数详解说明

    函数中可以将字段名当作变量来用,变量的值就是该列对应的所有值:在整理98在线字典数据时(http://zidian.98zw.com/),有这要一个需求,想从多音字duoyinzi字段值提取第一个拼音 ...

随机推荐

  1. python爬虫+使用cookie登录豆瓣

    2017-10-09 19:06:22 版权声明:本文为博主原创文章,未经博主允许不得转载. 前言: 先获得cookie,然后自动登录豆瓣和新浪微博 系统环境: 64位win10系统,同时装pytho ...

  2. cmd打开E盘文件

    在命令行中输入你想要打开文件所在的磁盘,这里我以打开E:\homework\1.jpg来给大家做示范.在命令行中输入  E:   输入后按下enter键.就进入E盘中,效果如图所示!   如果你想要查 ...

  3. Luogu 3369 / BZOJ 3224 - 普通平衡树 - [无旋Treap]

    题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=3224 https://www.luogu.org/problemnew/show/P3 ...

  4. haproxy实现会话保持

    HAProxy系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html 1.反向代理为什么需要设置cookie 任何一个七层的http负载均衡器,都 ...

  5. [development][tcp/ip][ids] 一个简单有参考价值的库 libnids

    libhtp 中的例子, 可以通过libnids快速使用. 或者可以快速的写个sniffer. 支持三个功能 ip分片重组, tcp乱序重排, 端口扫描发现. 工程: https://github.c ...

  6. Fiddler笔记一移动端连接

    一.下载Fiddler 百度搜索”fiddler 下载“ ,安装最新版本   二.Fiddler手机抓包原理 在本机开启了一个http的代理服务器,然后它会转发所有的http请求和响应. Fiddle ...

  7. LeetCode 762 Prime Number of Set Bits in Binary Representation 解题报告

    题目要求 Given two integers L and R, find the count of numbers in the range [L, R] (inclusive) having a ...

  8. LeetCode 637 Average of Levels in Binary Tree 解题报告

    题目要求 Given a non-empty binary tree, return the average value of the nodes on each level in the form ...

  9. webstorm背景颜色更改

    一.file --> settings 二.editor-->color scheme  然后右边下拉选择 三.apply -- > ok

  10. 20165336 2017-2018-2 《Java程序设计》第1周学习总结

    20165336 2017-2018-2 <Java程序设计>第1周学习总结 教材学习内容总结 Java地位.特点:Java具有面向对象.与平台无关.安全.稳定和多线程等优良特性.Java ...