MSI下载地址:https://www.mongodb.com/download-center#community
直接点击即可,不过要注意两个问题。
1.安装过程不能勾选安装MongoDB Compass
,否则你会发现找不到安装目录,找不到mongoDB这软件。
2.直接这样启动不行,需要配置数据文件所在的目录,默认是C:\data\db\
,需要自行新建,没有数据目录就直接启动会直接退出,如下
2018-07-08T02:20:32.748-0700 I CONTROL [initandlisten] MongoDB starting : pid=92 port=27017 dbpath=C:\data\db\ 64-bit host=wang
2018-07-08T02:20:32.749-0700 I CONTROL [initandlisten] targetMinOS: Windows 7/Windows Server 2008 R2
2018-07-08T02:20:32.749-0700 I CONTROL [initandlisten] db version v3.6.3
2018-07-08T02:20:32.749-0700 I CONTROL [initandlisten] git version: 9586e557d54ef70f9ca4b43c26892cd55257e1a5
2018-07-08T02:20:32.749-0700 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1u-fips 22 Sep 2016
2018-07-08T02:20:32.750-0700 I CONTROL [initandlisten] allocator: tcmalloc
2018-07-08T02:20:32.750-0700 I CONTROL [initandlisten] modules: none
2018-07-08T02:20:32.750-0700 I CONTROL [initandlisten] build environment:
2018-07-08T02:20:32.750-0700 I CONTROL [initandlisten] distmod: 2008plus-ssl
2018-07-08T02:20:32.750-0700 I CONTROL [initandlisten] distarch: x86_64
2018-07-08T02:20:32.750-0700 I CONTROL [initandlisten] target_arch: x86_64
2018-07-08T02:20:32.750-0700 I CONTROL [initandlisten] options: {}
2018-07-08T02:20:32.750-0700 I STORAGE [initandlisten] exception in initAndListen: NonExistentPath: Data directory C:\data\db\ not found., terminating
2018-07-08T02:20:32.750-0700 I CONTROL [initandlisten] now exiting
2018-07-08T02:20:32.750-0700 I CONTROL [initandlisten] shutting down with code:100
此时需要新建C:\data\db\
,又或者修改dbpath(不过每次都需要输入,可改为service)然后命令行的形式启动如下
mongod --dbpath "C://env//database//MongoDB-Serve-3.6//data" --logpath "C://env//database//MongoDB-Serve-3.6//logs//mongodb.log" --logappend
网上找的,可以通过创建window服务启动,分别是两种,但都没试过,这里mark。
#写成window服务
mongod --logpath "d://mongodb//log//mongodb.log" --logappend --dbpath "d://mongodb//data" --directoryperdb --serviceName MongoDB --install
#删除服务指令:
mongod.exe --remove --serviceName "MongoDB
2.
sc create mongodb binPath= "c:\mongodb\bin\mongod.exe --service --dbpath D:\mongodb\data --logpath=d:\mongodb\log\mongodb.log --logappend --directoryperdb"
sc delete mongodb
我是通过Always Up
管理启动的(顺便说一句,Always Up
用于管理那些命令行启动的程序挺好的)
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
sudo apt-get upgrade
sudo apt-get update
apt-get install mongodb-org=2.6.5 mongodb-org-server=2.6.5 mongodb-org-shell=2.6.5 mongodb-org-mongos=2.6.5 mongodb-org-tools=2.6.5
这样安装一般默认是启动的。
1、检查是否安装过mongodb,如已安装,则删除
rpm -qa | grep mongodb
2、下载mongodb(下载到/doiido/soft)
mkdir /doiido/soft
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.6.5.tgz -P /doiido/soft
3、解压缩mongodb
cd /doiido/soft
tar zxvf mongodb-linux-x86_64-2.6.5.tgz
mv mongodb-linux-x86_64-2.6.5 /doiido/mongodb
4、建立数据库和日志的存储目录
mkdir /doiido/mongodb/data
mkdir /doiido/mongodb/logs
touch /doiido/mongodb/logs/mongodb.log
5、建立配置文件
vi /doiido/mongodb/bin/mongodb.conf
dbpath=/doiido/mongodb/data
logpath=/doiido/mongodb/logs/mongodb.log
port=27017
fork=true
nohttpinterface=true
6、启动mongodb
/doiido/mongodb/bin/mongod --bind_ip localhost -f /doiido/mongodb/bin/mongodb.conf
7、设置开机启动
echo "/doiido/mongodb/bin/mongod --config /doiido/mongodb/bin/mongodb.conf" >> /etc/rc.local
8、测试
8.1、进入mongodb的shell模式
/doiido/mongodb/bin/mongo
8.2、查看数据库列表
> show dbs
8.3、当前db版本
> db.version();
9、停止mongodb
9.1、进入mongodb关闭
/doiido/mongodb/bin/mongo
> db.shutdownServer();
9.2、使用mongodb指令关闭
mongod --shutdown --config /doiido/mongodb/bin/mongodb.conf
9.3、使用kill指令
ps -ef|grep mongo
kill pid
注意:这个地方不能使用kill -9 pid,这样会导致数据丢失,同时mongodb还可能会报错。
如果使用kill -9 pid的方式关闭mongodb,并且mongodb不能正常启动,则需删除mongod.lock文件:
rm -f /doiido/mongodb/data/mongod.lock
/doiido/mongodb/bin/mongod --config /doiido/mongodb/bin/mongodb.conf
#进入mongo
mongo
#显示数据库列表
show dbs
#显示当前数据库中的集合(类似关系数据库中的表table)
show collections
#显示所有用户
show users
#显示数据库操作命令
db.help()
#显示集合操作命令,yourCollection是集合名
db.yourCollection.help()
创建数据库和集合(类似于table)
#切换到people数据库。MongoDB 无需预创建people数据库,在使用时会自动创建
use people
#创建集合coder,成功会返回{"ok":1}
db.createCollection('coder')
数据的增删改查
#增(成功返回 WriteResult({ "nInserted" : 1 }))
db.coder.insert({_id:1, cname: 'wangjiayong', cage: 24})
#删
#等价于 delete from coder where cname='wangjiayong'
db.coder.remove({cname: 'wangjiayong'})
#改
#update coder set sage =30 where cname = 'wangjiayong';
db.coder.update({cname: 'wangjiayong'}, {$set: {cage: 30}}, false, true) #相当于:
#查
#等价于 select * from coder
db.coder.find()
#等价于 select * from coder where cname='wangjiayong'
db.coder.find({cname: 'wangjiayong'})
#等价于 select cname,cage from coder
db.coder.find({},{cname:1, cage:1,_id:0})
#等价于 select * from coder where cname = 'wangjiayong' and cage = 24
db.coder.find({cname: 'wangjiayong', cage: 24})
#等价于 select * from coder where cage = 24 or cage = 25
db.coder.find({$or: [{sage: 24}, {sage: 25}]})