How to access the discourse database?

@Divert さん、あなたのために用意しましたよ:

標準サポート構成の OOTB(標準設定)シングルコンテナモードを使用しているものと仮定します:

cd /var/discourse
./launcher enter app
su discourse
psql discourse

すべてが正常に動作していれば、discourse ユーザーとして discourse DB に接続され、PostgreSQL および SQL コマンドを実行できる状態になります。

次に、DB 内のすべてのテーブルを一覧表示したい場合は、以下のようにします:

\dt

「setting」という単語を含むすべてのテーブルを一覧表示したい場合は、以下のようにします:

\dt *setting* 

興味のあるテーブル(例えば users テーブル)が見つかったら、以下のようにテーブル構造を検証できます:

\d users

(例えば、効率的な方法ではありませんが)最初の 10 人のユーザー(id の降順で、10 件のみ)を検証したい場合は、以下のようにします:

SELECT * FROM users ORDER BY id desc LIMIT 10;

とにかく、お分かりいただけたと思います。SQL に慣れている方なら、これは朝飯前です。

ここでは誰もが、本番環境ではなくステージング環境で試すことをお勧めします(何かを壊しても、再構築して最初からやり直せるため)ので、楽しんでください!

本番システムで実際のユーザーを扱う前に、技術に十分慣れるまで(少なくとも基礎をマスターするまで)は遊ばないでください。また、必ず事前に完全なバックアップを取ってください :slight_smile:

@Divert さん、楽しんでください


注: DB でのこのような「遊び」や「自己学習」は、meta の support トピックの対象外です。つまり、基本的には自己責任となります。お楽しみください!