• MHA安装手记


     目前mha最新的版本代码已经不放到google code网站了,而是放在github上,最新的版本为0.58,github链接如下:
      mha manager:https://github.com/yoshinorim/mha4mysql-manager
      mha node:https://github.com/yoshinorim/mha4mysql-node 

     安装MHA服务器和客户端

    # yum install perl-DBD-MySQL

       /etc/masterha/app1.cnf 配置文件

     

    [server default]
    manager_workdir=/etc/masterha/app1    //设置manager的工作目录
    manager_log=/var/log/masterha/app1/manager.log  //设置manager的日志
    secondary_check_script= masterha_secondary_check -s 192.168.60.166 -s 192.168.60.167
    master_ip_failover_script=/usr/local/master_ip_failover     //设置自动failover时候的切换脚本
    
    user=mha
    password=123456
    
    ssh_user=root    //设置ssh的登录用户名
    repl_user=repl   //设置复制环境中的复制用户名
    repl_password=123456   //设置复制用户的密码
    ping_interval=1     //设置监控主库,发送ping包的时间间隔,默认是3秒,尝试三次没有回应的时候自动进行
    
    [server1]
    hostname=192.168.60.166
    candidate_master=1
    check_repl_delay=0 
    master_binlog_dir=/usr/local/mysql/data
    
    [server2]
    hostname=192.168.60.167
    candidate_master=1  //设置为候选master,如果设置该参数以后,发生主从切换以后将会将此从库提升为主库
    
    check_repl_delay=0  #如果候选master有延迟的话,relay日志超过100m,failover切换不能成功,加上此参数后会忽略延迟日志大小。
    master_binlog_dir=/usr/local/mysql/data
    
    [server3]
    hostname=192.168.60.168
    no_master=1   #从不将这台主机转换为master
    
    ignore_fail=1  #如果这个节点挂了,mha将不可用,加上这个参数,slave挂了一样可以用
    master_binlog_dir=/usr/local/mysql/data
    

      

    在manager节点上:

    # yum install perl-DBD-MySQL
    # yum install perl-Config-Tiny
    # yum install perl-Log-Dispatch
    # yum install perl-Parallel-ForkManager
    # yum install -y rrdtool perl-rrdtool rrdtool-devel perl-Params-Validate

    运行 masterha_check_repl --conf=/etc/masterha/app1.cnf 报错:
     Testing mysql connection and privileges..sh: mysql: command not found
    找不到mysql命令,把你mysql安装的目录下的bin目录,做一个软链接就可以了
    ln -s /usr/local/mysql/bin/mysql /usr/bin

    运行masterha_check_repl --conf=/etc/masterha/app1.cnf 报错:
    Can't exec "mysqlbinlog": 没有那个文件或目录 at /usr/share/perl5/vendor_perl/MHA/BinlogManager.pm line 106.

     在node节点上执行 which mysqlbinlog,比如我的结果就是

       [localhost~]$ which mysqlbinlog
       /usr/local/mysql/bin/mysqlbinlog

       需要做一个软连接

       ln -s /usr/local/mysql/bin/mysqlbinlog /usr/bin/mysqlbinlog

      yum包老是缺少包:修改yum的源

          wget -O /etc/yum.repos.d/epel.repo  http://mirrors.aliyun.com/repo/epel-6.repo 

      阿里云: http://mirrors.aliyun.com/help/epel

  • 相关阅读:
    HDU 1509 Windows Message Queue
    sql批量更换dedecms文章来源和作者
    dedecms织梦网站时间标签strftime和MyDate解析
    JS代码站原创DEDECMS教程插件系列
    DEDECMS织梦自定义表单中必填项、电话邮箱过滤以及验证码规则
    dedecms标签(tags)页面伪静态设置
    dedecms几个小技巧
    dedecms 5.7 网站搬家后产生的问题记录
    dedecms织梦做中英文(多语言)网站步骤详解
    DedeCMS系统设置说明:站点设置
  • 原文地址:https://www.cnblogs.com/zping/p/5314893.html
Copyright © 2020-2023  润新知