How to get through the "MongoDB / PCRE character search error" when upgrading from MongoDB 1.8 to 2.4

I am developing Ruby on servers that I have inherited (aka: I have never been set up initially) that have not been supported for some time, and noticed that the installed version of MongoDB was 1.8 when the 2.4 series update was available. Since the box uses the RedHat / CentOS option, which it uses yumto install RPM, I went ahead and do what I usually do for the update. First, stop the executable instance of MongoDB as follows:

sudo service mongod stop

And then upgrade the packages from the repo.

sudo yum install mongodb mongodb-server libmongodb

Everything went well, including the established dependencies. But when I decided to restart MongoDB bia, run the following command:

sudo service mongod start

. . MongoDB :

/usr/bin/mongod: :/usr/bin/mongod: undefined : _ZN7pcrecpp2RE4InitEPKcPKNS_10RE_OptionsE

? , RPM, , : RPM MongoDB. , ? ?

+1
1

. , , . ? /usr/bin/mongod: symbol lookup error: /usr/bin/mongod: undefined symbol: _ZN7pcrecpp2RE4InitEPKcPKNS_10RE_OptionsE, pcre pcre-devel :

sudo yum install pcre pcre-devel

, , , , . , , . , , :

sudo yum install rpm-build redhat-rpm-config gcc gcc-c++ make yum install openssl-devel snappy-devel v8-devel boost-devel python-devel python-nose scons pcre-devel readline-devel libpcap-devel gperftools-devel

, , . , pcre , pcre-devel; . , mongod :

sudo service mongod start

. , MongoDB ! ? :

libpcre RE::Init(), std::string, a char*. , libpcrecpp, .

, , , MongoDB . lsof :

sudo lsof | grep pcre
    nginx       892   deploy  mem       REG              253,2              97140006 (deleted)/lib64/libpcre.so.0.0.1 (stat: No such file or directory)
    nginx       893   deploy  mem       REG              253,2              97140006 (deleted)/lib64/libpcre.so.0.0.1 (stat: No such file or directory)
    nginx      1369     root  mem       REG              253,2              97140006 (deleted)/lib64/libpcre.so.0.0.1 (stat: No such file or directory)
    mongod    26841  mongodb  mem       REG              253,2               1052673 /usr/lib64/libpcrecpp.so.0.0.0 (path dev=0,53)
    mongod    26841  mongodb  mem       REG              253,2              97126735 /lib64/libpcre.so.0.0.1 (path dev=0,53)
    grep      28590   deploy  mem       REG              253,2              97126735 /lib64/libpcre.so.0.0.1 (path dev=0,53)

, mongod /lib64/libpcre.so.0.0.1. , ?

, / , MongoDB, lsof, :

sudo lsof | grep pcre
    nginx       922          root  mem       REG              253,2              81795343 (deleted)/lib64/libpcre.so.0.0.1 (stat: No such file or directory)
    nginx       923        deploy  mem       REG              253,2              81795343 (deleted)/lib64/libpcre.so.0.0.1 (stat: No such file or directory)
    nginx       924        deploy  mem       REG              253,2              81795343 (deleted)/lib64/libpcre.so.0.0.1 (stat: No such file or directory)
    grep       8067        deploy  mem       REG              253,2              81791051 /lib64/libpcre.so.0.0.1 (path dev=0,61)

, 100% mongod /lib64/libpcre.so.0.0.1. , , , RPM, pcre .

+2

All Articles