Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menghubungkan ke instans DB yang menjalankan mesin basis data PostgreSQL
Setelah Amazon RDS menyediakan instans DB, Anda dapat menggunakan aplikasi klien SQL standar untuk terhubung ke instans. Sebelum Anda dapat terhubung ke instans DB, instans tersebut harus tersedia dan dapat diakses. Apakah Anda dapat terhubung ke instans dari luar VPC atau tidak tergantung pada cara Anda membuat instans DB Amazon RDS:
Jika Anda membuat instans DB sebagai publik, perangkat dan instans Amazon EC2 di luar VPC dapat terhubung ke basis data Anda.
Jika Anda membuat instans DB sebagai publik, hanya perangkat dan instans Amazon EC2 di dalam Amazon VPC yang dapat terhubung ke basis data Anda.
Untuk memeriksa apakah instans DB Anda bersifat publik atau pribadi, gunakan AWS Management Console untuk melihat tab Konektivitas & keamanan untuk instans Anda. Di bagian Keamanan, Anda dapat menemukan nilai "Dapat diakses publik", dengan Tidak untuk pribadi, Ya untuk publik.
Untuk mempelajari selengkapnya tentang berbagai konfigurasi Amazon RDS dan Amazon VPC serta pengaruhnya terhadap aksesibilitas, lihat Skenario untuk mengakses instans DB di VPC.
Daftar Isi
- Menginstal klien psql
- Menemukan informasi koneksi untuk RDS untuk PostgreSQL DB instance
- Menggunakan pgAdmin untuk terhubung ke instans RDS for PostgreSQL DB
- Menggunakan psql untuk terhubung ke instans RDS for PostgreSQL DB Anda
- Menghubungkan ke RDS untuk PostgreSQL dengan Driver Amazon Web Services () JDBC AWS
- Menghubungkan ke RDS untuk PostgreSQL dengan Driver Python Amazon Web Services ()AWS
- Memecahkan masalah koneksi ke instans RDS for PostgreSQL Anda
Menginstal klien psql
Untuk terhubung ke instans DB Anda dari instans EC2, Anda dapat menginstal klien PostgreSQL pada instans EC2. Untuk menginstal psql di Amazon Linux 2023, jalankan perintah berikut:
sudo dnf install postgresql15
Untuk menginstal psql di Amazon Linux 2, jalankan perintah berikut:
sudo amazon-linux-extras install postgresql14
Untuk menginstal psql di Ubuntu, jalankan perintah berikut:
sudo apt-get install -y postgresql14
Menemukan informasi koneksi untuk RDS untuk PostgreSQL DB instance
Jika instans DB tersedia dan dapat diakses, Anda dapat terhubung dengan memberikan informasi berikut ke aplikasi klien SQL:
-
Titik akhir instans DB, yang berfungsi sebagai nama host (nama DNS) untuk instans.
-
Port tempat instans DB penulis mendengarkan. Port default untuk PostgreSQL adalah 5432.
-
Nama pengguna dan kata sandi untuk instans DB. Default 'nama pengguna utama' untuk PostgreSQL adalah
postgres
. -
Nama dan kata sandi basis data (nama DB).
Anda dapat memperoleh detail ini dengan menggunakan, AWS CLI describe-db-instancesperintah AWS Management Console, atau operasi Amazon RDS API DescribedBInstances.
Untuk menemukan titik akhir, nomor port, dan nama DB menggunakan AWS Management Console
Masuk ke AWS Management Console dan buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.
-
Buka konsol RDS, lalu pilih Basis data untuk menampilkan daftar instans DB Anda.
-
Pilih nama instans PostgreSQL DB untuk menampilkan detailnya.
-
Di tab Konektivitas & keamanan, salin titik akhir. Selain itu, catat nomor port. Anda memerlukan titik akhir dan nomor port untuk terhubung ke instans DB.
-
Pada tab Konfigurasi, perhatikan nama DB. Jika Anda membuat basis data saat membuat instans RDS for PostgreSQL, Anda melihat nama yang tercantum di bawah nama DB. Jika Anda tidak membuat basis data, nama DB akan menampilkan tanda hubung (‐).
Berikut ini adalah dua cara untuk terhubung dengan instans PostgreSQL DB. Contoh pertama menggunakan pgAdmin, alat administrasi dan pengembangan sumber terbuka yang populer untuk PostgreSQL. Contoh kedua menggunakan psql, utilitas baris perintah yang merupakan bagian dari penginstalan PostgreSQL.
Menggunakan pgAdmin untuk terhubung ke instans RDS for PostgreSQL DB
Anda dapat menggunakan alat sumber terbuka pgAdmin untuk terhubung ke instans RDS for PostgreSQL DB. Anda dapat mengunduh dan menginstal pgAdmin dari http://www.pgadmin.org/
Untuk terhubung ke instans RDS for PostgreSQL DB menggunakan pgAdmin
-
Luncurkan aplikasi pgAdmin di komputer klien Anda.
-
Pada tab Dasbor, pilih Tambahkan Server Baru.
-
Di kotak dialog Buat - Server, ketik nama pada tab Umum untuk mengidentifikasi server di pgAdmin.
-
Di tab Koneksi, ketik informasi berikut dari instans DB Anda:
-
Untuk Host, ketik titik akhir, misalnya
mypostgresql.c6c8dntfzzhgv0.us-east-2.rds.amazonaws.com
. -
Untuk Port, ketik port yang ditetapkan.
-
Untuk Nama pengguna, ketik nama pengguna yang Anda masukkan saat membuat instans DB (jika Anda mengubah 'nama pengguna utama' dari default,
postgres
). -
Untuk Kata sandi, ketik kata sandi yang Anda masukkan saat membuat instans DB.
-
-
Pilih Simpan.
Jika Anda mengalami masalah saat menghubungkan, lihat Memecahkan masalah koneksi ke instans RDS for PostgreSQL Anda.
-
Untuk mengakses basis data di browser pgAdmin, perluas Server, instans DB, dan Basis data. Pilih nama basis data instans DB.
-
Untuk membuka panel tempat Anda dapat memasukkan perintah SQL, pilih Alat, Alat Kueri.
Menggunakan psql untuk terhubung ke instans RDS for PostgreSQL DB Anda
Anda dapat menggunakan instans lokal dari utilitas baris perintah psql untuk terhubung ke instans RDS for PostgreSQL DB. Anda memerlukan menginstal klien PostgreSQL atau psql pada komputer klien Anda.
Anda dapat mengunduh klien PostgreSQL dari situs web PostgreSQL
Untuk terhubung ke instans RDS for PostgreSQL DB menggunakan psql, Anda perlu memberikan informasi host (DNS), kredensial akses, dan nama basis data.
Gunakan salah satu format berikut untuk terhubung ke instans RDS for PostgreSQL DB. Saat terhubung, Anda diminta memasukkan kata sandi. Untuk pekerjaan atau skrip batch, gunakan opsi --no-password
. Opsi ini ditetapkan untuk seluruh sesi.
catatan
Upaya koneksi dengan --no-password
akan gagal saat server memerlukan autentikasi kata sandi dan kata sandi tidak tersedia dari sumber lain. Lihat mengetahui informasi selengkapnya, lihat dokumentasi psql
Jika Anda pertama kali terhubung ke instans DB ini, atau jika Anda belum membuat basis data untuk instans RDS for PostgreSQL ini, Anda dapat terhubung ke basis data postgres menggunakan 'nama pengguna utama' dan kata sandi.
Untuk Unix, gunakan format berikut.
psql \ --host=<DB instance endpoint> \ --port=<port> \ --username=<master username> \ --password \ --dbname=<database name>
Untuk Windows, gunakan format berikut.
psql ^ --host=<DB instance endpoint> ^ --port=<port> ^ --username=<master username> ^ --password ^ --dbname=<database name>
Misalnya, perintah berikut menghubungkan ke basis data bernama mypgdb
pada instans PostgreSQL DB bernama mypostgresql
menggunakan kredensial fiktif.
psql --host=mypostgresql.c6c8mwvfdgv0.us-west-2.rds.amazonaws.com --port=5432 --username=awsuser --password --dbname=mypgdb
Menghubungkan ke RDS untuk PostgreSQL dengan Driver Amazon Web Services () JDBC AWS
Amazon Web Services (AWS) JDBC Driver dirancang sebagai pembungkus JDBC tingkat lanjut. Pembungkus ini melengkapi dan memperluas fungsionalitas driver JDBC yang ada. Driver ini kompatibel dengan driver PgJDBC komunitas.
Untuk menginstal Driver AWS JDBC, tambahkan file AWS JDBC Driver .jar (terletak di aplikasiCLASSPATH
), dan simpan referensi ke driver komunitas masing-masing. Perbarui awalan URL koneksi masing-masing sebagai berikut:
-
jdbc:postgresql://
untukjdbc:aws-wrapper:postgresql://
Untuk informasi selengkapnya tentang Driver AWS JDBC dan petunjuk lengkap untuk menggunakannya, lihat repositori Amazon Web Services (AWS) JDBC Driver
Menghubungkan ke RDS untuk PostgreSQL dengan Driver Python Amazon Web Services ()AWS
Driver Python Amazon Web Services (AWS) dirancang sebagai pembungkus Python tingkat lanjut. Pembungkus ini melengkapi dan memperluas fungsionalitas driver Psycopg open-source. Driver AWS Python mendukung Python versi 3.8 dan lebih tinggi. Anda dapat menginstal aws-advanced-python-wrapper
paket menggunakan pip
perintah, bersama dengan paket psycopg
open-source.
Untuk informasi selengkapnya tentang Driver AWS Python dan petunjuk lengkap untuk menggunakannya, lihat repositori Amazon Web Services ()AWS Python
Memecahkan masalah koneksi ke instans RDS for PostgreSQL Anda
Topik
Kesalahan — FATAL: basis data name
tidak ada
Jika Anda menerima pesan kesalahan seperti FATAL: database
saat menghubungkan, coba gunakan nama basis data default postgres untuk opsi name
does not exist--dbname
.
Kesalahan — Tidak dapat terhubung ke server: Waktu koneksi habis
Jika Anda tidak dapat terhubung ke instans DB, kesalahan yang paling umum adalah Could not
connect to server: Connection timed out.
. Jika Anda menerima kesalahan ini, periksa hal berikut:
-
Periksa bahwa nama host yang digunakan adalah titik akhir instans DB dan bahwa nomor port yang digunakan sudah benar.
-
Pastikan bahwa aksesibilitas publik instans DB tersebut diatur ke Ya untuk mengizinkan koneksi eksternal. Untuk mengubah pengaturan Akses publik, lihat Memodifikasi instans DB Amazon RDS.
-
Pastikan bahwa pengguna yang terhubung ke basis data memiliki akses CONNECT. Anda dapat menggunakan kueri berikut untuk memberikan akses koneksi ke basis data tersebut.
GRANT CONNECT ON DATABASE
database name
TOusername
; -
Periksa bahwa grup keamanan yang ditetapkan ke instans DB memiliki aturan untuk memungkinkan akses melalui firewall yang mungkin dilalui koneksi Anda. Misalnya, jika instans DB dibuat menggunakan port default 5432, dan perusahaan Anda mungkin memiliki aturan firewall yang memblokir koneksi ke port tersebut dari perangkat perusahaan eksternal.
Untuk memperbaikinya, ubah instans DB untuk menggunakan port yang berbeda. Selain itu, pastikan bahwa grup keamanan yang diterapkan ke instans DB memungkinkan koneksi ke port baru. Untuk mengubah pengaturan Port basis data, lihat Memodifikasi instans DB Amazon RDS.
-
Lihat juga Kesalahan dengan aturan akses grup keamanan.
Kesalahan dengan aturan akses grup keamanan
Sejauh ini, masalah koneksi yang paling umum adalah dengan aturan akses grup keamanan yang ditetapkan untuk instans DB. Jika Anda menggunakan grup keamanan default saat membuat instans DB, grup keamanan kemungkinan tidak memiliki aturan akses yang memungkinkan Anda mengakses instans tersebut.
Agar koneksi dapat berfungsi, grup keamanan yang Anda tetapkan ke instans DB pada pembuatannya harus mengizinkan akses ke instans DB. Misalnya, jika instans DB dibuat di VPC, instans tersebut harus memiliki grup keamanan VPC yang mengotorisasi koneksi. Periksa apakah instans DB dibuat menggunakan grup keamanan yang tidak mengotorisasi koneksi dari perangkat atau instans Amazon EC2 tempat aplikasi tersebut berjalan.
Anda dapat menambahkan atau mengedit aturan masuk di grup keamanan. Untuk Sumber, memilih IP Saya akan mengizinkan akses ke instans DB dari alamat IP yang terdeteksi di browser Anda. Untuk informasi selengkapnya, lihat Memberikan akses ke instans DB di VPC Anda dengan membuat grup keamanan.
Atau, jika instans DB dibuat di luar VPC, instans tersebut harus memiliki grup keamanan basis data yang mengotorisasi koneksinya.
Untuk mengetahui informasi selengkapnya tentang grup keamanan Amazon RDS, lihat Mengontrol akses dengan grup keamanan.