一,先装mysql

准备两台服务器,主服务器是10.0.0.200  副服务器是10.0.0.128
主服务器当作mysql的服务端,下载mysql-server
yum install mysql-server
副服务器当作mysql的客户端,下载mysql
yum install mysql

服务端

service mysqld start  # 启动服务
mysql -uroot -p # 登陆
#密码为空,直接回车就登陆进来了
show database; # 显示库
create user 'xiaoming'@'10.0.0.128' identified by '123456'; # 新建用于同步的账号xiaoming,允许同步的从库地址是10.0.0.128,密码是123456
create user 'xiaoming'@'%' identified by '123456'; # 新建用于同步的账号xiaoming,允许所有从库登陆,密码是123456
flush privileges; # 立即刷新

客户端  从库

mysql -uroot -p -h10.0.0.200  # 登陆mysql服务端
123456 # 紧接着输入密码
# 然后就登陆进来了

二,mysql主从复制配置

原理:主库里面执行sql语句(data changes),数据变动之后,它会将这些变动存到自己的日志(binary log)里面去,里面村的二进制。然后日志内容交给从库,从库就从这些二进制中读取变动,然后将这些变动写入自己的日志(Realy log),然后从库将这些变动转化为sql语句并执行sql语句。这样就完成了数据同步的作用。

2.1 主库添加配置

# 在根目录,不在mysql中
vim /etc/my.cnf # mysql服务端配置默认在根目录里的etc里面的一个my.cnf文件里面
# 添加到[mysqld]的下面
server-id=1
log-bin=mysql-bin # 日志,注意名字不固定,可以叫mysql-s,就是通过这个配置,实现了写入日志的功能
# 然后保存退出
service mysqld restart # 重启mysql服务端

2.2 主库添加从库账号,要通过一个账号同步

create user 'xiaoming'@'10.0.0.128' identified by '';  # 新建用于同步的账号xiaoming,允许同步的从库地址是10.0.0.128,密码是123456
grant replication slave on *.* to 'xiaoming'@'10.0.0.128'; # 远程授权授权给地址为10.0.0.128的xiaoming账号的所有库所有表

2.3 查询主库的状态

show master status;
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 | 370 | | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
mysql-bin.000001这个文件就是主库里面的Binary log日志文件
File是二进制日志文件名,Position 是日志开始的位置。后面从库会用到 后面从库会用到 后面从库会用到!

change master to master_host='10.0.0.200',
master_user='xiaoming',
master_password='123456',
master_log_file=mysql-bin.000001',

master_log_pos=370;

