Mysql数据库主从复制搭建
Mysql数据库主从复制原理:
主库开启bin-log日志,同时生成IO线程。IO线程负责将用户写入数据库的sql语句记录在二进制日志bin-log,该记录过程可并发进行;生成标识号 server id ;创建主从复制账号。
从库不需要开启bin-log日志,开启主从复制后,从库将产生一个IO线程,从库IO线程监控主库bin-log日志,当bin-log 日志发生变化时,从IO线程将会通过3306端口向主IO线程申请验证,进行数据交换,具体验证信息:1 主库IP和端口号、2 主库的复制账号和密码、3 所要复制的bin-log日志的文件名、4 文件中position具体位置。验证通过后主IO线程将对应的内容复制给从IO线程,该过程可以并发进行。此时从库文件master.info 记录了验证信息和完成数据交换的bin-log日志文件及文件中的位置信息。从库IO线程将内容放在从库中继日志relay-log中。SQL线程启动,查看relay-log ,将其中更新的二进制语句编译解析成sql语句,存储在从库的mysql data 目录中,并在relay-log.info文件中记录sql进程解析relay-log的文件名及位置信息,完成主从复制。
主从备份搭建
试验环境:master: 1922.168.200.151 slave : 192.168.200.129
一、 建立时间同步环境
l Master:安装配置ntp时间同步服务
#yum –y install ntp
#cp /etc/ntp.conf /etc/ntp.conf.origin
#vim /etc/ntp.conf
22 server 127.127.1.0 //手动添加
23 fudge 127.127.1.0 startum 8 //手动添加

#/etc/init.d/ntpd start
#chkconfig ntpd on
l Slave :
# yum –y install ntpdate
#ntpdate 192.168.200.151

二、 在master上执行操作配置
1、 1.1开启bin-log日志,并设置server-id 值
# vim /etc/my.cnf

**上面三个参数要放在[mysqld]模块下;添加参数并不能重复
#/etc/init.d/mysqld start

1.2登陆数据库,检查参数的更改情况


2、 建立主从复制账号(权限为允许从库连接并同步数据)
2.1登陆数据库,建立主从复制账号yunjisuan
#mysql –uroot –p123123
>grant replication slave on *.* to ‘yunjisuan’@‘192.168.200.129’identified by ‘yunjisuan123’;

注:replication slave 为mysql同步的必须权限,此处不要授予all权限
>flush privileges;
2.2检查创建的账号
>select user,host from mysql.user;

3、 对主库锁表全备份
3.1对主数据库锁表只读
>flush table with read lock; //零时锁表,超过设置时间,将会自动解锁

3.2 锁表后查看主库状态。可通过当前bin-log日志文件名和bin-log日志偏移量来查看
注:show master status 命令显示信息要记录在案,后面从库导入全备后,继续和主库复制是要从这个位置开始。
> show master status;

3.3新开一个SSH窗口,全备数据库数据

3.4 解表主库
>unlock tables;
3.5 将全备数据推送到从库

三、 配置从服务器
1.1 将全备份数据导入从库
#mysql –uroot –p123123 < /temp/mysql_all*
2.2#vim /etc/my.cnf

#/etc/init.d/mysqld start
2.3 给从库记录主从复制验证信息

2.4启动从库主从复制开关,并查看复制状态


导致lave_IO_Running 为connecting 的原因主要有以下 3 个方面:网络不通;
密码不对;pos不对
经排查是秘密输错了,再次>show slave status\G;

