http://blog.csdn.net/wulantian/article/details/12503473

http://blog.csdn.net/wulantian/article/category/1578273

 

1. candidate_master     //你可以使用不同类型的机器在slaves之间,想要促进最可靠的机器到新master(即促进RAID1 + 0的slave,而不是恢复slave).
通过设置 candidate_master=1
服务器是优先到新主人,只要它符合条件的新master(即启用二进制日志,它不延迟明显等的复制)。所以 candidate_master=1
并不意味着规定主机总是变成新master,当出现主机宕机的时候,但有助于设置优先级。

如果设置 candidate_master=1 在众多的服务中,优先级排序顺序决定了由块名称([服务器xxx])。(服务器1)将有更高的优先级比[服务器2]。

2.  no_master  // 在标示的服务器上设置 no_master=1 那么,这个服务器将永远不会变成新的master,这是有用的,如果你有一些服务器,不应该成为新的master。

3. ignore_fail //默认情况下,MHA Manager不启动故障转移如果任何从属服务器失败(不能通过MySQL / SSH连接,SQL线程停止与错误等)。但在某些情况下,您可能希望继续故障转移如果只有特定从属服务器失败。通过设置 ignore_fail=1 在特定的服务器下,MHA继续故障转移虽然这些服务器失败。默认情况下,它是0。

4. check_repl_delay  // 默认情况下,如果一个slave 落后 master超过100 mb的继电器日志(=需要申请超过100 mb的中继日志),MHA不选择作为一个新主人的master,因为这需要太长时间来恢复。
通过设置 check_repl_delay=0,MHA忽略复制延迟当选择一个新master。
这个选项是有用的,当你设置candidate_master=1在一个特定的主机和你想确保主机可以新主。

5. check_repl_filter //默认情况下,如果任何master和slave有不同的二进制日志/复制过滤规则彼此,MHA打印错误和不启动监控或故障转移。
这是为了避免意外恢复错误如“表不存在”。
如果你是100%确定不同的过滤设置不导致恢复问题,设置 check_repl_filter = 0。
注意, MHA不会检查过滤规则在应用 relay log日志,所以你可能会遇到“表不存在”(或其他)错误如果你设置 check_repl_filter = 0。非常小心如果你设置这个参数。

6. latest_priority 
//默认情况下,最新的slave(一个slave接收最新binlog事件)是优先作为一种新的主人。如果你想完全控制优先秩序(即host2 -
> host3 - > host4 . .),设置latest_priority=0将帮助。详情见FAQ。

7. multi_tier_slave //从MHA
Manager0.52版本,支持多主机复制配置。默认情况下,它是不允许设置三个或三个以上层复制主机在MHA配置文件。例如,假设从各种host3
host2复制,复制从host2。默认情况下,它是不允许写各种,2、3在一个配置文件,因为它的三层复制和 MHA Manager
停止与错误。通过设置多级slave,MHA
Manager不中止与三层复制,只是忽略了第三层主机。如果各种(主)崩溃,host2将被选择为一个主、从host2 host3将继续复制。

8. ping_interval  //这个参数状态多久MHA Manager ping(执行ping
SQL语句)大师。失踪后连续三个连接的间隔,MHA
Manager决定,MySQL主死了。因此,对于发现的最长时间失败通过ping机制是四次ping间隔。默认是3(3秒)。

9. ping_type   //
(支持从0.53)在默认情况下,MHA建立持久的连接到一个master和master的可用性检查通过执行"SELECT
1"(ping_type=SELECT)。但在某些情况下,最好是检查通过连接/断开每次,因为它是更严格的和它可以检测水平更快的TCP连接失败。设
置 ping_type=CONNECT成为可能。