MySQL主从同步技术的更多相关文章

  1. Linux 安装mysql,mariadb,mysql主从同步

    myariadb安装 centos7 mariadb的学习 在企业里面,多半不会使用阿里云的mariadb版本,因为版本太低,安全性太低,公司会配置myariadb官方的yum仓库 1.手动创建mar ...

  2. 监控mysql主从同步状态

    在高并发网站架构中,MySQL数据库主从同步是不可或缺的,不过经常会发生由于网络原因或者操作错误,MySQL主从经常会出现不同步的情况,那么如何监控MySQL主从同步,也变成网站正常运行的重要环节. ...

  3. 监控mysql主从同步

    1,昨天看到shell一道面试题,需求如下: 监控MySQL主从同步是否异常,如果异常,则发送短信或者邮件给管理员.提示:如果没主从同步环境,可以用下面文本放到文件里读取来模拟:阶段1:开发一个守护进 ...

  4. shell脚本监控MySQL主从同步

    企业面试题1:监控MySQL主从同步是否异常,如果异常,则发送短信或者邮件给管理员. 阶段1:开发一个守护进程脚本每30秒实现检测一次. 阶段2:如果同步出现如下错误号(1158,1159,1008, ...

  5. 监控mysql主从同步状态是否异常

    监控mysql主从同步状态是否异常,如果异常,则发生短信或邮寄给管理员 标签:监控mysql主从同步状态是否异常 阶段1:开发一个守护进程脚本每30秒实现检测一次. 阶段2:如果同步出现如下错误号(1 ...

  6. 用shell脚本监控MySQL主从同步

    企业面试题1:(生产实战案例):监控MySQL主从同步是否异常,如果异常,则发送短信或者邮件给管理员.提示:如果没主从同步环境,可以用下面文本放到文件里读取来模拟:阶段1:开发一个守护进程脚本每30秒 ...

  7. 运维派 企业面试题1 监控MySQL主从同步是否异常

    Linux运维必会的实战编程笔试题(19题) 企业面试题1:(生产实战案例):监控MySQL主从同步是否异常,如果异常,则发送短信或者邮件给管理员.提示:如果没主从同步环境,可以用下面文本放到文件里读 ...

  8. 这次一定要教会你搭建Redis集群和MySQL主从同步(非Docker)

    前言 一直都想自己动手搭建一个Redis集群和MySQL的主从同步,当然不是依靠Docker的一键部署(虽然现在企业开发用的最多的是这种方式),所以本文就算是一个教程类文章吧,但在动手搭建之前,会先聊 ...

  9. MySQL主从同步、读写分离配置步骤、问题解决笔记

    MySQL主从同步.读写分离配置步骤.问题解决笔记 根据要求配置MySQL主从备份.读写分离,结合网上的文档,对搭建的步骤和出现的问题以及解决的过程做了如下笔记:       现在使用的两台服务器已经 ...

随机推荐

  1. 9.4 dubbo异步调用原理

    9.1 客户端发起请求源码.9.2 服务端接收请求消息并发送响应消息源码.9.3 客户端接收响应信息(异步转同步的实现) 分析了dubbo同步调用的源码,现在来看一下dubbo异步调用. 一.使用方式 ...

  2. 【OpenCV】OpenCV中GPU模块使用 (转)

    CUDA基本使用方法 在介绍OpenCV中GPU模块使用之前,先回顾下CUDA的一般使用方法,其基本步骤如下: 1.主机代码执行:2.传输数据到GPU:3.确定grid,block大小: 4.调用内核 ...

  3. 【ZH奶酪】为什么Python不需要函数重载?

    函数重载的作用是什么? 函数重载主要是为了解决两个问题 可变参数类型 可变参数个数 另外,一个基本的设计原则是,仅仅当两个函数除了参数类型和参数个数不同以外,其功能是完全相同的,此时才使用函数重载,如 ...

  4. 如何在WCF中用TcpTrace工具查看发送和接收的SOAP消息

    WCF对消息加密(只对消息加密,不考虑Authorize)其实很简单,只要在server和client端的binding加入security mode为Message(还有Transport, Tra ...

  5. EasyUI tabs update 正确用法

    来源:http://ewoyaofei.blog.163.com/blog/static/343562612012617111734974/ 一直以为 tabs update 是 easyui 的 b ...

  6. 如何在servlet刚启动时候获取服务器根目录?

    public class InitServlet extends HttpServlet{ public static String root; @Override public void init( ...

  7. js 检测变量是否存在

    实际开发过程中,会有判断一个变量是否存在的场景 首先想到的是 if(a==undefined){ console.log("a is undefined") }else{ cons ...

  8. netty实现多个handler顺序调用

    在netty中,一次数据交互,可以由多个handler去处理,例如 handler1 和 handler2,那么,在前面那个handler的 messageReceived 的最后要加上 ctx.se ...

  9. 【Spark 深入学习-08】说说Spark分区原理及优化方法

    本节内容 ------------------ · Spark为什么要分区 · Spark分区原则及方法 · Spark分区案例 · 参考资料 ------------------ 一.Spark为什 ...

  10. linux(mac) 编译安装MySQL

    Reference: https://blog.csdn.net/Tzhennan/article/details/80565235 官方下载地址:  https://dev.mysql.com/do ...