How to Change the Owner of a PostgreSQL Database
Summary: in this tutorial, you will learn how to change the owner of a database to another in PostgreSQL.
In PostgreSQL, a database object always has an owner which is the role that created the object including the database.
To change the owner of a database to another, you can use the ALTER
DATABASE
statement:
In this syntax:
- First, specify the database name that you want to change the owner after the
ALTER
DATABASE
keyword - Second, specify the new owner, an existing role, in the
OWNER
TO
clause.
Changing database owner example
First, connect to the PostgreSQL using postgres
user via psql
:
Second, create a new role with the CREATEDB
privilege:
Third, create another role called steve
:
Fourth, connect to the PostgreSQL server using the alex
role:
Fifth, create a new database called scm
:
Sixth, quit alex
‘s session:
Seven, show the scm
database in the postgres
‘ session:
Output:
The output shows that the owner of scm
database is alex
.
Eight, change the owner of the scm
database from alex
to steve
:
Ninth, show the scm
database again:
Output:
The output shows that the owner of the scm
changed to steve
.
Summary
- Use the
ALTER DATABASE...OWNER TO
statement to change the owner of a database to a new one.