Centos6.4 + mysql-5.6.38-linux-glibc2.12-x86_64.tar 实现mysql主从复制
mysql安装方法:
http://www.cnblogs.com/lin3615/p/4376224.html
如果你想要更快的,更省事的安装mysql可以去试试宝塔,一键安装,省事快捷
安装教程:https://www.bt.cn/bbs/thread-1186-1-1.html
用到的是两台服务器
主:192.168.1.106
从:192.168.1.69
1.在主库服务器中的mysql中新建一个用户用于让从库连接使用
insert into mysql.user(Host,User,Password,ssl_cipher,x509_issuer,x509_subject) values('%','rjj123',password('123456'),'','','');
2.#刷新系统授权表
flush privileges;
3. #授权用户rjj只能从 192.168.1.69 这个IP访问主服务器192.168.1.106上面的数据库
grant replication slave on *.* to 'rjj123'@'192.168.1.69' identified by '123456';
rjj123:用户名称,用于从服务器登陆主服务的的账号
192.168.1.69:从服务的IP
123456:账号的密码
4.先把 主服务器的数据库复制到 从服务器,具体方法可参考:
http://www.cnblogs.com/lin3615/p/3749438.html 这一步就是在主服务和从服务中建立一样的数据库信息,数据库的一样,表结构一样
5.配置MySQL主服务器(192.168.1.106)的my.cnf文件
vim /etc/my.cnf
一下配置是我的my.cnf中全部,主要是红色部分
[mysqld]
#主机的东西
binlog-do-db=rjj
binlog-ignore-db=mysql
log-bin=mysql-bin user = mysql
basedir = /usr/local/mysql
skip-external-locking
key_buffer = 384M
max_allowed_packet=268435456
max_connections = 500
max_user_connections = 35
wait_timeout=40
connect_timeout=10
# table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
myisam_sort_buffer_size = 64M
thread_cache_size = 8
query_cache_size = 32M
thread_concurrency = 8 #主机
server-id = 106 # skip-innodb [mysqldump]
quick
max_allowed_packet = 16M [mysql]
no-auto-rehash [myisamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M [mysqlhotcopy]
interactive-timeout
一般只要的是这几个参数
server-id=1 #设置服务器id,为1表示主服务器,一般用IP地址接替log-bin=mysql-bin #启动MySQ二进制日志系统
binlog-do-db=test #需要同步的数据库名,如果有多个数据库,可重复此参数,每个数据库一行
binlog-ignore-db=mysql #不同步mysql系统数据库
#保存退出 service mysqld restart #重启MySQL
mysql -h localhost -u root -p #登陆
show variables like 'server_id'; #查看server-id的值是否为1
mysql> show variables like 'server_id';
6.show master status; #查看主服务器,出现以下类似信息
需要记住主服务器中的这个
mysql-bin.000014
和
120 注意:这里记住File的值:mysql-bin.000011和Position的值:107,重服务器配置会用到。
从服务的mysql配置
首先需要配置 /etc/my.cof
vim /etc/my.cnf #编辑配置文件,在[mysqld]部分添加下面内容
server-id=2 #设置服务器id,修改其值为2,表示为从数据库log-bin=mysql-bin #启动MySQ二进制日志系统replicate-do-db=test #需要同步的数据库名,如果有多个数据库,可重复此参数,每个数据库一行
replicate-ignore-db=mysql #不同步mysql系统数据库
read_only #设置数据库只读
service mysqld restart #重启MySQL
从服务器中mysql的基本一样,read_only #设置数据库只读,这个配置就是直接把这个从服务设置成只读的了。
现在开始配置从服务的mysql
#停止slave同步进程
stop slave;
#执行同步语句
change master to
master_host='192.168.1.106' //主机的ip
,master_user='rjj123' //我们在主机上授权的账号
,master_password='123456' //密码
,master_log_file='mysql-bin.000014' //我们在主服务器上得到的file
,master_log_pos=120; //Position
#开启slave同步进程
start slave; 注意:在没有开启start slave
执行 SHOW SLAVE STATUS\G 命令显示的
执行start slave 后我们再次执行SHOW SLAVE STATUS\G 命令

Slave_IO_Running: Yes
Slave_SQL_Running: Yes
这两个参数都是yes就可以了。
如果执行show slave status\G;出现的是

Slave_IO_Running: Connecting
这个问题,网上找了好多

一般都是这个答案
我的不是这个问题,我把主服务器和从服务器的防火墙都关闭就可以了
关闭防火墙的方法为:
1. 永久性生效
开启:chkconfig iptables on
关闭:chkconfig iptables off
2. 即时生效,重启后失效
开启:service iptables start
关闭:service iptables stop
需要说明的是对于 Linux 下的其它服务都可以用以上命令执行开启和关闭操作
补充:
a. 防火墙还需要关闭ipv6的防火墙:
chkconfig ip6tables off
并且可以通过如下命令查看状态:
chkconfig --list iptables
b. selinux状态可以通过以下命令查看:
Sestatus
===============
好了配置好了主从复制,我们来测试下看看是不是会成功呢? 主库的表的信息,这个是有数据的![]()
从库表是没有数据的

配置同步了,但是在从库查看时候主库的数据还是不能够同步过来。
这些数据是原来的,配置好后,没有插入过数据测试,直接在从从库查询。
后来删除了主库的数据。现在主库和从库的数据一致了。我们插入一条数据测试看看
主库插入数据

现在看看从库是否有数据

好了,现在数据同步了。
Centos6.4 + mysql-5.6.38-linux-glibc2.12-x86_64.tar 实现mysql主从复制的更多相关文章
- 数据库的硬迁移和mysql 5.5.38源码安装
场景:一台服务器出现了故障,需要把数据库迁移到另一台服务器上,由于数据效大,直接压缩数库的数据目录(在数据库DOWN的情况下)数据库版本mysql 5.5.38安装方式:源码安装思路:在另一台服务器上 ...
- linux入门常用指令3.安装mysql
下载安装包 MySQL-5.6.42-1.el6.x86_64.rpm-bundle_redhat [root@localhost src]# mkdir mysql [root@localhost ...
- 史上最简单的MySQL安装教程之Linux(CentOS6.8)下安装MySQL5.6
一.准备 安装包:Percona-Server-5.6.21-70.0-r688-el6-x86_64-bundle.tar MySQL下载地址:http://www.percona.com/doc/ ...
- 【centos6.5】CentOS 6.5系统安装配置LAMP(Apache+PHP5+MySQL)服务器环境(linux公社)
准备篇: 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dp ...
- linux的LNMP架构介绍、MySQL安装、PHP安装
LNMP架构介绍 和LAMP唯一不同的是,LNMP中的N指的是Nginx(类似于Apache的一种web服务软件).目前这种环境的应用也非常多.Nginx设计的初衷是提供一种快速.高效.多并发的Web ...
- MySQL 5.6/5.7 linux常见安装(tar,yum,script)
该文章总结一下MySQL的常见安装方式,以tar,yum,script 三种方式来演示: 一般的公司都会有自己统一的数据库安装规范和模板,在生产环境请按照自己的规范来安装和使用,这里只演示和测试,供需 ...
- linux应用之Lamp(apache+mysql+php)的源码安装(centos)
Linux+Apache+Mysql+Php源码安装 一.安装环境: 系统:Centos6.5x64 Apache: httpd-2.4.10.tar.gz Mysql: mysql-5.6.20-l ...
- Linux CentOS下安装、配置mysql数据库
假设要在Linux上做j2ee开发.首先得搭建好j2ee的开发环境.包含了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有具体解说了Linux学习之CentOS(七)--Cen ...
- Linux(Centos7)搭建LAMP(Apache+PHP+Mysql环境)
目录 Linux搭建LAMP(Apache+PHP+Mysql环境)Centos7 一. 检查系统环境 1.确认centos版本 2.检查是否安装过apache 3.检查是否安装过Mysql 4.清理 ...
- MySQL 5.6.38安装
#1.安装说明 本套安装方式适用于:CentOS6.X 或CentOS7.X系列的OS安装,此方法适用于MySQL5.6.xx版本的安装,如果是5.7版本的话不适合该配置. #2.准备安装环境 # N ...
随机推荐
- 编码与Python的基础
编码 在linux 系统或者Python2版本中要用Python这门语言呢,就需要在开头加上 # -*- coding:utf8 -*- 这个语句是说呀,当机器编译你写的程序的时候是用utf-8这种编 ...
- VirtualBox虚拟机网络设置(四种方式)
原文地址: https://www.douban.com/group/topic/15558388/ VirtualBox的提供了四种网络接入模式,它们分别是: 1.NAT 网络地址转换模式(NAT, ...
- 【转】学习FFmpeg API – 解码视频
ffmpeg是编解码的利器,用了很久,以前看过dranger 的教程,非常精彩,受益颇多,是学习ffmpeg api很好的材料.可惜的是其针对的ffmpeg版本已经比较老了,而ffmpeg的更新又很快 ...
- Greenplum测试部署笔记
按照官方Readme文档在Ubunut16.04上成功编译安装Greenplum最新代码(now:2017-11-12 21:40) 按照文档安装的过程中主要出现两个问题: 1.Root用户安装会卡在 ...
- py-oauth2包使用简记
接前两天线上项目py2升级py3的书,老廖的一个旧库snspy,他已经不维护了,用的api又比较久,不好升级,最后速度找了个OAuth库取代了它,由于时间紧张,直接在pypi上搜索了一下,找到这个支持 ...
- XYC2016上半年工作笔记整理
只要团队在,做那个方向都可能 这个产品的用户群人均价值高 第一次产品介绍会议就介绍了产品的初期全部目标功能 传统互联网人的产品思路比较偏媒体内容服务特性. 产品转化率高说明了其发展势头 任何一个形式变 ...
- R语言学习 第十一篇:日期和时间
R语言的基础包中提供了三种基本类型用于处理日期和时间,Date用于处理日期,它不包括时间和时区信息:POSIXct/POSIXlt用于处理日期和时间,其中包括了日期.时间和时区信息.R内部在存储日期和 ...
- 遍历php数组的几种方法
第一.foreach() foreach()是一个用来遍历数组中数据的最简单有效的方法. <?php $urls= array('aaa','bbb','ccc','ddd'); foreach ...
- Leetcode_删除排序数组中的重复项
Leetcode 删除排序数组中的重复项 题目: 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度. 不要使用 额外的数组空间,你必须在原地修改输入数 ...
- python 面向对象终极进阶之开发流程
好了,你现在会了面向对象的各种语法了, 但是你会发现很多同学都是学会了面向对象的语法,却依然写不出面向对象的程序,原因是什么呢?原因就是因为你还没掌握一门面向对象设计利器, 此刻有经验的人可能会想到 ...



