官术网_书友最值得收藏!

2.2 使用mongo shell

mongo shell是一個連接MongoDB的交互式客戶端,可以通過它來執行數據的查詢、管理等一系列操作。

1.連接數據庫

執行下面的命令:

其中,--port選項用于指定數據庫的監聽端口。當然,默認連接的是本地數據庫,如果需要連接遠程數據庫,則可以指定--host選項,代碼如下:

進入mongo shell之后,客戶端會建立一個到服務器的連接。

接下來,使用show databases命令查看數據庫列表,具體如下:

這里發生了一點錯誤,原因是當前的shell連接還沒有進行用戶鑒權。此時可以使用admin用戶進行鑒權,代碼如下:

可以看到,在用戶鑒權成功之后,show databases輸出了所有的數據庫列表,以及每個庫的大小。如果讀者覺得用戶鑒權的動作太過煩瑣,則可以在連接時就把鑒權信息加上,代碼如下:

2.JavaScript支持

mongo shell是基于JavaScript語法的,在shell中執行JavaScript代碼,如下:

MongoDB使用了SpiderMonkey作為其內部的JavaScript解釋器引擎,這是由Mozilla官方提供的JavaScript內核解釋器,該解釋器也被同樣用于大名鼎鼎的Firefox瀏覽器產品之中。SpiderMonkey對ECMA Script標準兼容性非常好,可以支持ECMA Script 6。

可以通過下面的命令檢查JavaScript解釋器的版本:

注意:在MongoDB 3.2版本之前,采用了V8作為JavaScript解釋器引擎,新版本中已經將其廢棄。

借由高級的SpiderMonkey引擎,我們可以在mongo shell中使用ES 6風格的代碼,如下:

3.執行腳本

除了交互的方式,mongo shell也支持以非交互的方式執行腳本。

使用--eval可以指定一段JavaScript代碼:

或者,直接指定一個JavaScript文件:

4.常用命令

mongo shell常用命令見表2-4。

表2-4 mongo shell常用命令

續表

主站蜘蛛池模板: 星子县| 分宜县| 广宗县| 玉树县| 白朗县| 凤冈县| 仙桃市| 景谷| 化德县| 武义县| 扬州市| 平顶山市| 贡觉县| 罗甸县| 宝鸡市| 喀喇| 正定县| 张家港市| 寿光市| 开封市| 岳普湖县| 景宁| 和平县| 忻城县| 海宁市| 莎车县| 元谋县| 泾阳县| 大田县| 浪卡子县| 南丹县| 霍林郭勒市| 屏边| 广东省| 湟中县| 鄂温| 金门县| 浦北县| 卓资县| 临清市| 和田市|