• 两台机子的repcached Memcache 的安装与实验


    安装memcached前先要确定系统是否安装了gcc;
    1、解压安装包:
    tar -zxf memcached-1.2.8-repcached-2.2.tar.gz
    2、编译:
    系统应安装了libevent,libevent-1.4.13-stable.tar;
    ./configure --enable-replication --prefix=/home/taiyue/repcached --with-libevent=/home/taiyue/libevent
     报错:checking build system type... Invalid configuration `i686-pc-linux-': machine `i686-pc-linux' not recognized
    ./configure --enable-replication --build=i686-pc-linux-gnu --prefix=/home/usd/repcached --with-libevent=/usr/lib
     报错:configure: error: no acceptable C compiler found in $PATH //缺少gcc编译器
    通过界面进行gcc的安装。
    ./configure --enable-replication --build=i686-pc-linux-gnu成功之后:make
    报错:-bash: make: command not found;需要安装make。
    make install(必须使用root才能安装??不是非root用户编译的时候指名--prefix安装地址即可,启动的时候不要直接memcached-。。。必须加上安装路径
    make报错:error while loading shared libraries: libmpc.so.2: cannot open shared object file 。。。。
    添加:export LD_LIBRARY_PATH=/usr/local/mpc-0.8.1/lib

    注意:make的时候报错

    memcached.c: 在函数‘add_iov’中:
    memcached.c:696:30: 错误: ‘IOV_MAX’未声明(在此函数内第一次使用)
    memcached.c:696:30: 附注: 每个未声明的标识符在其出现的函数内只报告一次
    make[2]: *** [memcached-memcached.o] 错误 

    需要修改 memcached.c 文件:

    /* FreeBSD 4.x doesn't have IOV_MAX exposed. */
    #ifndef IOV_MAX
    #if defined(__FreeBSD__) || defined(__APPLE__)
    # define IOV_MAX 1024
    #endif
    #endif
    
    改成:
    
    /* FreeBSD 4.x doesn't have IOV_MAX exposed. */
    #ifndef IOV_MAX
    # define IOV_MAX 1024
    #endif
     
    3、运行:
    主:/home/taiyue/repcached/bin/memcached -v -d -u usd -p 11211
    从:/home/taiyue/repcached/memcached -v -d -u usd -x 127.0.0.1 -p 11213
    红色的目录一定要带上,因为使用非root账户安装的软件没有在系统环境变量地下,因而直接使用memcached命令将提示command not
    found。
    主宕掉以后重启:
    /home/taiyue/repcached/memcached -v -d -u usd -x 127.0.0.1 -p 11211
    4、网上很多对repcached启动的参数理解不正确,repcached 新添加的两个参数-x以及-X应该这么理解:
    -x为要监听的另一台机器的IP,-X为本机的复制端口()(A和B两台机子必须复制端口相同)
    例如本机为:133.96.93.107,另一台机子为133.96.93.108
    那么 133.96.93.107启动的时候:memcached -d -v -p 44444 -x 133.96.93.108 -X 66666
    -p代表133.96.93.107对外提供服务的地址,-x 133.96.93.108为要监听复制的地址, -X 66666声明要133.96.93.107打开此端口供赋值打开的是133.96.93.107上的端口或者理解为133.96.93.108要提供的复制端口,因为端口是必须相同的。
    那么 133.96.93.108启动的时候:memcached -d -v -p 44444 -x 133.96.93.107 -X 66666 只需要改变-x的参数即可
     
     
  • 相关阅读:
    Yarn&Mapreduce参数的具体含义和配置参考
    【转】用Python实现各种排序算法
    xpath表达式,提取标签下的全部内容(将其他标签过滤)
    ssh IP打通,hadoop启动失败
    windows7下安装python3的scrapy框架
    【转】git push 出现401 错误
    Linux多条指令之间;和&&
    [转]用了docker是否还有必要使用openstack?
    自动化软件部署的shell脚本
    Nginx配置教程
  • 原文地址:https://www.cnblogs.com/luoyanli/p/4499296.html
Copyright © 2020-2023  润新知