CentOS6.5配置MYSQL一主多从详解
一、环境
操作系统 :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一主多从详解的更多相关文章
- MySQL Cluster 配置文件(config.ini)详解
MySQL Cluster 配置文件(config.ini)详解 ################################################################### ...
- MySQL数据类型以及基本使用详解
MySQL数据类型以及基本使用详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.MySQL服务器的主要组件 我们知道MySQL的主要组件主要是由服务端(mysqld)和客户端 ...
- mysql互为主从实战设置详解及自动化备份(Centos7.2)
mysql互为主从实战设置详解(Centos7.2) 第一步:mysql配置 my.cnf配置 服务器1 (10.89.10.90) [mysqld] server-id=1 log-bin=/ ...
- Mysql数据库导入命令Source详解
Mysql数据库导入命令Source详解 几个常用用例: 1.导出整个数据库 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u root -p dat ...
- Nginx 主配置文件参数详解
Nginx 主配置文件参数详解 Nginx 安装完毕后,会有响应的安装目录,安装目录里 nginx.conf 为 nginx 的主配置文件, ginx 主配置文件分为 4 部分,main(全局配置). ...
- MySQL事务及隔离级别详解
MySQL事务及隔离级别详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.MySQL的基本架构 MySQL的基本架构可以分为三块,即连接池,核心功能层,存储引擎层. 1> ...
- mysql 聚集函数 count 使用详解
mysql 聚集函数 count 使用详解 本文将探讨以下问题 1.count(*) . count(n).count(null)与count(fieldName) 2.distinct 与 coun ...
- mysql中event的用法详解
一.基本概念mysql5.1版本开始引进event概念.event既“时间触发器”,与triggers的事件触发不同,event类似与linux crontab计划任务,用于时间触发.通过单独或调用存 ...
- MYSQL常用内置函数详解说明
函数中可以将字段名当作变量来用,变量的值就是该列对应的所有值:在整理98在线字典数据时(http://zidian.98zw.com/),有这要一个需求,想从多音字duoyinzi字段值提取第一个拼音 ...
随机推荐
- [Android实例] Android Studio插件-自动根据布局生成Activity等代码1.4 (开源)(申明:来源于网络)
[Android实例] Android Studio插件-自动根据布局生成Activity等代码1.4 (开源)(申明:来源于网络) 地址:http://www.eoeandroid.com/thre ...
- Db2性能:系统CPU高问题分析的一些思路
Db2性能:系统CPU高问题分析的一些思路 1. 如何判断CPU高? 有很多操作系统的命令可以看出来,比如ps -elf,iostat, vmstat, top/topas, 2. 收集数据 CPU高 ...
- djiango web 在进入admin的时候出现'set' object is not reversible错误
解决方案是在你的urls.py 中 把{ } 改为[] 原因不详 治标不治本,并不能改的东西
- [No0000EB]C# 数组(Array)
数组是一个存储相同类型元素的固定大小的顺序集合.数组是用来存储数据的集合,通常认为数组是一个同一类型变量的集合. 声明数组变量并不是声明 number0.number1.....number99 一个 ...
- [转载]win7x64下的redis安装与使用
原文应用为:`https://www.cnblogs.com/koal/p/5484916.html` 先引用百度百科的一段话吧,具体可以到百科查看吧. Redis是一个开源的使用ANSI C语言编写 ...
- php之sphinx
1.修改sphinx配置文件? source 数据源名称 { type = mysql ######数据源类型 sql_host = #######数据库主机地址(如果是外网,请确保防火墙允许链接) ...
- IndentationError: expected an indented block 在继承中出现的问题:未完
1. class Foo(object): def __init__(self,name,price,period): self.name=name self.price=price self.per ...
- Http-server 的使用
Http-server 是一款基于node.js的web前端开发服务,可以很好的承担前后端解耦后,前端服务的搭建. 1,首先安装node node下载地址:https://nodejs.org/zh- ...
- Aop的基本介绍
基本概念 通知 就是你想要的功能,也就是我们常说的安全.事物.日志等.先定义好这些,然后再想用的地方用一下.包含Aspect的一段处理代码 注意:其实这些功能(通知)并不是我们业务逻辑所必须的,只是 ...
- kubernetes的Controller Manager
1. Controller Manager简介 Controller Manager作为集群内部的管理控制中心,负责集群内的Node.Pod副本.服务端点(Endpoint).命名空间(Namespa ...