zoukankan      html  css  js  c++  java
  • openresty操作mongodb

    最近项目中使用openresty,需要通过openresty连接mongo,经过几番折腾终于有了一个结果,现将其记录下来,也感谢模块提供者

    使用openresty操作mongo

    1、引入第三方的模块

      https://github.com/isage/lua-resty-moongoo

    2、将第三方模块下载后放入openresty相关目录及/usr/local/openresty/lualib/resty/

    3、开始使用模块中提供的方法操作数据库,但是在使用中会发现缺少模块cbson,因此在使用该模块时需要再次编辑安装cbson模块,cbson主要用来生成mongo中的ObjectId

    安装libbson

    git clone git://github.com/mongodb/libbson.git
    cd libbson/
    ./autogen.sh
    make
    sudo make install

    make clean && make LUA_INCLUDE_DIR=/usr/local/openresty/luajit/include/luajit-2.1 LUA_CMODULE_DIR=/usr/local/openresty/lualib LUA_MODULE_DIR=/usr/local/openresty/lualib CBSON_CFLAGS="-g -fpic -I/usr/local/include/libbson-1.0/ " CC=cc

    安装使用cbson

    1、第三方Github地址 https://github.com/isage/lua-cbson

    2、编译安装cbson模块,在编译此间出现错误“Could NOT find LuaJIT (missing: LUA_LIBRARIES LUA_INCLUDE_DIR)”,由于我自己的openresty路径不同,所以出现上述报错。解决方法如下:

      a、找到模块中的cmake文件夹,找到一个名为FindLuaJIT.cmake的文件

      b、修改luajit的路径,重新执行编译即可

    安装完成上述三个模块之后即可按照mongo模块提供的文档进行操作

    ps:如果在使用cbson时报如下错误:

    则需要将libbso-1.0.so.0手动添加到 /usr/lib下,具体操作如下

    ln -s /usr/local/lib/libbson-1.0.so.0 ./libbson-1.0.so.0

    ldconfig

    执行以上命令即可解决找不到动态连的错误

  • 相关阅读:
    SpringMVC-Day1 (课题有用)
    Spring-Day3
    Spring-Day2
    fix mac
    新西兰产假(陪产假)
    nz 国内航空
    英文句子
    centos7.2安装swoole扩展
    linux搭建vue框架部署环境
    微信扫描带参数二维码事件
  • 原文地址:https://www.cnblogs.com/tm2015/p/7505438.html
Copyright © 2011-2022 走看看