Mongodb
將作業系統從 Ubuntu 16 升級到 18 後無法啟動 mongod 守護程序
將作業系統從 Ubuntu 16 升級到 18 後無法啟動 mongod 守護程序
root@dummy2:~# mongod --version db version v4.0.4 git version: f288a3bdf201007f3693c58e140056adf8b04839 OpenSSL version: OpenSSL 1.1.1 11 Sep 2018 allocator: tcmalloc modules: none build environment: distmod: ubuntu1804 distarch: x86_64 target_arch: x86_64 root@dummy2:~# cat /etc/*-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=18.04 DISTRIB_CODENAME=bionic DISTRIB_DESCRIPTION="Ubuntu 18.04.4 LTS" NAME="Ubuntu" VERSION="18.04.4 LTS (Bionic Beaver)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 18.04.4 LTS" VERSION_ID="18.04" root@dummy2:~# /usr/bin/mongod --config /etc/mongo/db8303/mongodb.conf & /usr/lib/x86_64-linux-gnu/libcurl.so.4: version `CURL_OPENSSL_3' not found (required by /usr/bin/mongod)
我在 libcurl 版本的作業系統升級前後看到的差異:
前:
root@dummy2:~# ls -lrt /usr/lib/x86_64-linux-gnu/libcurl* /usr/lib/x86_64-linux-gnu/libcurl.so.4 -> libcurl.so.4.4.0 /usr/lib/x86_64-linux-gnu/libcurl.so.3 -> libcurl.so.4 /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4 -> libcurl-gnutls.so.4.4.0 /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.3 -> libcurl-gnutls.so.4 /usr/lib/x86_64-linux-gnu/libcurl.so.4.4.0 /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.4.0
後:
root@dummy2:~# ls -lrt /usr/lib/x86_64-linux-gnu/libcurl /usr/lib/x86_64-linux-gnu/libcurl.so.4 -> libcurl.so.4.5.0 /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4 -> libcurl-gnutls.so.4.5.0 /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.3 -> libcurl-gnutls.so.4 /usr/lib/x86_64-linux-gnu/libcurl.so.4.5.0 /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.5.0
有沒有人遇到過類似的問題?如何解決這個問題?
我嘗試了以下不同的選項:
選項 1:使用 Ubuntu-16 mongo 二進製文件(選項 3 步驟 2 之前);如果我們對 libcurl3 沒問題
1. apt-get remove libcurl4 2. apt-get install libcurl3 3. able to start the daemon
選項2:沒用
1. apt-get remove libcurl4 2. apt-get install libcurl4 3. /etc/init.d/mongo_db7020 /usr/bin/mongod: /usr/lib/x86_64-linux-gnu/libcurl.so.4: version `CURL_OPENSSL_3' not found (required by /usr/bin/mongod)
選項 3:複製 mongodb 18 二進製文件
1. apt-get remove libcurl4 2. rsync -asvh mongoserver:/usr/bin/mongodb-linux-x86_64-ubuntu1804-4.0.4/bin/* /usr/bin/mongodb-linux-x86_64-ubuntu1604-4.0.4/bin 3. apt-get install libcurl4 4. able to start the daemon
選項 1 和 3 對我來說效果很好。
Mongo 4.0.6 中添加了對 Ubuntu 18.04 的支持,請參閱https://jira.mongodb.org/browse/SERVER-37778
你有版本 4.0.4