mysql主从复制

怎么安装mysql数据库,这里不说了,只说它的主从复制,步骤如下:

1、主从服务器分别作以下操作:
  1.1、版本一致
  1.2、初始化表,并在后台启动mysql
  1.3、修改root的密码

2、修改主服务器master:
   #vi /etc/my.cnf
       [mysqld]
       log-bin=mysql-bin   //[必须]启用二进制日志
       server-id=222      //[必须]服务器唯一ID,默认是1,一般取IP最后一段

3、修改从服务器slave:
   #vi /etc/my.cnf
       [mysqld]
       log-bin=mysql-bin   //[不是必须]启用二进制日志
       server-id=226      //[必须]服务器唯一ID,默认是1,一般取IP最后一段

4、重启两台服务器的mysql
   /etc/init.d/mysql restart

5、在主服务器上建立帐户并授权slave:
   #/usr/local/mysql/bin/mysql -uroot -pmttang   
   mysql>GRANT REPLICATION SLAVE ON *.* to 'mysync'@'%' identified by 'q123456'; //一般不用root帐号,“%”表示所有客户端都可能连,只要帐号,密码正确,此处可用具体客户端IP代替,如192.168.145.226,加强安全。

6、登录主服务器的mysql,查询master的状态
   mysql>show master status;
   +------------------+----------+--------------+------------------+
   | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
   +------------------+----------+--------------+------------------+
   | mysql-bin.000004 |      308 |              |                  |
   +------------------+----------+--------------+------------------+
   1 row in set (0.00 sec)
   注:执行完此步骤后不要再操作主服务器MYSQL,防止主服务器状态值变化

7、配置从服务器Slave:
   mysql>change master to master_host='192.168.145.222',master_user='mysync',master_password='q123456',
         master_log_file='mysql-bin.000004',master_log_pos=308;   //注意不要断开,308数字前后无单引号。

Mysql>start slave;    //启动从服务器复制功能

8、检查从服务器复制功能状态:

mysql> show slave status\G

*************************** 1. row ***************************

Slave_IO_State: Waiting for master to send event
              Master_Host: 192.168.2.222  //主服务器地址
              Master_User: mysync   //授权帐户名,尽量避免使用root
              Master_Port: 3306    //数据库端口,部分版本没有此行
              Connect_Retry: 60
              Master_Log_File: mysql-bin.000004
              Read_Master_Log_Pos: 600     //#同步读取二进制日志的位置,大于等于Exec_Master_Log_Pos
              Relay_Log_File: ddte-relay-bin.000003
              Relay_Log_Pos: 251
              Relay_Master_Log_File: mysql-bin.000004
              Slave_IO_Running: Yes    //此状态必须YES
              Slave_SQL_Running: Yes     //此状态必须YES
                    ......

注:Slave_IO及Slave_SQL进程必须正常运行,即YES状态,否则都是错误的状态(如:其中一个NO均属错误)。

以上操作过程,主从服务器配置完成。
  
9、主从服务器测试:

主服务器Mysql,建立数据库,并在这个库中建表插入一条数据:

mysql> create database hi_db;
  Query OK, 1 row affected (0.00 sec)

mysql> use hi_db;
  Database changed

mysql>  create table hi_tb(id int(3),name char(10));
  Query OK, 0 rows affected (0.00 sec)
 
  mysql> insert into hi_tb values(001,'bobu');
  Query OK, 1 row affected (0.00 sec)

mysql> show databases;
   +--------------------+
   | Database           |
   +--------------------+
   | information_schema |
   | hi_db                |
   | mysql                |
   | test                 |
   +--------------------+
   4 rows in set (0.00 sec)

从服务器Mysql查询:

mysql> show databases;

+--------------------+
   | Database               |
   +--------------------+
   | information_schema |
   | hi_db                 |       //I'M here,大家看到了吧
   | mysql                 |
   | test          |

+--------------------+
   4 rows in set (0.00 sec)

mysql> use hi_db
   Database changed
   mysql> select * from hi_tb;           //查看主服务器上新增的具体数据
   +------+------+
   | id   | name |
   +------+------+
   |    1 | bobu |
   +------+------+
   1 row in set (0.00 sec)

10、完成:
    编写一shell脚本,用nagios监控slave的两个yes(Slave_IO及Slave_SQL进程),如发现只有一个或零个yes,就表明主从有问题了,发短信警报吧。

转载于:https://www.cnblogs.com/zhanghaiyang/p/7213159.html

