zoukankan      html  css  js  c++  java
  • Mysql集群讲解(四) 一主多从环境搭建

                                       Mysql集群讲解(四)

     一主多从环境搭建:

             A:环境配置(#号后内容记得删除)

    配置主从MySQL配置文件my.cnf

    主(3307)里面加入

    log-bin=mysql-bin     #表示启用二进制日志

    server-id=3307        #表示server编号,编号要唯一

    从(3308)里面加入

    server-id=3308        #表示server编号,编号要唯一

    从(3309)里面加入

    server-id=3309        #表示server编号,编号要唯一

    从(3310)里面加入

    server-id=3310        #表示server编号,编号要唯一

    这里把3307数据库当作主

      文件如下:

    [client]

    port        = 3307

    socket      = /usr/local/mysql-5.7.18/data/3307/mysql.sock

    default-character-set=utf8

    [mysqld]

    port    = 3307

    socket  = /usr/local/mysql-5.7.18/data/3307/mysql.sock

    datadir = /usr/local/mysql-5.7.18/data/3307

    log-error = /usr/local/mysql-5.7.18/data/3307/error.log

    pid-file = /usr/local/mysql-5.7.18/data/3307/mysql.pid

    character-set-server=utf8

    lower_case_table_names=1

    autocommit = 1

    ### Master Slave ###

    log-bin=mysql-bin

    server-id=3307

               其余3308 3309 3310作为从配置类似如下

    [client]

    port        = 3308

    socket      = /usr/local/mysql-5.7.18/data/3308/mysql.sock

    default-character-set=utf8

    [mysqld]

    port    = 3308

    socket  = /usr/local/mysql-5.7.18/data/3308/mysql.sock

    datadir = /usr/local/mysql-5.7.18/data/3308

    log-error = /usr/local/mysql-5.7.18/data/3308/error.log

    pid-file = /usr/local/mysql-5.7.18/data/3308/mysql.pid

    character-set-server=utf8

    lower_case_table_names=1

    autocommit = 1

    server-id=3308

    B:服务启动:

    进入/usr/local/mysql-5.7.18/bin目录,重启四个MySQL服务,启动时指定配置文件启动:

    ./mysqld_safe --defaults-file=/usr/local/mysql-5.7.18/data/3307/my.cnf &

    ./mysqld_safe --defaults-file=/usr/local/mysql-5.7.18/data/3308/my.cnf &

    ./mysqld_safe --defaults-file=/usr/local/mysql-5.7.18/data/3309/my.cnf &

    ./mysqld_safe --defaults-file=/usr/local/mysql-5.7.18/data/3310/my.cnf &

    C:设置主从关系:

    1、在主服务器上创建复制数据的账号并授权:

    grant replication slave on *.* to 'copy'@'%' identified by '123456';

    2、建议重置一下主服务状态,执行命令:reset master;

    3、在主服务器上执行命令,获取主服务器二进制binlog坐标(二进制文件名和坐标值在后面会用到):

    show master status;

      在从服务器上执行命令,设置从服务器的master

    4、(别小看这两个命令 如果中间配置错误 可以用这个命令清除配置)

    建议配置时执行:

    stop slave;

    reset slave;

    5、(端口号用自己的:如果配置出错 请执行4操作)

    change master to master_host='192.168.91.135',master_user='copy',

    master_port=3307,master_password='123456',

    master_log_file='mysql-bin.000001',master_log_pos=154;

    6、start slave;  启动操作

    D:主从验证:

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

    mysql> show slave status G

    Slave_IO_Running和Slave_SQL_Running为YES,就是正常状态。

    在主服务器上创建数据库、表、数据,然后在从服务器上查看是否已经复制

     以上操作过程显示正常,则主从服务器配置完成;

  • 相关阅读:
    CentOS7升级系统内核
    ASP.NET MVC控制器里捕获视图的错误验证信息(ErrorMessage)
    Android Studio小技巧
    ASP.NET 预编译笔记
    EnyimMemcached(64位)使用实例
    SQL Server Profiler小技巧——筛选请求
    [疑难杂症]解决实际开发中各种问题bug
    [整理]EF6.X更新了什么(版本历史中文版)
    史上最全的ASP.NET MVC路由配置,以后RouteConfig再弄不懂神仙都难救你啦~
    微信开发调试小工具进化→微信用户发送信息模拟器发布!——这标题起真是好数码暴龙的说
  • 原文地址:https://www.cnblogs.com/liudongdong666666/p/7816659.html
Copyright © 2011-2022 走看看