All Products
Search
Document Center

ApsaraDB RDS:Mengakses database eksternal melalui Internet dari instans RDS for PostgreSQL

Last Updated:Aug 22, 2026

Instans RDS for PostgreSQL berjalan di dalam Virtual Private Cloud (VPC) dan tidak dapat mengakses Internet publik secara langsung. Topik ini memandu Anda melalui konfigurasi NAT Gateway Internet dan entri Source Network Address Translation (SNAT) agar instans RDS for PostgreSQL Anda dapat terhubung ke database eksternal—MySQL, SQL Server, PostgreSQL, atau Redis—melalui Internet menggunakan ekstensi Foreign Data Wrapper (FDW).

Entri SNAT memberikan akses outbound ke Internet untuk instans tersebut. Jaringan eksternal tidak dapat mengakses instans melalui NAT Gateway.

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

  • Instans RDS for PostgreSQL. Lihat Buat instans RDS for PostgreSQL dengan cepat.

  • Database target (MySQL, SQL Server, PostgreSQL, atau Redis) yang dapat diakses melalui Internet dengan alamat IP publik.

  • Ekstensi FDW yang didukung oleh versi RDS for PostgreSQL Anda. Periksa Ekstensi yang didukung oleh RDS for PostgreSQL untuk ekstensi yang diperlukan berdasarkan jenis database:

    • MySQL: mysql_fdw

    • SQL Server: tds_fdw

    • PostgreSQL: postgres_fdw

    • Redis: redis_fdw

  • Akun pada instans RDS for PostgreSQL. Lihat Buat akun.

  • Akun pada database target, serta database yang berisi data.

Sebelum mengonfigurasi FDW, kumpulkan informasi berikut dari database target:

  • Alamat IP publik atau hostname.

  • Nomor port (default: 3306 untuk MySQL).

  • Nama database.

  • Username dan password untuk koneksi FDW.

Konfigurasi Internet NAT gateway

Langkah 1: Buat NAT gateway

  1. Masuk ke Konsol NAT Gateway.

  2. Pada halaman Internet NAT Gateway, klik Create Internet NAT Gateway.

  3. (Opsional) Jika ini pertama kalinya Anda menggunakan NAT Gateway, klik Create Service-linked Role di bagian Service-linked Role Creation. Tombol ini muncul di halaman Internet NAT Gateway.

  4. Pada halaman Create Internet NAT Gateway, atur parameter berikut lalu klik Buy Now.

    Tabel di bawah hanya mencantumkan parameter utama. Untuk semua parameter, lihat Gunakan fitur SNAT Internet NAT gateway untuk mengakses Internet.
    Parameter Deskripsi
    Region Pilih wilayah yang sama dengan instans RDS for PostgreSQL Anda
    Network And Zone Pilih VPC dan vSwitch dari instans RDS for PostgreSQL Anda. Untuk menemukan VPC, buka halaman Database Connection di Konsol RDS
    Network Type Pilih Internet NAT Gateway
    EIP Pilih Configure Later
  5. Pada halaman Confirm, tinjau konfigurasi lalu klik Activate Now.

Setelah gateway dibuat, gateway tersebut akan muncul di halaman Internet NAT Gateway.

创建NAT网关

Langkah 2: Asosiasikan Elastic IP Address (EIP)

  1. Di Konsol NAT Gateway, klik ID instans NAT gateway yang telah Anda buat.

  2. Pada tab Associated EIP, klik Associate EIP.

  3. Pada kotak dialog Associate EIP, pilih Purchase and Associate EIP.

    绑定弹性公网IP

  4. Klik OK.

EIP akan muncul di bagian Associated EIP.

已绑定的弹性公网IP

Langkah 3: Buat entri SNAT

  1. Di Konsol NAT Gateway, klik ID instans NAT gateway yang telah Anda buat.

  2. Pada tab SNAT, klik Create SNAT Entry.

  3. Konfigurasi parameter berikut lalu klik OK.

    Parameter Deskripsi
    SNAT Entry Pilih vSwitch Granularity. Semua instans dalam vSwitch menggunakan EIP untuk mengakses Internet
    Select vSwitch Pilih vSwitch dari instans RDS for PostgreSQL Anda
    Select EIP Pilih EIP yang diasosiasikan pada langkah sebelumnya

Entri SNAT akan muncul di SNAT Entry List.

已配置的SNAT

Konfigurasi database target

Tambahkan EIP ke daftar putih atau aturan firewall database target agar menerima koneksi dari instans RDS Anda.

Konfigurasi instans RDS for PostgreSQL

Langkah-langkah berikut menggunakan database MySQL sebagai contoh. Ekstensi mysql_fdw digunakan sepanjang proses. Ganti nama ekstensi dan opsi FDW dengan nilai yang sesuai untuk jenis database target Anda.

Langkah 1: Hubungkan ke instans RDS

Hubungkan ke instans RDS for PostgreSQL Anda. Lihat Hubungkan ke instans PostgreSQL.

Langkah 2: Instal ekstensi FDW

Jalankan perintah berikut:

CREATE EXTENSION mysql_fdw;

Langkah 3: Buat definisi server

Buat definisi server yang mengarah ke database target. Ganti placeholder dengan nilai aktual:

CREATE SERVER

Contoh untuk database MySQL:

CREATE SERVER mysql_server80
FOREIGN DATA WRAPPER mysql_fdw OPTIONS (
  host 'XX.XX.XX.XX',
  port '3306'
);

Output yang diharapkan:

CREATE SERVER

Langkah 4: Buat pemetaan pengguna

Petakan definisi server ke pengguna di instans RDS. Hal ini memungkinkan pengguna melakukan autentikasi ke database MySQL target:

CREATE USER MAPPING

Contoh:

CREATE USER MAPPING
FOR pg_client SERVER mysql_server80 OPTIONS (
  username 'testuser',
  password 'U123456!'
);

Output yang diharapkan:

CREATE USER MAPPING

Langkah 5: Buat tabel eksternal

Buat tabel eksternal yang dipetakan ke tabel di database target. Nama dan tipe kolom harus sesuai dengan tabel remote:

CREATE FOREIGN TABLE

Contoh:

CREATE FOREIGN TABLE mysql_fdw_test (
  id int,
  name varchar(10)
)
SERVER mysql_server80 OPTIONS (
  dbname 'testdb',
  table_name 'test'
);

Output yang diharapkan:

CREATE FOREIGN TABLE

Langkah 6: Verifikasi koneksi

Lakukan kueri pada tabel eksternal untuk memastikan data dikembalikan dari database MySQL target:

SELECT * FROM mysql_fdw_test;

Jika kueri mengembalikan baris dari database target, konfigurasi telah selesai.

Langkah selanjutnya