プロジェクト

全般

プロフィール

操作

ブロックされてないことにする荒業

他インスタンスのユーザーからブロックされると,そいつのつぶやきは過去の分を含め読めなくなってしまう。次の手順で丼のDBを直接いぢると,読んだりお気に入りやブーストをつけたりできるようになる。返信もできるが,たぶん相手には伝わらない。
PostgreSQL対応のGUIなクライアントとして,ここではHeidiSQLを使う。

HeidiSQLの設定

[設定] タブ

項目
ネットワーク種別 PostgreSQL (SSH tunnel)
Library libpq-12.dll
ホスト名 / IP localhost
ユーザー mastodon
パスワード ↑のパスワード
ポート 5432 (デフォルト)
データベース mastodon_production
コメント 任意

[SSHトンネル] タブ

項目
plink.exe 欄外を参照。
SSH ホスト + ポート 丼鯖のホスト名, 22
ユーザー名 mastodon
パスワード ↑のパスワード
plink.exe のタイムアウト 4 (デフォルト)
秘密鍵ファイル sshdを鍵認証必須に設定した場合,指定
ローカルポート 3307 (デフォルト)
  • PuTTYをお持ちの方 ⇒ PuTTYのインスコ先にあるplink.exeのフルパス名。
  • PuTTYをお持ちでない方 ⇒ 入力欄下の “plink.exe をダウンロード” を踏むと,PuTTYの配布元の頁が開く。最新版のダウンロードの頁から “Alternative binary files” のplink.exeをダウンロードして, heidisql.exeと同じフォルダーへ置く。入力欄には “plink.exe” と入れる。

テーブルの操作

  1. 左ペインのツリーから “public” を選択。
  2. 右ペインのタブ [クエリ] へ次を入力し, [F9] で実行。ブロックされている人のid (自インスタンス内の通し番号) が判る。

    SELECT accounts.id, accounts.username
    FROM accounts
    WHERE accounts.username = '<ブロックされている人の名前>' AND accounts.domain IS NULL;
    
  3. 続いて次を入力し, [F9] で実行。その人がどこの誰からブロックされているか判る。ブロックされてないことにしたい人のid (テーブルblocks内の通し番号) を控える。

    SELECT blocks.id, accounts.url
    FROM accounts, blocks
    WHERE blocks.target_account_id = <ブロックされている人のid> AND blocks.account_id = accounts.id;
    
  4. 左ペインの “public” を展開し,テーブル “blocks” を選択。

  5. 右ペインのタブ [データ] を開き,手順3で控えたidの行を選択。

  6. Ctrl+Delを押す。

  7. SSHクライアントから, mastodon@丼鯖のホスト名 へログイン。

  8. 次のコマンドを実行。十数秒くらい待って, “OK” と返ったら完了。

    $ cd live
    $ bin/tootctl cache clear
    
  9. WWWブラウザで,丼のホームを再読み込み。

  10. @ブロックされてないことにした人の名前 を検索し,そいつのつぶやきを表示できることを確認。

  11. HeidiSQL, SSHクライアントを終了。

白林檎 美和 さんが約4年前に更新 · 2件の履歴