转:简单的Mysql主从复制设置

步骤如下:

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

2、修改主服务器master:

  #vim /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
    我的重启方式是:

#service mysqld restart

5、在主服务器上建立帐户并授权slave:

 #/usr/local/mysql/bin/mysql -uroot -p123456
   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)

文章引自:http://369369.blog.51cto.com/319630/790921/

时间: 2024-07-29 11:17:24

转:简单的Mysql主从复制设置的相关文章

源码安装mysql5.6.20&&mysql主从设置(多实例做多个主从)

一.源码安装mysql5.6.20 1.编译环境安装 yum install wget gcc* make openssl openssl-devel openssl-clients -y && yum groupinstall "Development Libraries" -y 2.源码下载(软件见Linux部署源码包) wget -P /usr/local/src/ http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.

Mysql主从复制原理过程

1.自个画的流程图. 2.简单描述mysql主从复制原理过程 2.1(对应上图步骤1) 在SLAVE服务器上执行start slave命令开启主从复制开关,开始进行主从复制. 2.2(对应上图步骤2) 此时,SLAVE服务器的I/O线程会通过在MASTER上已经授权的复制用户权限请求连接MASTER服务器,并请求从指定binlog日志文件的指定位置(日志文件名和位置就是在配置主从配置复制服务时执行change master命令指定的)之后开始发送binlog日志内容. 2.3(对应上图步骤3)

mysql主从复制(超简单)

一般来说都是通过 主从复制(Master-Slave)的方式来同步数据,再通过读写分离(MySQL-Proxy)来提升数据库的并发负载能力 这样的方案来进行部署与实施的. 首选先来大概说一下安装mysql的步骤 (可以yum安装  也可以编译安装,在这里我就用yum安装为例) 查看是否安装mysql mysql-server yum list installed mysql* 如果还没安装接着安装mysql mysql-server 查看是否有安装包 yum list mysql* 安装mysq

mysql主从复制概述以及配置mysql5.7.10实现简单主从复制

什么是主从复制: 通过将Mysql的某一台主机的 数据复制到其它主机,复制过程中一个服务器充当主服务器(master),而一个或多个其它服务器充当从服务器(slave).进行复制时,所有对数据表的写操作必须在主服务器上进行.否则,因为主服务器不会同步从服务器的数据,会导致主从数据不一致的问题.mysql的主从复制功能是构建高性能大型应用服务器的基础 主从复制的作用: 1.辅助实现数据的备份 2.实现数据服务的高可用和异地容灾 3.实现多个服务器分摊负载 主从复制的实现原理: 实现整个复制过程主要

MySql主从复制简单案例实现

mysql的主从复制原理 在mysql主从复制架构中,有一台服务器作为MASTER服务器,该服务器负责所有的读请求和写请求.另外一台或多台作为slave服务器.当master上的某个应用程序发起写请求时,该请求会被内核响应并在内核中执行,然后在将其数据写入到磁盘中去.并且将此次的操作以事件的形式记录到二进制文件中去.此时master上的Binlog  dump thread等待slave上的I/O thread连接请求.一旦slave I/O thread连接上了master的Binlog du

实现MySQL主从复制、双主模型的简单案例

写在前面:如果此文有幸被某位朋友看见并发现有错的地方,希望批评指正.如有不明白的地方,愿可一起探讨. MySQL复制的基本原理 MySQL复制解决的基本问题 让一台MySQL服务器的数据与其他MySQL服务器的数据保持同步. MySQL复制的工作原理 MySQL复制的工作原理图如下所示(图来自高性能MySQL第3版) MySQL主从复制的基本步骤: 1.启动主库上的二进制文件,并把数据更改记录到二进制日志中: 2.备库将主库上的二进制日志复制到自身的中继日志中: 3.备库读取自身的中继日志中的事

浅谈mysql主从复制的高可用解决方案

1.熟悉几个组件(部分摘自网络)1.1.drbd     —— DRBD(Distributed Replicated Block Device),DRBD号称是 "网络 RAID",开源软件,由 LINBIT 公司开发.DRBD 实际上是一种块设备的实现,主要被用于Linux平台下的高可用(HA)方案之中.他是有内核 模块和相关程序而组成,通过网络通信来同步镜像整个设备,有点类似于一个网络RAID的功能.也就是说当你将数据写入本地的DRBD设备上的文件系统 时, 数据会同时被发送到网

mysql主从复制--mysql-5.5异步、半同步配置

背景介绍 mysql5.5之前版本,mysql主从复制比较简单 mysql5.6:gtid,multi-thread replication master 1 启用二进制日志 log-bin = master-bin log-bin-index = master-bin.index 2 选择一个唯一的server id server-id = [0~2^32] 3 创建具有复制权限的用户 replication slave,复制的从节点 replication client,联系master,获

MySQL - 主从复制及读写分离原理

1.MySQL主从复制与读写分离原理 首先,我们看一个图: 影响MySQL-A数据库的操作,在数据库执行后,都会写入本地的日志系统A中. 假设,实时的将变化了的日志系统中的数据库事件操作,在MYSQL-A的3306端口,通过网络发给MYSQL-B. MYSQL-B收到后,写入本地日志系统B,然后一条条的将数据库事件在数据库中完成. 那么,MYSQL-A的变化,MYSQL-B也会变化,这样就是所谓的MYSQL的复制,即MYSQL replication. 在上面的模型中,MYSQL-A就是主服务器