主にPostgreSQL作業ログ
Publish date: Feb 23, 2020全てのサービスの現在のステータスを確認する
$ service --status-all
$ service postgresql status
$ service postgresql restart
PostgreSQLを読み込まないので.env.productionの
DB_HOST=にループバックアドレスを指定
下記は.env.production一部抜粋 (最終的に空欄でOKだった)
# psql -U mastodon mastodon_production -h 127.0.0.1
psql: could not connect to server: Connection refused
Is the server running on host "127.0.0.1" and accepting
TCP/IP connections on port 5432?
【問題1】そもそもローカルから疎通が取れない
【問題2】初期デフォルトのDBにpg_dumpしたものが、まだ残っている
二度目にpg_dumpしてきたやつについては下記のようにやり直す。
- 論理DBを消す (初期化)
- 論理DBを作成
- マイグレーション (テーブルやカラムを作成)
- リストア
PostgreSQLの初期化
$ service postgresql initdb
↑Ubuntuはできなかった。そういう仕様らしい。
ところが、Ubuntu の PostgreSQL パッケージをインストールしても、initdb が見つかりません (実際には別の場所にインストールしているのですが、これは後述します)
postgresユーザーに切り替え&直接パスを指定する必要があった。
$ sudo su postgres -
$ /usr/lib/postgresql/9.6/bin/initdb /var/lib/postgresql/9.6/main
論理DBの作成
postgresユーザーでpsqlして
$ psql
# CREATE DATABASE mastodon_production ENCODING 'UTF-8';
# CREATE USER mastodon CREATEDB;
パスワードの設定をします。
# ALTER ROLE mastodon WITH PASSWORD '****';
mastodonユーザーでDB名を指定して入る
$ psql mastodon_production
リストア
gzipで圧縮したものを解凍して、出力した値をpsqlコマンドでmastodon_productionにリストアしていきます。
$ scp -i ~/.ssh/**.pem dump-latest.sql.gz ******@*.***.6.***:~/
$ gzip -dc dump-latest.sql.gz | psql -U postgres -d mastodon_production
時間がなくなってきたので
一時停止してバックグラウンド実行させたい
(参照) 実行中のコマンドをバックグランドに切り替える
$ bg 1
Command 'bd' not found, but can be installed with:
sudo apt install bd
bgコマンド、ないんかーい😢
screen?
やってません💢
$ sudo apt install bg
インストールに時間かかりそう
今日は諦めてここまで。