对mongodb编译安装,真是费了好大的劲才安装上,本来想着yum安装,结果老是失败;
首先,安装monodb之前最好先检查一下有没有依赖的包(很重要):
Mongodb会依赖一些动态链接库,启动的时候可能会报错,error while loading shared libraries:libssl.so.6,安装所需的动态链接库即可:(需要使用root用户登录),依次执行以下三条命令:
yum install libssl.so.6
ln -sf /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.6
ln -sf /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.6
然后开始安装mongodb:
第一步:下载mongodb的安装包;下载链接:https://www.mongodb.org/downloads#production
第二步:解压缩;tar -zxvf 包名
第三步:重命名为mongodb,然后在mongodb目录下新建一个mongo_data目录存放数据、新建一个mongo_logs目录存放日志,然后在该目录下新建一个日志文件,例如我们命名为mongodb.log
第四步:配置文件:首先在mongodb目录下新建一个文件,文件名任意,在这里取名为:mongo_master.conf
vim mongodb.conf,在文件里添加:
port=20001 #代表端口号,如果不指定则默认为 27017 (最好用默认的,我用的就是27017)
dbpath= /data/mongo_data #数据库路径 目录自定义
logpath= data/mongo_logs/mongodb.log #日志路径 目录自定义
logappend=true #日志文件自动累加,而不是覆盖
fork=true #后台启动
第五步:启动;
./bin/mongod -f mongo_master.conf
顺便说一下,关闭命令是
./bin/mongod -f mongo_master.conf -shutdown
以上两条命令是在/usr/local/program_files/mongodb/下执行;
还有一点,我是把它安装在/usr/local/program_files/下了;
用python3测试与结果:
Python 3.6.6 (default, Jan 4 2019, 02:14:02)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pymongo
>>> client = pymongo.MongoClient('localhost')
>>> db = client['newtestdb']
>>> db['table'].insert({'name': 'Bob'})
ObjectId('5c3175693b7750084b4251bf')
>>> db['table'].find_one({'name': 'Bob'})
{'_id': ObjectId('5c3175693b7750084b4251bf'), 'name': 'Bob'}
>>> exit()
这个里边大部分我是参考别人的,我只是修改了一小部分,下面附上我参考的过程;
第一步:下载安装包
下载链接:https://www.mongodb.org/downloads#production
在下载页面里面我们可以根据系统来选择下载版本,比如linux系统就是:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.6.3.tgz
或者直接apt-get install Mongodb也可以
第二步:解压缩
压缩包地址:/home/mongodb-linux-x86_64-3.6.3.tgz
部署目录:/home/mongodb
解压:tar -zxvf mongodb-linux-x86_64-3.6.3.tgz
把 mongodb-linux-x86_64-3.6.3重命名为mongodb
在mongodb目录下新建一个mongo_data目录存放数据、新建一个mongo_logs目录存放日志,然后在该目录下新建一个日志文件,例如我们命名为mongodb.log
第三步:配置文件
首先在mongodb目录下新建一个文件,文件名任意,在这里取名为:mongo_master.conf
vi.mongodb.conf,在文件里添加:
port=20001 #代表端口号,如果不指定则默认为 27017
dbpath= /data/mongo_data #数据库路径 目录自定义
logpath= data/mongo_logs/mongodb.log #日志路径 目录自定义
logappend=true #日志文件自动累加,而不是覆盖
第四步:启动Mongodb
./bin/mongod -f mongodb.conf
Mongodb会依赖一些动态链接库,启动的时候可能会报错,error while loading shared libraries:libssl.so.6,安装所需的动态链接库即可:(需要使用root用户登录)
yum install libssl.so.6
ln -sf /usr/lib64/libssl.so.10 /usr/lib64/libssl.so.6
ln -sf /usr/lib64/libcrypto.so.10 /usr/lib64/libcrypto.so.6
第五步:进入Web页面查看:
在浏览器地址栏输入: http://localhost:20001/ 然后回车访问
可以看到如下提示:You are trying to access MongoDB on the native driver port. For http diagnostic access, add 1000 to the port number
然后根据提示把端口号加上1000访问 http://localhost:21001/
就能够访问到Monodb的服务端web页面
第六步:验证Mongodb安装
重新开启一个终端 把目录切换到mongodb的bin目录下
在bin下执行 mongo localhost:20001
终端打印 Welcome to the MongoDB shell
在>右边输入 db.foo.save({name:"aqb"})回车
在>右边输入 db.foo.find() 看到打印{“_id":Objectid("************"),'name':aqb}
则可以正常使用MongoDB了
再附上我转载的地址:
https://www.51anidea.com/forum.php?mod=viewthread&tid=164&extra=page%3D1
关于monogodb后台启动可以参考这个博客: