MongoDB

MongoDB 是一種被廣泛使用的 NoSQL 資料庫,使用 JSON 格式來儲存與索引。 MongoDB 與 Node.js 搭配使用時,能提供靈活的彈性和速度,因此有越來越多開發人員採用。

您目前可以在 Simple Hosting 主機上搭配任何一種語言使用 MongoDB 3.2。

在 Simple Hosting 上,您可以建立不限數量的資料庫與使用者,唯一的限制只有硬碟大小,不過您可以隨時增加硬碟空間,最大為 1TB。

您可以從網頁介面或是終端機上管理 MongoDB 資料庫。此篇說明文件將會介紹如何存取、建立與管理 Simple Hosting 上的 MongoDB 資料庫。

連接資料庫

MongoDB 資料庫預設在 localhsot27017 埠。只能透過本機存取,無法提供外部連線。您不需要帳號密碼就可以快速測試連線與管理工具。

預設的連線資訊如下:

Host: localhost
Port: 27017
User: <none>
Password: <none>
Database: <any>

連結到資料庫 myapp-production 的 URL 範例如下:

mongodb://localhost:27017/myapp-production

備註

建議您為應用程式設定安全強度高的帳號與密碼,我們會在下方說明如何設定。

使用 Adminer 管理您的資料庫

登入您的帳號至 Simple Hosting 主機的 「控制台」 之後,您就可以按下 MongoDB 區塊下的 Adminer 進行管理。

建立資料庫

如果您要使用 Adminer 來建立資料庫,請按下 Create database ,在接下來的頁面中輸入資料庫名稱並且按下 Save

匯出資料庫

Adminer 不支援匯出資料庫。請參考下方 「使用命令列管理資料庫」 的說明了解如何匯出 MongoDB 資料庫。

匯入資料庫

Adminer 不支援匯入資料庫。請參考下方 「使用命令列管理資料庫」 的說明了解如何匯入 MongoDB 資料庫。

使用命令列管理資料庫

如果您要使用命令列來管理 MongoDB 資料庫,您需要透過緊急終端機登入主機。

請注意,終端機會在閒置數分鐘後就自動斷線,此情況下,您不需要重新啟動緊急終端機,只需要重新連線 SSH 即可。

連接資料庫

使用以下命令進入 mongo 命令列:

$ mongo
MongoDB shell version: 2.4.8
connecting to: test
Welcome to the MongoDB shell.
>

使用 use 指令切換您要進行操作的資料庫:

> use database_name
switched to db database_name

匯入/匯出 資料庫

若要透過 SSH 匯出資料庫,您可以執行 mongodump 命令指定您要匯出的資料庫名稱,匯出到可寫入的資料夾內:

# Export entire database
$ mongodump --db database_name \
    --out ~/tmp/mongodump-yyyy-mm-dd

# Export a collection within a database
$ mongodump --collection collection_name \
    --db database_name \
    --out ~/tmp/mongodump-yyyy-mm-dd

備註

除了虛擬站台的目錄之外,您只能寫入 /srv/data/tmp 目錄內,我們建議您建立一個目錄來存放所有匯出的資料庫。

若要透過 SSH 匯入資料庫,您可以執行 mongoimport 命令指定您要匯入的資料庫名稱,並選擇要匯入的資料庫檔:

$ mongoimport --db database_name \
    --collection collection_name \
    --file collection.json