PostgreSQLでユーザを削除する手順を記します。
使用したOSはCentOS6になります。
また、使用したPostgreSQLのバージョンは以下の通りです。
postgres=# select version(); version ------------------------------------------------------------------------------------------------------------------ PostgreSQL 8.4.13 on x86_64-redhat-linux-gnu, compiled by GCC gcc (GCC) 4.4.6 20120305 (Red Hat 4.4.6-4), 64-bit (1 行)
postgresユーザにsuしdropuserコマンドでユーザを削除してみます。
postgresユーザにパスワードを設定していないため、以下の操作でpostgresユーザにsuしました。
[sakura@centos6 ~]$ su - パスワード: [root@centos6 ~]# su - postgres -bash-4.1$
以下の構文で登録されているユーザを削除することができます。
dropuser ユーザ名
対話式でユーザを削除する場合は、ユーザ名は不要です。
dropuser
実際にユーザを作成しdropuserコマンドでユーザを削除してみます。
-bash-4.1$ psql -c 'select usename from pg_user;' usename ---------- postgres (1 行)
-bash-4.1$ createuser sakura 新しいロールをスーパーユーザとしますか? (y/n)y
-bash-4.1$ psql -c 'select usename from pg_user;' usename ---------- postgres sakura (2 行)
-bash-4.1$ dropuser sakura
-bash-4.1$ psql -c 'select usename from pg_user;' usename ---------- postgres (1 行)
ユーザ削除を行うSQLは以下の構文になります。
DROP USER ユーザ名 ;
実際にユーザを追加し、DROP USERにて削除してみます。
postgres=# CREATE USER sakura WITH PASSWORD 'sakurapass'; CREATE ROLE postgres=# SELECT usename FROM pg_user; usename ---------- postgres sakura (2 行) postgres=# DROP USER sakura; DROP ROLE postgres=# SELECT usename FROM pg_user; usename ---------- postgres (1 行) postgres=#