1,啓動服務
使用參數
--dbpath 指定數據文件路徑
--logpath 指定錯誤日誌文件
--logappend 錯誤日誌追加方式
--bind_ip 監聽ip地址
--port 監聽端口
-f 使用參數文件啓動
--folk 以守護進程方式後臺運行
--syndelay 系統同步刷新磁盤的時間,單位爲妙
./mongod --dbpath=/data --logpath=/data/mongo.log --folk --bind_ip=192.168.234.154 --port 999
如果使用參數文件啓動,可以自己編寫參數文件
vim mongo.conf
dbpath=/data
logpath=/data/mongo.log
for(var i=1;i<10;i++)db.test.save('c':i);
db.test.find();
./mongod -f mongo.conf --folk
2,一些管理工具
bsondump: 將bson格式的文件轉儲爲json格式數據
mongodump/mongoimport 數據導出導入工具
mongofiles: GridFS管理工具,可以實現二進制文件的存取
mongos: 分片路由,如果使用了sharding功能,這應用程序連接的是mongos而不是mongod
mongosniff: 類似於tcpdump工具,只抓取mongdb的數據
mongostat: 實時性監控工具
查看數據空間大小
db.userInfo.dataSize();
> db.pincer.dataSize()
548
6、得到聚集集合總大小
db.userInfo.totalSize();
7、聚集集合儲存空間大小
db.userInfo.storageSize();
8、Shard版本信息
db.userInfo.getShardVersion()
9、聚集集合重命名
db.userInfo.renameCollection("users");
將userInfo重命名爲users
10、刪除當前聚集集合
db.userInfo.drop();
3、得到當前db的所有聚集集合
db.getCollectionNames();
4、顯示當前db所有聚集索引的狀態
db.printCollectionStats();
1、添加一個用戶
db.addUser("name");
db.addUser("userName", "pwd123", true);
添加用戶、設置密碼、是否只讀
2、數據庫認證、安全模式
db.auth("userName", "123123");
3、顯示當前所有用戶
show users;
4、刪除用戶
db.removeUser("userName");
驗證登陸:
mongo --host=ip --port=num -uuser -ppassword dbname
1、查詢之前的錯誤信息
db.getPrevError();
2、清除錯誤記錄
db.resetError();
3、聚集集合重命名
db.userInfo.renameCollection("users");
列出正在執行的操作
db.currentOp(dbname)
殺掉正在實行的操作
db.killOp(opid)
創建一個集合
1,創建一個集合是100 000字節
db.createCollection("mycollection",{capped:true,size:100000})
2,創建一個大小是100000字節,最大文檔數是100的集合
db.createCollection("mycollection",{capped:true,size:100000max:100})
強制將緩存區數據,刷新到磁盤
db.runCommand({"fsync":1,"lock":1})
在線備份和恢復
mongodump -d database -o backupdir
mongorestore -d database --drop backupdir
mongo 主從
master:
mongod --bind_ip=192.168.0.1 --port=999 --dbpath=/test --logpath=/test/mongo.log --logappend --master
slave:
mongod --bind_ip=192.168.0.2 --port=998 --dbpath=/test --logpath=/test/mongo.log --logappend --slave --source 192.168.0.1:999
--only 只複製指定的數據庫
--slavedelay 從節點延遲,單位是秒
--autoersync 如果從節點與主節點不同步了,則自動重新同步
--oplogSize 主節點oplog大小,單位是M