天天看点

mongodb

1.要尝试使用mongodb首先必须要在命令行运行mongod服务a. cd mongo_home/binb. ./mongod --dbpath /data/mongodb/db/ --logpath /data/mongodb/logs/mongolog --logappend --fork参数说明--dbpath ...

1.要尝试使用mongodb首先必须要在命令行运行mongod服务

a. cd mongo_home/bin

b. ./mongod --dbpath /data/mongodb/db/  --logpath /data/mongodb/logs/mongolog  --logappend --fork

参数说明

--dbpath            #指定db文件存放的目录

--port              #指定mongod服务使用的端口

--fork              #设置mongo服务为后台运行

--logpath           #指定log文件的目录和文件名

--logappend         #设置每次log添加在文件最后

--rest              #关闭rest api功能

--nohttpinterface   #关闭web管理功能

--auth              #指定mongo使用身份验证机制

--bindip            #用逗号分隔ip地址,用来指定

--f                 #将所有前面介绍的参数都可以存放到一个配置文件中,然后用这个参数调用配置文件来启动mongod服务

2.关闭mongodb有几种方法

a. db.shutdownserver()  #推荐优先使用

b. ctrl + c             #在不使用 --fork参数的时候可以使用,可能会造成数据文件损坏

c. kill / kill -2       #在无法使用 a和b的情况下使用,可能会造成数据文件损坏

d. kill -9              #不在万不得已的情况下,不要使用这个方法

3. 查看mongodb状态

a.db.runcommand({"serverstatus":1})

b.mongo_home/bin/mongostat

4. 添加用户,切换用户 使 --auth参数起效

db.adduser("root","123")

db.adduser("read_only","123",true);  #第3个参数表示设置readonly的状态

db.auth("read_only","123")

5. 数据库备份

有4种方法备份数据库

a. 关闭mongod服务后,复制--dbpath参数指定的数据文件。优点速度快,缺点需要停止mongo服务。

b. 使用mongodump 导出数据,并用mongorestore 导入数据。优点不需要停止mongo服务,缺点在mongodump操作时用户插入的数据可能无法备份出来。

c. fsync and lock锁定数据库的让用户只能使用read功能,再使用方法b导出并导入数据。优点不需要停止mongo服务,缺点在数据库lock期间用户无法执行insert操作。

d. 使用slavedb并且 使用方法c锁定slavedb,再使用方法b导出并导入数据。优点不需要停止mongo服务,不会影响用户insert操作(推荐使用此方法)。

6. 修复数据库

当数据库文件遭到损坏的时候有3种方法修复数据文件

a. mongo_home/bin/mongod --repair

b. use test

   db.repairdatabase()

c. db.runcommand({"repairdatabase":1});

安装实例:

tar -zxvf mongodb-linux-x86_64-2.0.0.tgz

mv mongodb-linux-x86_64-2.0.0 /usr/local/mongodb

cd ../mongodb/

useradd mongodb

passwd mongodb

mkdir /data

mkdir /data/mongo

mkdir /data/log

chown mongodb.mongodb -r /data/

chmod 755 -r /data/

/usr/local/mongodb/bin/mongod --dbpath /data/mongo/ --logpath /data/log/mongodb.log &

/usr/local/mongodb/bin/mongo admin

mongodb shell version: 2.0.0

connecting to: admin

/usr/local/mongodb/bin/mongod --dbpath /data/mongo --logpath /data/log/mongodb.log --oplogsize=1000 --logappend --auth &

mongodb
mongodb

继续阅读