zoukankan      html  css  js  c++  java
  • my03_使用空数据库搭建Mysql主从复制


    无数据的主从复制,就搭建一套主从结构的空库,这个是最简单的,先说说这种主从的搭建思路,有利于理解Mysql主从复制
    1. 安装两套mysql单实例数据库,一个作为主库、一个作为从库;注意要设置两个数据库server-id不同。

    2. 主库添加一个用户并授予复制slave的权限,从库会连接到主库的该用户,把数据取回去,然后在自己的库上执行
    grant replication slave on *.* to 'bak'@'10.168.21.%' identified by 'rootroot';
    flush privileges;

    3. 在从库上设置复制的起点,即设置从主库上的哪个binlog的哪个pos开始拉取数据

    由于主库是空库,即没有数据,可以直接在主库查看一下master status,然后以此为起点即可,注意这里并没有像通常那样”将主库的数据备份,然后在从库上恢复“,没有必要
    mysql> show master status;
    +------------------+----------+--------------+------------------+-------------------+
    | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
    +------------------+----------+--------------+------------------+-------------------+
    | mysql-bin.000001 | 150 | | | |
    +------------------+----------+--------------+------------------+-------------------+
    1 row in set (0.01 sec)

    从库上的复制起点
    CHANGE MASTER TO
    MASTER_HOST='10.168.21.186',
    MASTER_USER='bak',
    MASTER_PASSWORD='rootroot',
    MASTER_PORT=3313,
    MASTER_LOG_FILE='mysql-bin.000001',
    MASTER_LOG_POS=150,
    MASTER_CONNECT_RETRY=10;

    如果忘记这一串命令怎么写,可以数据库中打以下命令,然后回车,就能看到命令的提示

    mysql> ? change master to

    4. 从库启动slave进程
    start slave;
    show slave statusG;

    回顾总结

    回顾一下,复制的关键点在于
    主库上要创建一个用于复制的用户,记住 “replication slave”这个权限
    从库要正确设置复制的起点,记住“? change master to”可以得到设置复制起点命令的提示
    这样就可以建立一条从主库到从库的复制链路,以逻辑的方式在从库上进行SQL重演,以实现复制的功能。

  • 相关阅读:
    CDQZ Day5
    CDQZ Day4
    CDQZ Day3
    POJ 2226 Muddy Fields
    【其他】【生成图片】【1】通过phantomjs 进行页面截图
    【Redis】【1】一些报错处理
    【Java】【15】判断url对应的图片是否存在
    【HTML&CSS】【3】点击直接发送邮件
    【微信公众号开发】【16】遇到的问题
    【Oracle】【9】取前N条记录——rownum和row_number() over()的使用
  • 原文地址:https://www.cnblogs.com/perfei/p/9358981.html
Copyright © 2011-2022 走看看