zoukankan      html  css  js  c++  java
  • Mysql主从同步

    数据文件 /var/lib/mysql/

    配置文件 /etc/my.conf

    日志文件 /var/log/mysql.log

      

    【主库】

    停止mysql服务

    service mysqld  stop

    编辑配置文件

    vim   /etc/my.conf

    [mysqld]

    ##定义binlog的前缀

    log_bin=mysql-bin

    ##定义binlog的模式

    bin_log_format=row

    ##定义唯一值

    server-id=130

    启动mysql服务

    service mysqld  start

    这时可以在/var/lib/mysql目录看到以mysql-bin开头的文件

     

    【从库】

    [mysqld]

    server-id=60

    relay-log=slave-relay-bin

    relay-log-index=slave-relay-bin.index

    read_only=1

    执行同步

    mysql> stop  slave;

    Mysql > change master to master_host='192.168.101.130', master_port=3306  , master_user='repl', master_password='repl', master_log_file='mysql-bin.000001', master_log_pos=154;

    mysql> start slave;

     ===============================================================================================================

    binlog日志的模式有三种(默认是row模式)

    1 statement模式  基于sql语句,缺点是当有函数假如uuid时,两边的数据不一致

    2 row模式  记录数据更新前和更新后的值,缺点是记录的数据量比较大

    3 mixed模式  由mysql自动决定采用哪种模式

    如何处理主从同步的延时问题

    因为是异步写binlog的,所以延时是一定存在的

    在应用层写主库时,放在redis中,查询从redis中取,redis中取不到,再从从库中取

  • 相关阅读:
    REYES is working now!
    New Caching Mechanism
    Minimum Platform Requirements
    Multithreading Problem with Max SDK
    Bezier Triangles and NPatches
    elvish ray 0.5 beta History
    1.md
    Linux时间同步.md
    好久没写东西了
    从java到c# .net的转变(1)
  • 原文地址:https://www.cnblogs.com/moris5013/p/10828507.html
Copyright © 2011-2022 走看看