[MongoDB學習筆記-01] 入門
1、安裝MongoDB伺服器
實際上,安裝MongoDB伺服器只需四步:
1、到官網下載MongoDB,並解壓;
2、把/bin目錄新增到系統路徑;
3、建立資料檔案路徑,即是<mongo_data_location>/data/db ;
2、在控制檯中啟動MongoDB:
mongod -dbpath <mongo_data_location>/data/db
mongod的命令列引數:
參 數 | 說 明 |
---|---|
–help, -h | 返回基本幫助和用法文字 |
–version | 返回MongoDB版本號 |
–config <檔名>,-f <檔名> | 指定包含執行時配置的配置檔案 |
–verbose, -v | 增加發送到控制檯,並且寫入–logpath規定的日誌檔案的內部報告數量 |
–quiet | 減少傳送到控制檯和日誌檔案的報告數量 |
–port <埠> | 指定MongoDB來監聽客戶端的連結的IP地址,預設值是27017 |
–maxConns <編號> | 指定Mongod接受併發連線的數量,最大值是20000. |
–logPath <路徑> | 指定日誌檔案路徑。在重啟時,日誌檔案會被覆蓋,除非你還指定–logappend |
–auth | 對從遠端主機上連線資料庫的使用者用資料庫身份驗證。 |
–dbpath <路徑> | 指定Mongd例項用來儲存其資料的目錄 |
–nohttppinterface | 禁用HTTP介面 |
–nojournal | 禁用日誌 |
–noprealloc | 禁止預分配資料檔案,從而縮短啟動時間。但是,可能會在正常的操作期間內造成明顯的效能損失。 |
–repair | 在所有資料庫上執行修復程式 |
–bind_ip | 指定Mongod繫結和監聽連線的IP地址,預設的是All Interface(所有的介面) |
3、啟動MongoD
mongod -dbpath <mongo_data_location>/data/bin
或者
mongod -port 28008 -dbpath <mongo_data_location>/data/bin*
4、停止MongoDB
開啟MongoDB的shell客戶端(在控制檯視窗中執行以下命令來開啟shell客戶端):
$ mongo
開啟shell後,通過以下形式關閉指定資料庫:
use admin // 切換到指定資料庫,這裡是admin資料庫
db.shutdownServer() // 立即關閉admin資料庫
5、從shell客戶端訪問MongoDB的方法。
一旦你進入MongoDB shell就能管理MongoDB的各個方面。注意,MongoDB shell 是基於JavaScript的,因此它也就能夠支援大多數的JavaScript的語法。此外,shell提供了對伺服器上資料庫和集合的直接訪問。所以,在shell中的更改和執行的任務將直接影響到伺服器上的資料和它的效能。
MongoDB的shell命令:
1、help <option>
顯示MongoDB語法幫助 ;
2、use <database>
更改MongoDB控制代碼 ;
3、show <option>
3-1、 dbs
3-2、collections
3-3、profile
3-4、log [ name ]
根據option引數顯示清單 ;
- 顯示資料庫清單;
- 顯示當前資料庫的集合清單;
- 顯示時間超過1毫秒的最新system.profile條目;
- 顯示登入記憶的最後一段。如果沒有指定name, 預設使用global.
4、 exit
退出資料庫;
MongoDB shell方法:
1>、load ( script )
在shell的內部載入和執行JavaScript。對資料庫進行指令碼操作時使用這種方法是最合適的。
2>、UUID ( string )
把32位元組的十六進位制字串轉換成BSON的UUID
3>、db.auth( username, password )
瞭解命令的引數和結果:
MongoDB的shell是與MongoDB的資料結構緊密結合的互動式JavaScript shell。
這也就意味著,很多資料互動,從傳入方法的引數到從方法所返回的資料,都是標準的MongoDB文件,這在大多數情況下都只是JS物件。
如下程式碼,建立使用者,並傳入以下引數定義使用者:
db.createUser({
user: "G-Dragon",
userSource: "test",
roles: [ "read" ],
otherDBRRoles: { testDB2: [ "readWrite" ] }
})
>db.system.users.find()
使用shell編寫MongoDB指令碼
有兩種方式來執行mongodb shell指令碼:
1>、命令列中,使用–eval。
mongo test --eval "printjson( db.getCollectionName() )"
2>、使用load( script_path )方法執行MongoBD shell指令碼。
這種方法載入的是一個jS檔案, 並且是立即執行。
load("/tmp/db_update.js") // shell命令,載入並執行db_update.js指令碼檔案