シェルスクリプトでpostgresqlのユーザー及びデータベースを作成する

環境変数でpostgresqlのパスワードを定義すると、対話無しでSQL文が実行できる

 

 

 

SQL文(サンプル)

#ユーザーの作成
CREATE ROLE [user_name] WITH LOGIN PASSWORD '[password]';
# データベースの作成
create database [db_name];

 

 

シェルスクリプト

# !/bin/sh

# 環境変数
export PGPASSWORD=pass

DBNAME="test_db" # 作成するデータベース名
PGUSER="test_user" # データベースユーザ名
PASS="pass" #ユーザーパスワード

# postgresqlでユーザー及びデータベース作成
psql -U postgres -c "CREATE ROLE $PGUSER WITH LOGIN PASSWORD '$PASS';"
psql -U postgres -c "create database $DBNAME;"

 

コメント

タイトルとURLをコピーしました