• MHA环境搭建【3】node相关依赖的解决


    mha的node软件包依赖于perl-DBD-Mysql 这个包,我之前有遇到过用yum安装perl-DBD-MySQL,安装完成后不能正常使用的情况,所以这里选择源码编译安装;

    perl5.10.1这个版本的Socket 模块由于没有导出gethostinfo,getipinfo这两个函数,所以mha在这个版本的perl解释器上执行会出错,所以要升级一下Socket模块。

    【1】安装依赖的依赖、由于要用到编译安装、所以先要把gcc编译器安装上。

    yum -y install gcc gcc-c++

    【2】从www.cpan.org中下载相关perl模块并安装

    1、perl-DBD-MySQL、perl-ExtUtils-Constant、perl-Socket

    2、找到模块的链接

    3、点击左边栏的download就可以下载了

    为什么在这里把cpan说这么细、主要是我感觉这个UI对用户不在友好

    4、安装ExtUtils-Constant 因为之后安装的Socket 模块要依赖到它

    tar -xzvf ExtUtils-Constant-0.23.tar.gz
    cd ExtUtils-Constant-0.23
    perl Makefile.PL
    make
    make install

    5、更新Socket模块

    tar -xzvf Socket-2.024.tar.gz 
    cd Socket-2.024
    perl Makefile.PL
    make 
    make install

    6、安装DBD-MySQL模块

    tar -xzvf DBD-mysql-4.038.tar.gz 
    cd DBD-mysql-4.038
    perl Makefile.PL --mysql_config=/usr/local/mysql/bin/mysql_config --with-mysql=/usr/local/mysql
    make 
    make install

    6.1、就我目前的经验来说,mha最容易出错的地方就是这样perl-DBD-MySQL了;安装的时候没有报错不一定就可以说明你安装成功了,还是要测试一下的。

    perl-DBD-MySQL的测试脚本如下

    #!/usr/bin/perl
    
    use strict;
    use warnings;
    use DBI;
     
    #Connect to the database.
    my $dbh = DBI->connect("DBI:mysql:database=test;host=127.0.0.1",
                             "appuser", "123456",
                                                    {'RaiseError' => 1});
    my $sth = $dbh->prepare("SELECT 1 as value");
    $sth->execute();
    my $result = $sth->fetchrow_hashref();
    print "----ok----  $result->{value}
    ";
    $sth->finish();
    $dbh->disconnect();

    常见的错误有两处:

    1、没有导出mysql的共享库文件/usr/local/mysql/lib/ 这个时候就算你编译DBD-MySQL安装通过了,在你编译mha-node的时候,它还是会报没有安装perl-DBD-MySQL

    2、在编译DBD-MySQL的时候没有指定--mysql_config &--with-mysql 、这种情况下mha-node还是可以编译成功的,在mha运行的时候连接不上mysql;

    【3】安装mha-node软件包

    unzip mha4mysql-node-master.zip 
    cd mha4mysql-node-master
    perl Makefile.PL
    make
    make install
  • 相关阅读:
    Django和Angular.js模板标签冲突的解决方式
    ImageMagick 使用经验
    Getting Real内容浓缩
    RA layer request failed
    [硬件结构]硬件体系结构中的缓存的定性与定量分析案例
    hdu5373
    百度地图之标注一组地理坐标<2>
    【KMP】hdu1867(A + B for you again) 杭电java a题真坑
    hdu1034 简单模拟
    杂谈之WEB前端project师身价
  • 原文地址:https://www.cnblogs.com/JiangLe/p/6074516.html
Copyright © 2020-2023  润新知