mongodb經常使用管理命令

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});
相關文章
相關標籤/搜索