• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

MySQL高可用系列之MHA(二)_MySQL

mysql 搞代码 4年前 (2022-01-09) 28次浏览 已收录 0个评论
文章目录[隐藏]

一.参数说明

MHA提供了一系列配置参数,深入理解每个参数的具体含义,对优化配置、合理使用MHA非常重要,很多高可用性也都是通过合理配置一些参数而实现的。
MHA包括如下配置参数,分别说明如下:
hostname/ip/port (Local Only)
hostname为MySQL Server的IP地址或主机名;
ip为MySQL Server的IP地址,缺省从$hostname中获取;port为MySQL Server的端口号,缺省为3306

ssh_host/ssh_ip/ssh_port (Local Only)
这三个参数是从版本0.53才引入的,其中ssh_host同$hostname,ssh_ip同$ip;ssh_port为SSH通信使用的系统端口号,缺省为22。

ssh_connection_timeout (Local/App/Global) SSH连接超时阀值,缺省为5秒,该参数从版本0.54开始引入。

ssh_options (Local/App/Global) 额外的SSH命令选项,该参数从版本0.53开始引入。

candidate_master (Local Only)
该参数用于设置某个Slave是否可以优先成为来&源gao@dai!ma.com搞$代^码%网Master。
若设置为1,则对应的那个Slave可优先成为新的Master;若多个Slave均设置该参数为1,则成为Master的优先级按照[server_1]/[server_2]/…排序;
缺省值为0,表示不设置某个Slave优先成为Master,即所有Slave成为Master的优先级一样,此时MHA会选择一个延迟最小的Slave成为新的Master。

no_master (Local Only)
是否禁止某个Slave成为Master,缺省值为0,表示每个Slave都有机会成为新的Master;
若设置为1,则对应的那个Slave永远不会成为Master。

ignore_fail (Local Only)
缺省情况下,当某个Slave故障时(比如:不能通过MySQL/SSH连接,SQL线程因错误停止等),MHA不开启故障切换;若设置为1,则对应的那个Slave出现故障时自动切换。

user/password (Local/App/Global)
MySQL数据库管理账户及密码,因为要执行一些必要的管理命令,比如:Stop Slave、Change Master、Reset Slave,所以该账户应该为root,这也是缺省值。

repl_user /repl_password (Local/App/Global) MySQL复制账户及密码

disable_log_bin (Local/App/Global)
若设置该参数,则在Slave应用差异日志时,自身不生成二进制日志;MHA内部是通过在调用mysqlbinlog工具命令时加参数—disable-log-bin实现的,缺省值为0。

master_pid_file (Local/App/Global) 设置Master实例的pid文件,该参数适用于一台服务器安装多个MySQL实例的情况。

ssh_user (Local/App/Global)
MHA Manager和Node访问MySQL Server所使用的OS用户,在多种情况下,都会用到该账户,比如:远程执行命令、在Slave间拷贝差异的Relay logs等。
该用户至少要拥有读取MySQL binary/relay log文件和relay_log.info文件的权限,以及日志目录的写权限(remote_workdir参数指定的路径)。
该用户不需要交互即可连接到其它服务器上,所以建议使用SSH公共密钥认证,即配置SSH等效性;缺省情况下,ssh_user为系统管理账户,即root账户。

remote_workdir (Local/App/Global)
每个MHA Node节点(运行MySQL实例的服务器)的工作目录全路径,其中会生成日志文件,缺省为/var/tmp;若路径不存在,MHA Node会自动创建,当然这需要拥有足够的权限。
注意:不管是Manager还是Node,都会检查目录的可用磁盘空间。

master_binlog_dir (Local/App/Global)
MySQL主库的binlog日志文件的全路径,缺省为/var/lib/mysql,根据实际情况设置为真实的路径。
该参数适用于这么一种情况:Master实例故障,但OS系统运行正常,此时MHA可通过SSH登录,然后读取并拷贝必须的二进制日志事件(即差异的日志)。
可见该参数是必要而有用的,因为Master死掉后,MHA无法自动获取binlog日志文件的路径。
另外,可用逗号隔开设置多个路径。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:MySQL高可用系列之MHA(二)_MySQL

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址