zoukankan      html  css  js  c++  java
  • mysql主从复制配置

    思路:在主服务上建立2进制日志,每产生语句或磁盘变化就写进日志,我们可以通过主服务器设置一个账号,

    修改下my.cnf配置文件来让从服务器建立relaylog,这个时候主服务器创建一个slave账号,在从服务器上

    都过语句连接主服务器,开启复制功能实现主从复制。

    /usr/libexec/mysqld --skip-grant-tables 检测密码权限的取消(关闭mysql进入需要账号)

     mysql两台服务器创建主从复制配置过程:
     本人虚拟机下有两台linux,ip为199,200
    1:200做从服务器
    2:199做为主服务器
    3:保证主从3306端口互通

    4:配置主服务器打开binlog

            编辑my.cnf
            #给服务器起一个唯一的id
            server-id=199
           #binary log 开启二进制日志
            log-bin=mysql-bin
            #statement row mixed
            #指定日志格式
            binlog-format=mixed/row/statement
            说明:主服务器的日志格式有statement,row,mixed3种,其中mixed是指前两种的混合
            row:一般只影响一行的用row比较好
            statement:语句时针对数据库每一行的,反映在磁盘上的很多row都发生了变化,此处适合就statement格式
            mixed:2种形式都支持的一种混合格式

            重启mysql
            show master status;//查看下master是否已经充当了主服务器

    5:配置从服务器

        
        #relay log 从服务器中继日志

        relay-log=mysql-relay
        服务器id
        server-id=200
        #指定只读
        read-only=1
        重启服务器

    6:在主服务上创建一个slave账号

    grant repliaction slave,replication client on *.*
    to 'repl'@'192.168.%.%' identified by 'repl';
    //刷新mysql权限
    flush privileges;

    7:在从服务器通过语句指定要复制的服务器(注意:可以一主多从,不可以一从多主)
    ->change master to 
    ->master_host='192.168.0.199',
    ->master_user='repl',
    ->master_password='repl',
    ->master_log_file='mysql-bin.000003',
    ->master_log_pos=278;

    8:在从服务器上启动复制
    ->start slave;
    ->show  slave status;查看slave的状态

    9:可以在主服务器上操作数据库看从服务器数据库是否有复制成功

    常用语句
    show master status;查看master的状态,尤其是当前的日志及位置
    show  slave status;查看slave的状态
    reset slave;重置slave状态
    start slave;启动slave状态(开始监听master的变化)
    stop slave;暂停slave状态 





  • 相关阅读:
    4.一对多关联映射
    3.一对一关联映射
    1.Hibernate框架
    19。数据库技术及分页
    18.文件的上传和下载
    17.JavaMail
    16.部署描述符文件
    15.Servlet程序结构与部署
    dba-查询sql耗时
    (72)C# 特性
  • 原文地址:https://www.cnblogs.com/lisqiong/p/5685889.html
Copyright © 2011-2022 走看看