Mysql数据库主从复制搭建的更多相关文章
- mysql数据库主从复制部署笔记
主从复制是mysql中数据库实时同步的一个常用做法了,今天我来给各位介绍一下关于mysql数据库主从复制部署一个过程,希望此例子对各位同学参考参考. 数据库主从复制原理: 数据库的主从复制就是从mas ...
- ubuntu 下 mysql数据库的搭建 及 数据迁移
1.mysql的安装 我是使用apt-get直接安装的 :sudo apt-get install mysql-server sudo apt-get install mysql-client 2.配 ...
- MySQL 数据库主从复制架构
前文<MySQL 数据库事务与复制>分析了 MySQL 复制过程中如何保证 binlog 和事务数据之间的一致性,本文进一步分析引入从库后需要保证主从的数据一致性需要考虑哪些方面. 原生复 ...
- mysql数据库主从复制教程
mysql主从复制教程 架构规划: 192.168.201.150 master 主节点 192.168.201.154 slave 从节点 1. 修改mysql的配置文件(主节点,从节点都要修改) ...
- 怎样解决MySQL数据库主从复制延迟的问题---流行网站的解决办法(转载)
像Facebook.开心001.人人网.优酷.豆瓣.淘宝等高流量.高并发的网站,单点数据库很难支撑得住,WEB2.0类型的网站中使用MySQL的 居多,要么用MySQL自带的MySQL NDB Clu ...
- MySQL数据库主从复制
一.MySQ主从复制(主库写入数据,从库读取数据) MySql官方下载地址:http://dev.mysql.com/downloads/mysql/ MySql常用命令: 设置密码 UPDATE U ...
- mysql数据库主从搭建
一.最近一直在学习mysql的东西,刚好看到mysql如何搭建主从数据库,搜集了很多资料后大致了解了mysql主从复置的原理.以下是我的理解: 举例master为主数据库,slave为从数据库. sl ...
- MySQL数据库主从复制实践
MySQL 主从(MySQL Replication),主要用于 MySQL 的实时备份.高可用HA.读写分离.在配置主从复制之前需要先准备 2 台 MySQL 服务器. 一.MySQL主从原 ...
- 怎样解决MySQL数据库主从复制延迟的问题
像Facebook.开心001.人人网.优酷.豆瓣.淘宝等高流量.高并发的网站,单点数据库很难支撑得住,WEB2.0类型的网站中使用MySQL的居多,要么用MySQL自带的MySQL NDB Clus ...
随机推荐
- 关于AndroidStudio 经常弹出TortoiseSVN 同步的解决办法
我的AndroidStudio在使用时是从TortoiseSVN的文件夹下直接打开的 但是由于svn自己的特点每改一个文件就要跳出来一个svn的对话框 体验极其难受!砍人的心都有了 网上的解决办法都是 ...
- append、appendTo、prepend、prependTo、before、insertBefore、after、insertAfter、replaceAll方法被调用后,原本在页面上显示的元素会消失
详细描述: $ele.append..appendTo..prepend..prependTo..before..insertBefore..after..insertAfter..replaceAl ...
- vue-router中query和params传参(接收参数)以及$router、$route的区别
query传参: this.$router.push({ path:'/...' query:{ id:id } }) 接收参数:this.$route.query.id params传值: 传参: ...
- redis可执行文件说明
redis-server :redis服务器 redis-cli :redis命令客户端 redis-benchmark :redis性能压测工具 redis-check-dump ...
- 命令行听歌http://www.linuxsir.org/bbs/thread280142.html?pageon=1#1584689
在纯字符界面下听歌 利用 play 命令可以在命令行中播放音频文件,在纯字符界面下也没问题! ----------------------------------------------------- ...
- shell脚本结构
echo $? 代表上一次命令的状态返回值,‘0’则代表为真<执行成功>,‘非零’则代表为假<执行失败>. shell脚本: <判断老男孩的年纪> [root@bo ...
- 【深入理解Java集合框架】红黑树讲解(上)
来源:史上最清晰的红黑树讲解(上) - CarpenterLee 作者:CarpenterLee(转载已获得作者许可,如需转载请与原作者联系) 文中所有图片点击之后均可查看大图! 史上最清晰的红黑树讲 ...
- [Leetcode 15]三数之和 3 Sum
[题目] Given an array nums of n integers, are there elements a, b, c in nums such that a + b + c = 0? ...
- java 打包 war包
接下来,执行jar命令,格式为: jar cvf cmd.war . 打包文件名称 要打包的目录 打包文件保存路径 解压: jar xvf cmd.war
- «面向对象程序设计(java)»第三周学习总结 周强 201771010141
实验目的与要求 (1)进一步掌握Eclipse集成开发环境下java程序开发基本步骤: (2)熟悉PTA平台线上测试环境: (3)掌握Java语言构造基本程序语法知识(ch1-ch3): (4)利用已 ...