MST

星途 面试题库

面试题:MariaDB复制配置中主从服务器的关键参数设置

在MariaDB复制配置中,主服务器和从服务器分别需要设置哪些关键参数?请详细说明每个参数的作用及配置方法。
43.8万 热度难度
数据库MariaDB

知识考点

AI 面试

面试题答案

一键面试

主服务器关键参数

  1. server-id
    • 作用:唯一标识MySQL/MariaDB服务器实例,在复制拓扑中每个服务器的ID必须不同。
    • 配置方法:在MariaDB配置文件(通常是my.cnfmy.ini)的[mysqld]部分添加或修改server-id = [唯一数字],例如server-id = 1
  2. log-bin
    • 作用:启用二进制日志记录,记录数据库的所有更改操作,这些日志是主从复制的基础,从服务器通过读取这些日志来同步数据。
    • 配置方法:在[mysqld]部分添加log-bin=[日志文件名前缀],例如log-bin=mysql-bin
  3. binlog-format
    • 作用:指定二进制日志的格式,常见格式有STATEMENT(基于SQL语句记录)、ROW(基于行记录)和MIXED(混合模式)。不同格式在数据一致性、性能等方面有差异。
    • 配置方法:在[mysqld]部分添加binlog-format=[格式类型],例如binlog-format=ROW
  4. sync-binlog
    • 作用:控制二进制日志刷新到磁盘的频率。0表示由操作系统决定刷新时间;1表示每次事务提交都刷新,能保证数据安全性但可能影响性能;大于1的值表示累积多少次事务提交后刷新。
    • 配置方法:在[mysqld]部分添加sync-binlog=[数字],例如sync-binlog=1

从服务器关键参数

  1. server-id
    • 作用:和主服务器一样,唯一标识服务器实例,且不能与主服务器及其他从服务器重复。
    • 配置方法:在[mysqld]部分添加server-id = [唯一数字],例如server-id = 2
  2. relay-log
    • 作用:从服务器用于记录从主服务器接收到的二进制日志事件的中继日志,用于从服务器重放日志以同步数据。
    • 配置方法:在[mysqld]部分添加relay-log=[中继日志文件名前缀],例如relay-log=mysql-relay-bin
  3. relay-log-index
    • 作用:指定中继日志索引文件,记录当前正在使用的中继日志文件以及已经处理到日志文件中的哪个位置。
    • 配置方法:在[mysqld]部分添加relay-log-index=[中继日志索引文件名],例如relay-log-index=mysql-relay-bin.index
  4. read-only
    • 作用:设置从服务器为只读模式,防止在从服务器上意外写入数据,确保数据一致性。
    • 配置方法:在[mysqld]部分添加read-only = 1 。但超级用户(如root)仍然可以执行写操作。