RethinkDB: 入門指南

學習如何在 Stackhero 上設置及保護您的 RethinkDB 實例

歡迎瀏覽 Stackhero 文件

Stackhero 提供即用型的 RethinkDB cloud 服務,專為可靠性及易用性而設計。您可享有:

  • 一鍵完成的更新流程
  • 在您專屬的私有基礎設施上,獲得高效能及強大安全性

快速啟動:您只需數分鐘即可試用 Stackhero 的 RethinkDB cloud hosting。Stackhero 會處理所有設定及管理工作,讓您專注於開發您的應用程式。

在 Stackhero 上保護您的 RethinkDB 實例,首先要設置一個強而有力的管理員密碼。您可以連接到 RethinkDB 的網頁介面,進入 Data Explorer 分頁,然後執行以下查詢:

r.db('rethinkdb').table('users').get('admin').update({ password: '<PASSWORD>' })

請將 <PASSWORD> 替換為您想設定的安全密碼。

如果您需要對 RethinkDB 實例進行 dump 或還原操作,可以從本地電腦或其他伺服器使用 RethinkDB CLI。所有 Stackhero 服務預設都使用加密連線(TLS),因此您需要加上 --tls-cert 參數,指定本地 CA 憑證的位置。

例如,以下是備份 RethinkDB 資料庫的指令:

rethinkdb dump \
  --tls-cert /etc/ssl/certs/ca-certificates.crt \
  -c <XXXXXX>.stackhero-network.com:29015 \
  -p

請將 <XXXXXX> 替換為您實際的 Stackhero 實例名稱。

由於 RethinkDB 的連線已經透過 TLS 加密,而官方的 RethinkDB client library 並不支援 TLS,建議您改用 rethinkdbdash library。

您可以透過 npm 安裝 rethinkdbdash:

npm install rethinkdbdash

以下是一個簡單範例,展示如何讓您的 Node.js 應用程式連接到 RethinkDB 資料庫。這個設定包含伺服器主機、連接埠、連線數量限制及 SSL 設定等資訊。

const rethinkdbdash = require('rethinkdbdash');

const r = rethinkdbdash({
  servers: [
    {
      host: '<XXXXXX>.stackhero-network.com',
      port: 28015
    }
  ],
  ssl: true,
  buffer: 20, // 最少保持開啟的連線數
  max: 100,   // 最大連線數
  timeoutGb: 30 * 1000, // 未使用連線的保留時間(毫秒)
  db: '<DATABASE>',
  authKey: '<PASSWORD>',
  // silent: true, // 如需關閉 stderr 日誌,可取消註解此行
});

請將 <XXXXXX>、<DATABASE> 及 <PASSWORD> 替換為您自己的設定值。

按照以上步驟,您的 RethinkDB 實例便會在 Stackhero 上安全地運作。如有任何疑問或需要進一步協助,歡迎隨時聯絡我們的支援團隊。