Mysql学习总结(14)——Mysql主从复制配置相关推荐

  1. mysql5.7.17.zip教程,Mysql学习win10下mysql 5.7.17 zip压缩包版安装教程

    搜索热词 <MysqL学习win10下MysqL 5.7.17 zip压缩包版安装教程>要点: 本文介绍了MysqL学习win10下MysqL 5.7.17 zip压缩包版安装教程,希望对 ...

  2. MySQL学习笔记 | 04 - MySQL数据库基本操作(增加、修改、删除、查看)

    MySQL学习笔记 | 01-为什么要使用数据库 MySQL学习笔记 | 02 - MySQL在Windows下的安装.配置.服务启动/停止.用户登录.查看版本号 MySQL学习笔记 | 03 - M ...

  3. MySQL学习(二)【MySQL数据库对象与应用】

    2.1-MySQL数据类型 Number不止一种 整形 浮点型 整形 INT SMALLINT MEDIUMINT BIGINT type Storage Minumun Value Maximum ...

  4. MySQL学习笔记:MySQL管理

    文章目录 一.准备工作 1.查看MySQL安装目录 2.启动MySQL服务 二.MySQL数据库管理 1.查看数据库 2.创建数据库 3.显示数据库创建信息 4.使用数据库 5.显示当前打开的数据库 ...

  5. 【MySQL学习】认识MySQL数据库

    目录 一.什么是数据库 二.主流数据库 三.MySQL数据库的基本使用 3.1 MySQL的安装 3.2 MySQL服务器管理 3.3 连接MySQL服务器 3.4 MySQL服务器,数据库与表之间的 ...

  6. mysql主从有关参数_mysql主从复制配置

    一.mysql主从备份(复制)的基本原理 mysql支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.mysql复制基于主服务器在二进制日志中跟踪所有对数据库的 ...

  7. mysql学习笔记14 多表查询初步

    对数据分组的总结 举例:统计各个部门的平均工资,并且是大于1000的,并且按照平均工资从高到底排序 mysql> select avg(stsal) as myavgsal, stdepno f ...

  8. MySQL学习笔记之MySQL安装详解

    前言 虽然现在NoSQL发展迅速,但MySQL还是非常受欢迎的,成千上万的公司依旧采用LAMP OR LNMP的搭配来进行开发,因此MYSQL的学习还是有一定的必要. 安装环境:Windows 7,需 ...

  9. MySQL学习四:MySQL双主双从

    文章目录 一.MySQL双主双从配置开启二进制日志 二.[配置每一台MySQL服务器的配置文件my.cnf](https://blog.csdn.net/huiguo_/article/details ...

  10. 高性能MySQL学习笔记(1) —— MySQL架构

    MySQL架构 1.MySQL逻辑架构: 这里分为三层: 1.连接层:连接与线程处理,这一层并不是MySQL独有,一般的基于C/S架构的都有类似组件,比如连接处理.授权认证.安全等. 2.SQL处理层 ...

最新文章

  1. 第一次作业:阅读优秀博文谈感想
  2. Linux编程——入门级Makefile文件编写
  3. 知识图谱基础知识之四——知识图谱的典型应用
  4. java期末考试试卷及答案文库_备战期末考!初中全科下册期末试卷(含答案)合集,建议收藏!...
  5. Android 安全专项-Xposed 劫持用户名密码实践
  6. java整形怎么转字符串型_java整型与字符串互转
  7. edittext怎么输入默认内容覆盖_Linux Shell 输入与输出重定向
  8. vanilla_如何在Vanilla JavaScript中操作DOM
  9. 【UVA - 10038】Jolly Jumpers (模拟,水题,标记)
  10. html marquee初始空白_前端开发必会的HTML/CSS硬知识
  11. 东南大学计算机网络_【20考研】东南大学计算机考研分数统计
  12. python画曲线图-python绘制多个曲线的折线图
  13. 用ES6 Generator替代回调函数
  14. 【OpenCV入门指南】第三篇Canny边缘检测
  15. mysql 四种隔离级别
  16. css3橙色球形_CSS3橙色的星球绕轨道公转动画_html/css_WEB-ITnose -
  17. PYNQ-Z1 资源分析
  18. 淘宝直播2020年GMV4000亿,直播电商第一梯队出位还是出局?
  19. | 名师博客 | 地址 |
  20. 什么是机器语言,汇编语言,高级语言?C 语言有什么特点(优点)?

热门文章

  1. Java中是否可以继承String类,为什么
  2. 打印当前时间 毫秒_时间轮定时器
  3. 判断某值是否属于枚举类中的值_编写高质量可维护的代码之优化逻辑判断
  4. 层 数据仓库_数据仓库的架构是什么样的,大家可以通过这篇文章了解一下
  5. 压缩文件夹_怎样压缩文件夹并发送
  6. MySQL知识梳理与命令操作
  7. 电动双联电位器ZW1613
  8. HCTL-2020正交码读写芯片
  9. 测试STC8H8K64U-AD转换
  10. 判断一个list集合是否为空,用isEmpty 还是 null?