標籤:
一. mongoDB簡介
MongoDB安裝時不添加任何參數,預設是沒有許可權驗證的,登入的使用者可以對資料庫任意操作而且可以遠端存取資料庫,需以 --auth 參數啟動。
在剛安裝完畢的時候MongoDB都預設有一個 admin資料庫 ,此時admin資料庫是空的,沒有記錄許可權相關的資訊。當 admin.system.users 一個使用者都沒有時,即使mongod啟動時添加了--auth參數,如果沒有在admin資料庫中添加使用者,此時不進行任何認證還是可以做任何操作(不管是否是以--auth 參數啟動),直到在admin.system.users中添加了一個使用者。
注意事項:
- MongoDB的訪問分為串連和許可權驗證,即使以--auth參數啟動還是可以不使用使用者名稱串連資料庫,但是不會有任何的許可權進行任何操作;
- admin資料庫中的使用者名稱可以管理所有資料庫,其他資料庫中的使用者只能管理其所在的資料庫。
二. mongodb常用操作1. 添加/刪除使用者
1.1 進入admin建立一個管理帳號
use admin db.addUser("test","test")
1.2 進入需要使用的資料庫中建立一個程式使用使用者
use test db.addUser("test","test") #預設擁有讀寫權限 db.addUser("test","test",True) #擁有讀取許可權 2. 備份/恢複資料庫
2.1 備份資料庫
mongodump -d database #database為要備份的資料庫名字
此時會自動在目前的目錄下建立一個dump目錄,用於存放備份出來的檔案。
2.2 恢複之前備份的資料庫
mongorestore -d database dump/*
2.3 刪除資料庫
use database db.dropDatabase()
3. 匯入/匯出資料
3.1 從mongodb中匯出資料(json, csv)
1 mongoexport -d database_name -c collection_name -o test.dat2 mongoexport -d database_name -c collection_name -o test.json # 匯出為json格式3 mongoexport -d database_name -c collection_name --csv -o test.csv # 匯出為csv格式
3.2 匯入json資料
1 mongoexport -d database_name -c collection_name test.dat2 mongoexport -d database_name -c collection_name test.json # 兩種方式都可以
三. mongo視覺化檢視
根據個人使用體驗,覺得還是robomongo比較好用一點,並且安裝使用也不複雜。
mongodb基本操作