サーバー情報
【さくらのVPS】
メモリ:8GB
ストレージ:SSD 400GB
CPU:6コア
OS
CentOS7 x86_64
【さくらのVPS】
メモリ:8GB
ストレージ:SSD 400GB
CPU:6コア
CentOS7 x86_64
【さくらのVPS】
メモリ:8GB
ストレージ:SSD 400GB
CPU:6コア
CentOS7 x86_64
Python:3.6.8
pip:9.0.3
git:1.8.3.1
sql:9.2.24
PostgreSQL:9.2.24
Nginx:1.16.1
まずはPostgreSQLの詳細設定を行うため、パスワードの登録を行います。
PostgreSQLのパスワードを設定する
次に、PostgreSQLの初期設定を行いうため、下記ディレクトリに移送します。
コマンド:cd /var/lib/pgsql
PostgreSQLの設定情報を変更するため、ユーザーの切替を行います。
下記コマンドを実行し、データベースの初期化を実施します。
【encoding】
データベース内の文字コードを指定することが出来ます。
Djangoを用いて開発を行う場合には”UTF8″にしておきましょう。
【no-locale】
localeサポートは不要なので切っておきます。
【pgdata】
initdbコマンドは、環境変数”pgdata”で指定されたディレクトリをデータベースクラスタとして初期化します。
また initdbコマンドは、内部で、initdbコマンドを実行したユーザー (postgres) をデータベーススーパーユーザとして登録します。
PostgreSQLの設定内容を変更したので、起動してみましょう。
起動コマンド
systemctl start postgresql.service
サーバー起動時に自動的にPostgreSQLが起動するように設定しておきましょう。
自動起動コマンド
systemctl enable postgresql
空き容量のチェックを行います。
PostgreSQLにユーザー「postgres」で入ります。
「List of datadases」では「Owner」に該当します。
postgresユーザーに変更
sudo -u postgres psql
PostgreSQLにデータベースを作成します。
「List of datadases」では「Name」に該当します。
※データベース名:●●●
データベース作成
create database ●●●;
ここで設定したユーザー名、パスワードは、Django内の「settings.py」で設定するため覚えておきましょう。
PostgreSQL内で規定するユーザー名、パスワードを設定します。
※ユーザー名:■■■、パスワード:▲▲▲
ユーザー、パスワード設定
create user ■■■ with password ‘▲▲▲’;
ここで設定したユーザー名、パスワードは、Django内の「settings.py」で設定するため覚えておきましょう。
再度、”psql -l”コマンドを実行し「List of datadases」を表示し、追加したデータベースの「Owner」欄にpostgresと記載されていることを確認します。
作成したデータベースの権限を、作成したユーザーに全て移行します。
※データベース名:●●●、ユーザー名:■■■
権限の移行
GRANT ALL PRIVILEGES ON DATABASE ●●● TO ■■■;
「List of datadases」の「Access privileges」欄にユーザーが追加されていることを確認します。
データベースの作成と権限の移行が完了したら、“postgres”ユーザーでの編集を終了します。
PostgreSQLの編集を終了
\q
変更を行う前に、バックアップファイルの作成を行います。
設定ファイルのコピー
cp -p pg_hba.conf pg_hba.conf.backup
cp -p postgresql.conf postgresql.conf.backup
下記内容を追加する。
※〇.〇.〇.〇:サーバーのIPアドレス
host all all 〇.〇.〇.〇/32 md5
下記内容を変更する。
listen_addresses = ‘*’
PostgreSQLを再起動し、リロードを実行して設定を反映させましょう。
再起動
systemctl restart postgresql
リロード
systemctl reload postgresql