全部产品
Search
文档中心

:Mengelola akun dengan menggunakan skema

更新时间:Jun 25, 2025

ApsaraDB RDS for PostgreSQL tidak menyediakan akun superuser. Kami menyarankan Anda membuat akun terpisah untuk setiap basis data, kemudian mengelola objek dari setiap akun menggunakan skema yang sesuai.

Catatan Dalam contoh ini, akun istimewa myuser yang dibuat saat Anda membuat instance ApsaraDB RDS digunakan untuk membuat akun bernama newuser.

Solusi 1

  1. Gunakan akun istimewa myuser untuk membuat akun bernama newuser yang memiliki izin untuk masuk ke basis data.
    CREATE USER newuser LOGIN PASSWORD 'password';

    Deskripsi:

    • USER: Nama pengguna dari akun.
    • password: Kata sandi dari akun.
  2. Buat skema untuk akun newuser.
    CREATE SCHEMA newuser;
    GRANT newuser to myuser;
    ALTER SCHEMA newuser OWNER TO newuser;
    REVOKE newuser FROM myuser;
    Catatan
    • Jika peran myuser tidak dilampirkan ke akun newuser sebelum Anda menjalankan pernyataan ALTER SCHEMA newuser OWNER TO newuser, kesalahan berikut akan dilaporkan:

         ERROR:  must be member of role "newuser"
    • Setelah memberikan izin OWNER kepada akun newuser, kami sarankan melepas peran myuser dari akun newuser untuk memastikan keamanan instance RDS.

  3. Masuk ke basis data menggunakan akun newuser.
    psql -U newuser -h intranet4example.pg.rds.aliyuncs.com -p 3433 pg001
    Password for user newuser:
    psql.bin (9.4.4, server 9.4.1)
    Type "help" for help.

Solusi 2

  1. Gunakan akun istimewa myuser untuk membuat akun bernama newuser yang memiliki izin untuk masuk ke basis data.
    CREATE USER newuser CREATEDB LOGIN PASSWORD 'password';

    Deskripsi:

    • USER: Nama pengguna dari akun.
    • password: Kata sandi dari akun.
    • CREATEDB: Memberikan akun newuser izin untuk membuat basis data.
  2. Masuk ke basis data menggunakan akun newuser.
    psql -U <Endpoint of the RDS instance> -p 3433 -U newuser <Database name>
    CREATE DATABASE
  3. Buat skema untuk akun newuser.
    CREATE SCHEMA newuser;
    GRANT myuser to newuser;
    ALTER SCHEMA myuser OWNER TO newuser;
    REVOKE newuser FROM myuser;
    Catatan
    • Jika peran myuser tidak dilampirkan ke akun newuser sebelum Anda menjalankan pernyataan ALTER SCHEMA myuser OWNER TO newuser, kesalahan berikut akan dilaporkan:

        ERROR:  must be member of role "newuser"
    • Setelah memberikan izin OWNER kepada akun newuser, kami sarankan melepas peran myuser dari akun newuser untuk memastikan keamanan instance RDS.

  4. Masuk ke basis data menggunakan akun newuser.
    psql -U newuser -h intranet4example.pg.rds.aliyuncs.com -p 3433 pg001
    Password for user newuser:
    psql.bin (9.4.4, server 9.4.1)
    Type "help" for help.