10. secondary_check_script //
一般来说,它是强烈建议有两个或多个网络线路检查MySQL主服务器的可用性。默认情况下,只有单一的路线 MHA
Manager检查:从Manager to
Master。但这是不可取的。MHA实际上可以有两个或两个以上的检查路线通过调用外部脚本定义二次检查脚本参数。下面是一个示例配置。
secondary_check_script = masterha_secondary_check -s remote_host1 -s remote_host2
masterha_secondary_check包含在 MHA Manager package。 内置masterha_secondary_check脚本应该没事的在大多数情况下,但是你可以叫任何脚本这里。
在上面的示例中,MHA Manager检查MySQL主服务器活动通过Manager-(A)- >远程remote_host1-(B)-
>master_host and
Manager-(A)->remote_host2-(B)->master_host.如果连接一个是成功的和不成功的在这两个航线
B,masterha_secondary_check退出并返回码为0和MHA
Manager决定,MySQL主是真的死了,将开始故障转移。如果不成功,masterha_secondary_check退出并返回码2和MHA
Manager猜测网络问题已经发生和它不启动故障转移。如果B是成功的,masterha_secondary_check退出并返回码3和MHA
Manager明白MySQL主服务器实际上是活着,不启动故障转移。
一般来说,remote_host1和remote_host2应该位于不同的网段从MHA Manager和MySQL服务器。
调用一个脚本定义MHA在二次检查脚本参数,并将以下参数自动(所以你不需要设置以下参数在配置文件中)。masterha_secondary_check应该适当的在许多情况下,但是你可以写任何网络检查脚本如果你需要更多的功能。
--user=(SSH username of the remote hosts. ssh_user parameter value will be passed)
--master_host=(master's hostname)
--master_ip=(master's ip address)
--master_port=(master's port number)

注意,内置masterha_secondary_check脚本取决于IO::Socket::INET
Perl包,它是默认包含从Perl版本5.6.0.。
masterha_secondary_check脚本也连接到远程服务器都通过SSH所以SSH公共密钥身份验证设置是必需的。此
外,masterha_secondary_check脚本试图建立TCP连接从远程服务器(设定- s)到MySQL主。
这意味着max_connections设置在my . cnf中所做不影响。 如果TCP连接成功,中止连接状态变量在主增加1。

11. master_ip_failover_script //
在常见的HA环境中,很多情况下人们分配一个虚拟IP地址在一个master。如果主崩溃,HA软件像起搏器接管虚拟IP地址到备用服务器。
另一个常见的方法是创建一个全球目录数据库
间的映射,应用程序名称和 writer/reader的IP地址(例如。{ app1_master1,192.168.0.1 },{
app_master2,192.168.0.2 },…),而不是使用虚拟IP地址。在这种情况下,您需要更新目录数据库当当前的master
dies。
这两种方法都有优点和缺点。MHA并不强迫一个方法,但允许用户使用任何IP地址故障转移的解决方案。主ip故障转移脚本参数可以用于这一目的。换句话
说,您需要编写一个脚本,以使应用程序透明地连接到 new master,必须定义在主ip故障转移脚本参数。这里是一个例子。
 master_ip_failover_script= /usr/local/sample/bin/master_ip_failover
 
一个示例脚本在(MHA Manager package)/samples/scripts/master_ip_failover。示例脚本包含在MHA Manager 打包工具和GitHub分支。
MHA Manager 调用master_ip_failover_script
三次。第一次是在进入主监视器(脚本有效性检查),第二次是在calling shutdown_script之前调用,第三次是在应用 relay
logs to new master 之后。MHA Manager 通过下面MHA参数(你不需要设置这些参数在配置文件中)。

如果你使用一个共享的虚拟IP地址在一个master,你可能不需要做任何事情在master关闭阶段,只要您关闭机器后在
shutdown_script。在新master的激活阶段,你可以指定虚拟IP的新master。如果你使用一个目录数据库的方法,您可能需要删除或
更新记录的挡掉在master的master关闭阶段。在新master的激活阶段,您可以插入/更新记录的新master。此外,你可以做一切你需要
的,这样应用程序可以编写新的master。例如, SET GLOBAL read_only=0,创建数据库用户写权限,等等。

MHA Manager检查退出代码(返回码)的脚本。如果该脚本将退出并返回码为0或10,MHA
Manager继续操作。如果该脚本将退出并返回代码除了0或10,MHA Manager中止和它不会继续故障转移。默认参数是空的,所以MHA
Manager不调用任何默认情况下。

12. master_ip_online_change_script //

这类似于主ip故障转移脚本参数,但这不是使用故障转移命令,而是通过master online change 命令(masterha_master_switch --master_state=alive)。传递参数是以下。

13. shutdown_script //
你可能想强迫关闭主服务器,以便它从来没有重新启动服务(节点拥塞)。这是重要的,以避免分裂。这里是一个例子。
shutdown_script= /usr/local/sample/bin/power_manager

14.report_script   //你可能想要发送一个报告(如电子邮件)当故障转移已经完成或结束时的错误。report_script可用于目的。MHA Manager通过以下参数。

15.init_conf_load_script  //
这个脚本可以用来当你不想设置普通文本配置文件(即密码和repl密码)。通过返回“name = value”对从这个脚本,您可以覆盖全球配置文件参数。示例脚本如下。

#!/usr/bin/perl
 
  print "password=$ROOT_PASS\n";
  print "repl_password=$REPL_PASS\n";
  默认参数是空的,所以 MHA Manager不调用任何默认情况下。

MHA参数 转的更多相关文章

  1. 魅族资深DBA:利用MHA构建MySQL高可用平台

    龙启东 魅族资深DBA 负责MySQL.Redis.MongoDB以及自动化平台建设 .擅长MySQL高可用方案.SQL性能优化.故障诊断等. 本次分享主要包括以下几方面: 如何利用MHA 改造MHA ...

  2. MHA(上)

    一.mysql-mha环境准备 1.准备工作 1.1 实验环境: 1.2 软件包 用到的所有包 链接:https://pan.baidu.com/s/19tiKXNEW4C6oWi9OFmcDYA 提 ...

  3. Mysql 5.6 MHA (gtid) on Kylin

    mha on Kylinip hostname repl role mha role192.168.19.69 mysql1 master node192.168.19.73 mysql2 slave ...

  4. MHA原理及搭建

    MYSQL5.7下搭建MHA 环境说明 在主机1,主机2,主机3上安装MySQL服务端和客户端. 主机1 主机2 主机3 操作系统 CentOS7.4 CentOS7.4 CentOS7.4 主机名 ...

  5. Linux实战教学笔记39:Mha-Atlas-MySQL高可用方案实践(一)

    一,mysql-mha环境准备 1.1 实验环境: 主机名 IP地址(NAT) 描述 mysql-db01 eth0:192.168.0.51 系统:CentOS6.5(6.x都可以) 安装:mysq ...

  6. mha配置参数详解

    mha配置参数详解: 参数名字 是否必须 参数作用域 默认值 示例 hostname Yes Local Only - hostname=mysql_server1, hostname=192.168 ...

  7. MHA配置参数详解 【转】

    mha配置参数详解: 参数名字 是否必须 参数作用域 默认值 示例 hostname Yes Local Only - hostname=mysql_server1, hostname=192.168 ...

  8. 高可用mysql之MHA源码剖析

    * MHA的整个故障(离线)切换过程 - 检测主库的状态,确认是否崩溃. - 确认服务崩溃,保存binlog,推送到主控机,并可以强制关闭主库避免脑裂. - 找出数据最新的从库(也就是read_mas ...

  9. MYSQL MHA

    MYSQL MHA 简介: MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于 Face ...

随机推荐

  1. 拜托,这才是“Uber”的正确读法

    在美国,私家车主可以注册成为Uber司机,这对传统的出租车行业形成了很大的挑战,同时也让Uber始终处于舆论的风口浪尖. 7月14日,美国用车应用Uber正式宣布进入北京市场.在进入中国后,Uber选 ...

  2. 设置UINavigationController相同标题

    设置UINavigationController相同标题,让UINavigationController内的每一个ViewController的标题都一样,可以使用以下设置. UINavigation ...

  3. 筛选DataTable数据的方法

    对DataTable进行过滤筛选的一些方法Select,dataview 当你从数据库里取出一些数据,然后要对数据进行整合,你很容易就会想到: DataTable dt = new DataTable ...

  4. Chef

    Chef是一个渐渐流行的部署大.小集群的自动化管理平台.Chef可以用来管理一个传统的静态集群,也可以和EC2或者其他的云计算提供商一起使用.Chef用cookbook作为最基本的配置单元,可以被泛化 ...

  5. Dagger2 scope

    1. 一个没有scope的component是不能依赖于另外一个有scope的component 2.@Singleton不是真正意义的单例,比如下面 @Singleton @Component cl ...

  6. area标签circle/rect/poligon坐标

    <img src="images/02.gif" title="flower" usemap="#mm" /> <map ...

  7. 编译安装-MySQL5.5

    一.参数选项 1.目录选项 2.存储引擎选项 3.库文件加载选项 二.安装 1.环境准备 2.安装前的系统设置 3.安装执行 4.初始化数据库 5.注册为服务 6.加入环境变量 7.启动服务 8.重新 ...

  8. hdu-4753-Fishhead’s Little Game-记忆化搜索

    网赛的一道题目,当时没做出来. 由题意可知,最多只有12条边未知. 所以最多只有(1<<12)种状态. 所以记忆化搜索这种状态下,枚举添加任意一条边之后的状态的最优值. #include& ...

  9. F5 会话保持

    1.什么是会话保持?在大多数电子商务的应用系统或者需要进行用户身份认证的在线系统中,一个客户与服务器经常经过好几次的交互过程才能完成一笔交易或者是一个请求的完成.由于这几次交互过程是密切相关的,服务器 ...

  10. C# 浅拷贝与深拷贝

    浅拷贝:给对象拷贝一份新的对象引用地址:(只是给一个对象多起了个名字,所以,当改变拷贝的某个属性的时候,原对象的对应属性亦会改变).浅拷贝的定义—— 只对值类型(或string)类型分配新的内存地址: ...