mysql主从配置(5分钟解决问题)
条件:一台阿里云服务器(centos 6.6 +mysql 5.6)
一台腾讯云服务器(centos 7.2 +mysql 5.6)
注:主库和从库版本可以一致也可以不一致,需要说明一点,如果两者版本不一致,一般主库的版本需要比从库的版本低,这样就可以避免由于版本问题,有些sql不能执行的问题。当然学习环境可以不同,但是生产环境必须要要,系统和数据版本要相同的
前置步骤:重置mysql密码,让mysql能外网访问。
(Master config)
正式步骤:1.修改 Master 的配置文件/etc/my.[root@edu-mysql-01 ~]# vi /etc/my.cnf
## 在 [mysqld] 中增加以下配置项
## 设置 server_id,一般设置为 IP
server_id=205
## 复制过滤: 需要备份的数据库, 输出 binlog
#binlog-do-db=roncoo
## 复制过滤: 不需要备份的数据库, 不输出(mysql 库一般不同步)
binlog-ignore-db=mysql
## 开启二进制日志功能, 可以随便取, 最好有含义
log-bin=edu-mysql-bin
## 为每个 session 分配的内存,在事务过程中用来存储二进制日志的缓存
binlog_cache_size=1M
## 主从复制的格式(mixed,statement,row,默认格式是 statement)
binlog_format=mixed
## 二进制日志自动删除/过期的天数。默认值为 0,表示不自动删除。
expire_logs_days=7
## 跳过主从复制中遇到的所有错误或指定类型的错误,避免 slave 端复制中断。
## 如: 1062 错误是指一些主键重复, 1032 错误是因为主从数据库数据不一致
slave_skip_errors=1062
2.重启mysql
/etc/init.d/mysql restart(有些用户可能需要使用/etc/init.d/mysqld restart)
3.创建同步用户
(登陆mysql)
##创建数据同步用户,并授予相应的权限(用户名+ip+密码)
mysql> grant replication slave, replication client on *.* to 'repl'@'192.168.1.206' identified by
'roncoo.123';
Query OK, 0 rows affected (0.00 sec)
## 刷新授权表信息
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
## 查看 position 号, 记下 position 号(从机上需要用到这个 position 号和现在的日志文件)
mysql> show master status;
(slave config)
4.从配置
## 在 [mysqld] 中增加以下配置项
## 设置 server_id,一般设置为 IP
server_id=206
## 复制过滤: 需要备份的数据库,输出 binlog
#binlog-do-db=roncoo
##复制过滤: 不需要备份的数据库, 不输出(mysql 库一般不同步)
binlog-ignore-db=mysql
## 开启二进制日志,以备 Slave 作为其它 Slave 的 Master 时使用
log-bin=edu-mysql-slave1-bin
## 为每个 session 分配的内存,在事务过程中用来存储二进制日志的缓存
binlog_cache_size = 1M
## 主从复制的格式(mixed,statement,row,默认格式是 statement)
binlog_format=mixed
## 二进制日志自动删除/过期的天数。默认值为 0,表示不自动删除。
expire_logs_days=7
## 跳过主从复制中遇到的所有错误或指定类型的错误,避免 slave 端复制中断。
## 如: 1062 错误是指一些主键重复, 1032 错误是因为主从数据库数据不一致
slave_skip_errors=1062
## relay_log 配置中继日志
relay_log=edu-mysql-relay-bin
## log_slave_updates 表示 slave 将复制事件写进自己的二进制日志
log_slave_updates=1
## 防止改变数据(除了特殊的线程)
read_only=1
主从配置总结
Master /etc/my.cnf
[mysqld]中增加
## replication
server_id=205
#binlog-do-db=roncoo
binlog-ignore-db=mysql
log-bin=edu-mysql-bin
binlog_cache_size=1M
binlog_format=mixed
expire_logs_days=7
slave_skip_errors=1062
Slave /etc/my.cnf
[mysqld]中增加
## replication
server_id=206
#binlog-do-db=roncoo
binlog-ignore-db=mysql
log-bin=edu-mysql-slave1-bin
binlog_cache_size = 1M
binlog_format=mixed
expire_logs_days=7
slave_skip_errors=1062
relay_log=edu-mysql-relay-bin
log_slave_updates=1
read_only=1
5.重启从mysql服务器,登陆从myql数据库
6.创建同步用户(注意 master_log_file and master_log_pos)
mysql> change master to master_host='192.168.1.205', master_user='repl',
master_password='roncoo.123', master_port=3306, master_log_file='edu-mysql-bin.000001',
master_log_pos=1389, master_connect_retry=30;
Query OK, 0 rows affected, 2 warnings (0.01 sec)
## 刷新授权表信息
mysql> flush privileges;
7.开启监听线程
## 查看主从同步状态
mysql> show slave status\G;
可看到 Slave_IO_State 为空, Slave_IO_Running 和 Slave_SQL_Running 是 No, 表明 Slave 还
没有开始复制过程。
## 开启主从同步
mysql> start slave;
Query OK, 0 rows affected (0.00 sec)
## 再查看主从同步状态
mysql> show slave status\G;
mysql主从配置(5分钟解决问题)的更多相关文章
- mysql主从配置
引言: 双11,阿里云服务器打折,于是我忍不住又买了一台服务器,于是咱也是有两台服务器的爷们了,既然有了两台服务器,那么肯定要好好利用一下吧,那么就来玩玩mysql的主从配置吧. 准备 两台数据库服务 ...
- Mysql主从配置,实现读写分离
大型网站为了软解大量的并发访问,除了在网站实现分布式负载均衡,远远不够.到了数据业务层.数据访问层,如果还是传统的数据结构,或者只是单单靠一台服务器扛,如此多的数据库连接操作,数据库必然会崩溃,数据丢 ...
- CentOS 7下的 Mysql 主从配置
最近在玩mysql主从配置,在此记录一下 一.前言 1.安装两个虚拟机(CentOS 7).iP分别是192.168.47.131 和192.168.47.133.其中192.168.47.133作为 ...
- Mysql主从配置+读写分离
Mysql主从配置+读写分离 MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. ...
- mysql主从配置(清晰的思路)
mysql主从配置.鄙人是在如下环境测试的: 主数据库所在的操作系统:win7 主数据库的版本:5.0 主数据库的ip地址:192.168.1.111 从数据库所在的操作系统:linux 从数据的版本 ...
- mysql 主从 配置和同步管理
首先呢,需要有两个mysql服务器.如果做测试的话可以在同一台机器上装两个mysql服务程序,注意要两个运行程序的端口不能一样.我用的是一个是默认的3306,从服务器用的是3307端口. 在主服务创建 ...
- Mysql笔记之 -- 小试MYSQL主从配置
mysql主从配置: 硬件: 两台服务器 1.Ubuntu 12.04.4 LTS (GNU/Linux 3.2.0-60-generic-pae i686) 2.Ubuntu 12.04.4 LT ...
- MySql主从配置实践及其优势浅谈
MySql主从配置实践及其优势浅谈 1.增加两个MySQL,我将C:\xampp\mysql下的MYSQL复制了一份,放到D:\Mysql2\Mysql5.1 修改my.ini(linux下应该是my ...
- windows环境下mysql主从配置
mysql主从配置. 相关理论知识可以百度一下,这里就不多说了,直接说如何配置. 一.环境介绍及说明 主库所在的操作系统:win7 主库的版本:mysql-5.6.24-winx64.zip 主库的i ...
- 黄聪:mysql主从配置(清晰的思路)
mysql主从配置.鄙人是在如下环境测试的: 主数据库所在的操作系统:win7 主数据库的版本:5.0 主数据库的ip地址:192.168.1.111 从数据库所在的操作系统:linux 从数据的版本 ...
随机推荐
- SpringMVC中数据转换
SpringMVC中接收到的数据都是String形式,然后再根据反射机制将String转换成对应的类型.如果此时想接收一个Date类型,那么我们可以定义一个转换器来完成. 例如,我们有下面的Emp类: ...
- 啰里吧嗦redis
1.redis是什么 redis官网地址 Redis is an open source (BSD licensed), in-memory data structure store, used as ...
- 深入理解java虚拟机---4虚拟机类加载机制
本文来源于翁舒航的博客,点击即可跳转原文观看!!!(被转载或者拷贝走的内容可能缺失图片.视频等原文的内容) 若网站将链接屏蔽,可直接拷贝原文链接到地址栏跳转观看,原文链接:https://www.cn ...
- Java Swing实战(三)文本组件JTextField和密码组件JPasswordField
接下来添加文本组件JTextField和密码组件JPasswordField. /** * @author: lishuai * @date: 2018/11/26 13:51 */ public c ...
- ssh基础配置大全
firstweb firstweb-pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi= ...
- SpringMVC入门(二)—— 参数的传递、Controller方法返回值、json数据交互、异常处理、图片上传、拦截器
一.参数的传递 1.简单的参数传递 /* @RequestParam用法:入参名字与方法名参数名不一致时使用{ * value:传入的参数名,required:是否必填,defaultValue:默认 ...
- POJ1426(KB1-E 暴力搜索)
Find The Multiple Description Given a positive integer n, write a program to find out a nonzero mu ...
- Python 2 和 Python 3 有哪些主要区别
概述# 原稿地址:使用 2to3 将代码移植到 Python 3 几乎所有的Python 2程序都需要一些修改才能正常地运行在Python 3的环境下.为了简化这个转换过程,Python 3自带了一个 ...
- jQuery导入及测试
jQuery导入: <script type="text/javascript" src="js/jquery-3.1.1.min.js">< ...
- animation 秒简单笔记
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...