web-dev-qa-db-ja.com

bashオートメーションのコマンドラインからPostgresのユーザーを作成する方法

Ubuntu 12.04とPostgress 9.2を使用しています。

このパスワードでこのユーザーを作成する必要があります。

postgres://admin:[email protected]:5432

コマンドラインからそれを行う方法は? bashスクリプトで自動化する必要があります。新規インストールしました。

53
Tampa

これにより、localhostにパスワードtest101でユーザーadminが作成されます。

psql -c "CREATE USER admin WITH PASSWORD 'test101';"
93
Tomas Greif

任意のユーザーから実行するには、Sudo -u postgresそれに:

Sudo -u postgres bash -c "psql -c \"CREATE USER vagrant WITH PASSWORD 'vagrant';\""
33
mimoralea

たとえば、元のdockerイメージで実行するには、su -cコマンドとpostgresユーザーとpsqlの組み合わせ:

su -c "psql -c \"CREATE ROLE my_user WITH LOGIN PASSWORD 'my_password' \"" postgres
2
anj

ルートから実行している場合、could not change directory to "/root": Permission denied
だから、-i このような:
Sudo -i -u postgres psql -c "CREATE USER myuser WITH PASSWORD 'myuser1234';"

0
Iman Mirzadeh