• MySQL主从数据库配置与原理


    1.为什么要搭建主从数据库

    (1)通过增加从库实现读写分离,提高系统负载能力

    (2)将从库作为数据库备份库,实现数据热备份,为数据恢复提供机会

    (3)根据业务将不同服务部署在不同机器同时又共享相同的数据

     2.主从数据库原理分析

     主从数据库同步流程

    步骤一:主库开启binlog日志后,会启动dump将数据数据变化写入binlog

    步骤二:从库开启slave参数后,会与主库建立一个连接

    步骤三:主库数据变化是dump线程会将变化的数据写入binlog中并将数据通过步骤二建立的连接写到从库中

    步骤四:从库接收到主库发送的binlog内容后将内容写入relay log

    步骤五:创建一个SQL线程从relay log读取数据写入到数据库中

    3.搭建流程

    以contes7系统,5.7.29版本的数据库为例

    (1)安装完数据库之后找到主库mysql服务的配置文件my.cnf,一般默认在/etc/目录下

    (2)在配置文件中的[mysqld]下增加以下两行,server-id为mysql服务唯一id,不用mysql服务不能重复,log-bin=mysql-bin为生成binlog的文件目录和文件名,也可写成log-bin=/自定义目录/mysql-bin

    server-id=1
    log-bin=mysql-bin

    (3)mysql会话输入show master status;

     (4)修改从库mysql服务配置文件,增加以下一行配置

    server-id=2

    (5)在主库会话中创建从库同步数据的账号并刷新权限,赋予slave权限到用户名为“slave”的账户上,“%”表示不限制ip,密码为“123456”

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

    (6)从库mysql会话设置要连接的主库的相关信息,设置参数与show master status查询出来的数据对应上即可

    change master to master_host='192.168.168.243',master_user='slave',master_password='123456',master_log_file='mysql-bin.000003',master_log_pos=8378;

    (7)从库开启同步功能

    start slave;

    (8)查看从库状态show slave status; 可以看到Slave_IO_Running和Slave_SQL_Running两个线程已启动

  • 相关阅读:
    ASP.NET中常用服务器端与客户端交互!
    使用WebDeployment Project改善VS2005发布网站问题 (一) 基础
    MSN改密码
    Ajax学习(一)
    Visual Studio2005 + Visual SourceSafe 2005 实现团队开发、源代码管理、版本控制
    手把手教你如何配置和编译ogre 1.7.0 + cegui 0.7.1
    What's Coming in the June 2010 DirectX SDK
    黄仁勋:相信你正在做的事。
    [转载] 翻译 西川善司著针对3D游戏爱好者的”METAL GEAR SOLID 4”图形讲座(下)
    glPushAttrib里的各个BIT都save了些什么
  • 原文地址:https://www.cnblogs.com/xiguadadage/p/12801083.html
Copyright © 2020-2023  润新知