

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mulai menggunakan Amazon RDS
<a name="CHAP_GettingStarted"></a>

Dalam contoh berikut, Anda dapat menemukan cara membuat dan menghubungkan ke instans DB menggunakan Amazon Relational Database Service (Amazon RDS). Anda dapat membuat instans DB yang menggunakan Db2, MariaDB, MySQL, Microsoft SQL Server, Oracle, atau PostgreSQL.

**penting**  
Sebelum dapat membuat atau terhubung ke instans DB, pastikan untuk menyelesaikan tugas dalam [Menyiapkan lingkungan Amazon RDS Anda](CHAP_SettingUp.md).

Pembuatan instans DB dan koneksi ke basis data pada instans DB sedikit berbeda untuk setiap mesin DB. Pilih salah satu mesin DB berikut yang ingin Anda gunakan untuk informasi mendetail tentang pembuatan dan koneksi ke instans DB. Setelah membuat dan terhubung ke instans DB, terdapat petunjuk yang dapat membantu Anda menghapus instans DB.

**Topics**
+ [Membuat dan menghubungkan ke instans DB MariaDB](CHAP_GettingStarted.CreatingConnecting.MariaDB.md)
+ [Membuat dan menghubungkan ke instans DB Microsoft SQL Server](CHAP_GettingStarted.CreatingConnecting.SQLServer.md)
+ [Membuat dan menghubungkan ke instans DB MySQL](CHAP_GettingStarted.CreatingConnecting.MySQL.md)
+ [Membuat dan menghubungkan ke instans DB Oracle](CHAP_GettingStarted.CreatingConnecting.Oracle.md)
+ [Membuat dan menghubungkan ke instans DB PostgreSQL](CHAP_GettingStarted.CreatingConnecting.PostgreSQL.md)
+ [Tutorial: Membuat server web dan instans DB Amazon RDS](TUT_WebAppWithRDS.md)
+ [Tutorial: Menggunakan fungsi Lambda untuk mengakses basis data Amazon RDS](rds-lambda-tutorial.md)

# Membuat dan menghubungkan ke instans DB MariaDB
<a name="CHAP_GettingStarted.CreatingConnecting.MariaDB"></a>

Tutorial ini membuat instans EC2 dan instans DB RDS for MariaDB. Tutorial ini menunjukkan cara mengakses instans DB dari instans EC2 menggunakan klien MySQL standar. Sebagai praktik terbaik, tutorial ini membuat instans DB privat dalam cloud privat virtual (VPC). Dalam kebanyakan kasus, sumber daya lain dalam VPC yang sama, seperti instans EC2, dapat mengakses instans DB, tetapi sumber daya di luar VPC tidak dapat mengaksesnya.

Setelah Anda menyelesaikan tutorial, ada subnet publik dan privat di setiap Zona Ketersediaan di VPC Anda. Dalam satu Zona Ketersediaan, instans EC2 berada di subnet publik, dan instans DB berada di subnet privat.

**penting**  
Tidak ada biaya untuk membuat Akun AWS. Namun, dengan menyelesaikan tutorial ini, Anda mungkin akan dikenai biaya untuk sumber daya yang digunakan. Anda dapat menghapus sumber daya ini setelah menyelesaikan tutorial jika tidak diperlukan lagi.

Diagram berikut menunjukkan konfigurasi setelah tutorial selesai.

![\[Instans EC2 dan instans DB MariaDB.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/getting-started-mariadb.png)


Tutorial ini memungkinkan Anda untuk membuat sumber daya Anda dengan menggunakan salah satu metode berikut:

1. Gunakan Konsol Manajemen AWS - [Buat instans EC2](#CHAP_GettingStarted.Creating.MariaDB.EC2) dan [Buat instance MariaDB DB](#CHAP_GettingStarted.Creating.MariaDB) 

1. Gunakan CloudFormation untuk membuat instance database dan instans EC2 - [(Opsional) Buat instance VPC, EC2, dan MariaDB menggunakan CloudFormation](#CHAP_GettingStarted.CFN.MariaDB) 

Metode pertama menggunakan **Easy create** untuk membuat instance MariaDB pribadi dengan. Konsol Manajemen AWS Di sini, Anda hanya menentukan jenis mesin DB, ukuran instans DB, dan pengidentifikasi instans DB. **Pembuatan mudah** menggunakan pengaturan default untuk opsi konfigurasi lainnya. 

Saat Anda menggunakan **Standard create** sebagai gantinya, Anda dapat menentukan lebih banyak opsi konfigurasi saat membuat instans DB. Opsi ini mencakup pengaturan untuk ketersediaan, keamanan, cadangan, dan pemeliharaan. Untuk membuat instans DB publik, Anda harus menggunakan **Pembuatan Standar**. Untuk informasi, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).

**Topics**
+ [Prasyarat](#CHAP_GettingStarted.Prerequisites.MariaDB)
+ [Buat instans EC2](#CHAP_GettingStarted.Creating.MariaDB.EC2)
+ [Buat instance MariaDB DB](#CHAP_GettingStarted.Creating.MariaDB)
+ [(Opsional) Buat instance VPC, EC2, dan MariaDB menggunakan CloudFormation](#CHAP_GettingStarted.CFN.MariaDB)
+ [Connect ke instance MariaDB DB](#CHAP_GettingStarted.Connecting.MariaDB)
+ [Hapus instans EC2 dan instans DB](#CHAP_GettingStarted.Deleting.MariaDB)
+ [(Opsional) Hapus instans EC2 dan instans DB yang dibuat dengan CloudFormation](#CHAP_GettingStarted.DeletingCFN.MariaDB)
+ [(Opsional) Menghubungkan instans DB Anda ke fungsi Lambda](#CHAP_GettingStarted.ComputeConnect.MariaDB)

## Prasyarat
<a name="CHAP_GettingStarted.Prerequisites.MariaDB"></a>

Sebelum memulai, selesaikan langkah-langkah di bagian berikut:
+ [Mendaftar untuk Akun AWS](CHAP_SettingUp.md#sign-up-for-aws)
+ [Buat pengguna dengan akses administratif](CHAP_SettingUp.md#create-an-admin)

## Buat instans EC2
<a name="CHAP_GettingStarted.Creating.MariaDB.EC2"></a>

Buat instans Amazon EC2 yang akan Anda gunakan untuk menghubungkan ke basis data Anda.

**Untuk membuat instans EC2**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di sudut kanan atas Konsol Manajemen AWS, pilih Wilayah AWS di mana Anda ingin membuat instans EC2.

1. Pilih **Dasbor EC2**, lalu pilih **Luncurkan instans** seperti yang ditampilkan dalam gambar berikut.  
![\[Dasbor EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_11.png)

   Halaman **Meluncurkan instans** akan terbuka.

1. Pilih pengaturan berikut di halaman **Meluncurkan instans**.

   1. Pada **Nama dan tag**, untuk **Nama**, masukkan **ec2-database-connect**.

   1. Pada **Gambar Aplikasi dan OS (Amazon Machine Image)**, pilih **Amazon Linux**, lalu pilih **AMI Amazon Linux 2023**. Biarkan default untuk pilihan lainnya.  
![\[Pilih Amazon Machine Image.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_12.png)

   1. Pada **Jenis instans**, pilih **t2.micro**.

   1. Pada **Pasangan kunci (login)**, pilih **Nama pasangan kunci** untuk menggunakan pasangan kunci yang ada. Untuk membuat pasangan kunci baru untuk instans Amazon EC2, pilih **Buat Pasangan kunci baru** lalu gunakan jendela **Buat pasangan kunci** untuk membuatnya.

      Untuk informasi selengkapnya tentang membuat key pair baru, lihat [Membuat key pair](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/get-set-up-for-amazon-ec2.html#create-a-key-pair) di *Panduan Pengguna Amazon EC2*.

   1. Untuk **Izinkan lalu lintas SSH** di **Pengaturan jaringan**, pilih sumber koneksi SSH ke instans EC2. 

      Anda dapat memilih **IP Saya** jika alamat IP yang ditampilkan benar untuk koneksi SSH. Jika tidak, Anda dapat menentukan alamat IP yang akan digunakan untuk menghubungkan ke instans EC2 di VPC Anda menggunakan Secure Shell (SSH). Untuk menentukan alamat IP publik Anda, di jendela atau tab browser yang berbeda, Anda dapat menggunakan layanan di [https://checkip.amazonaws.com](https://checkip.amazonaws.com/). Contoh alamat IP adalah 192.0.2.1/32.

       Dalam banyak kasus, Anda dapat menghubungkan melalui penyedia layanan Internet (ISP) atau dari belakang firewall Anda tanpa alamat IP statis. Jika demikian, tentukan rentang alamat IP yang digunakan oleh komputer klien.
**Awas**  
Jika menggunakan `0.0.0.0/0` untuk akses SSH, Anda memungkinkan semua alamat IP untuk mengakses instans publik EC2 Anda menggunakan SSH. Pendekatan ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans EC2 Anda menggunakan SSH.

      Gambar berikut menunjukkan contoh bagian **Pengaturan jaringan**.  
![\[Pengaturan jaringan untuk instans EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/EC2_RDS_Connect_NtwkSettings.png)

   1. Biarkan nilai default untuk bagian yang lainnya.

   1. Tinjau ringkasan konfigurasi instans EC2 Anda di panel **Ringkasan**, dan setelah Anda siap, pilih **Luncurkan instans**.

1. Di halaman **Status Peluncuran**, catat pengidentifikasi untuk instans EC2 baru Anda, misalnya: `i-1234567890abcdef0`.  
![\[Pengidentifikasi instans EC2 di halaman Status Peluncuran.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/getting-started-ec2-id.png)

1. Pilih pengidentifikasi instans EC2 untuk membuka daftar instans EC2, lalu pilih instans EC2 Anda.

1. Di tab **Detail**, catat nilai-nilai berikut, yang akan Anda butuhkan saat menghubungkan menggunakan SSH:

   1. Dalam **ringkasan Instance**, perhatikan nilai untuk ** IPv4 DNS Publik**.  
![\[Nama DNS publik EC2 pada tab Detail halaman Instans.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-ec2-public-dns.png)

   1. Di **Detail instans**, catat nilai untuk **Nama pasangan kunci**.  
![\[Nama pasangan kunci EC2 di tab Detail halaman Instans.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-ec2-key-pair.png)

1. Tunggu hingga **Status instans** untuk instans EC2 Anda berstatus **Berjalan** sebelum melanjutkan.

## Buat instance MariaDB DB
<a name="CHAP_GettingStarted.Creating.MariaDB"></a>

Blok bangunan dasar Amazon RDS adalah instans DB. Lingkungan ini adalah tempat Anda menjalankan basis data MariaDB Anda.

Dalam contoh ini, Anda menggunakan **Easy create untuk membuat** instance DB yang menjalankan mesin database MariaDB dengan kelas instans db.t4g.micro DB.

**Untuk membuat instans DB MariaDB dengan Pembuatan Mudah**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS di mana Anda ingin membuat instans DB.

1. Di panel navigasi, pilih **Basis data**.

1. Pilih **Buat database** dan pilih **Mudah buat**.   
![\[Opsi pembuatan mudah.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-option.png)

1. Di **Konfigurasi**, pilih **MariaDB**.

1. Untuk **ukuran instans DB**, pilih **Tingkat gratis** atau **Kotak Pasir**. **Tingkat gratis** muncul untuk akun paket gratis. **Kotak pasir** muncul untuk akun paket berbayar.

1. Untuk **Pengidentifikasi instans DB**, masukkan **database-test1**.

1. Untuk **Nama pengguna utama**, masukkan nama untuk pengguna utama, atau tetap gunakan nama default.

   Tampilan halaman **Membuat basis data** seperti gambar berikut. Untuk akun paket gratis, **tingkat gratis** muncul. Untuk akun paket berbayar, **Sandbox** muncul.  
![\[Buat halaman basis data.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-mariadb.png)

1. Untuk menggunakan kata sandi utama yang dibuat secara otomatis untuk instans DB, pilih **Buat kata sandi secara otomatis**.

   Untuk memasukkan kata sandi utama Anda, hapus **Buat kata sandi secara otomatis**, lalu masukkan kata sandi yang sama di Kata **sandi utama** dan **Konfirmasikan kata sandi utama**.

1. *Untuk mengatur koneksi dengan instans EC2 yang Anda buat sebelumnya, perluas **Siapkan koneksi EC2 -** opsional.*

   Pilih **Hubungkan ke sumber daya komputasi EC2**. Pilih instans EC2 yang Anda buat sebelumnya.  
![\[Siapkan opsi koneksi EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/EC2_RDS_Setup_Conn-EasyCreate.png)

1. Perluas **Lihat pengaturan default untuk Easy create**.   
![\[Pengaturan default Pembuatan mudah.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-view-default-maria.png)

   Anda dapat memeriksa pengaturan default yang digunakan dengan **Pembuatan mudah**. Kolom **Dapat diedit setelah basis data dibuat** menunjukkan opsi yang dapat Anda ubah setelah membuat basis data.
   + Jika pengaturan memiliki **Tidak** di kolom tersebut, dan Anda menginginkan pengaturan yang berbeda, Anda dapat menggunakan **Pembuatan Standar** untuk membuat instans DB.
   + Jika pengaturan memiliki **Ya** di kolom tersebut, dan Anda menginginkan pengaturan yang berbeda, Anda dapat menggunakan **Pembuatan Standar** untuk membuat instans DB, atau mengubah instans DB setelah Anda membuatnya untuk mengubah pengaturan.

1. Pilih **Buat basis data**.

   Untuk melihat nama pengguna dan kata sandi utama untuk instans DB, pilih **Lihat detail kredensial**.

   Anda dapat menggunakan nama pengguna dan kata sandi yang ditampilkan untuk terhubung ke instans DB sebagai pengguna utama.
**penting**  
Anda tidak dapat melihat kata sandi pengguna utama lagi. Jika Anda tidak mencatatnya, Anda mungkin harus mengubahnya.   
Jika perlu mengubah kata sandi pengguna utama setelah instans DB tersedia, Anda dapat mengubah instans DB untuk melakukannya. Untuk informasi selengkapnya tentang cara mengubah instans DB, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

1. Dalam daftar **Basis Data**, pilih nama instans DB MariaDB yang baru untuk menampilkan detailnya.

   Instans DB memiliki status **Membuat** hingga siap digunakan.  
![\[Detail instans DB.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/MariaDB-Launch06.png)

   Saat statusnya berubah menjadi **Tersedia**, Anda dapat terhubung ke instans DB. Tergantung pada kelas instans DB dan jumlah penyimpanan, diperlukan waktu hingga 20 menit sebelum instans baru tersedia.

## (Opsional) Buat instance VPC, EC2, dan MariaDB menggunakan CloudFormation
<a name="CHAP_GettingStarted.CFN.MariaDB"></a>

Alih-alih menggunakan konsol untuk membuat instance VPC, EC2, dan MariaDB, Anda dapat menggunakannya CloudFormation untuk menyediakan AWS sumber daya dengan memperlakukan infrastruktur sebagai kode. Untuk membantu Anda mengatur AWS sumber daya Anda menjadi unit yang lebih kecil dan lebih mudah dikelola, Anda dapat menggunakan fungsionalitas tumpukan CloudFormation bersarang. Untuk informasi selengkapnya, lihat [Membuat tumpukan di CloudFormation konsol](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) dan [Bekerja dengan tumpukan bersarang](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html). 

**penting**  
CloudFormation gratis, tetapi sumber daya yang CloudFormation menciptakan hidup. Anda dikenakan biaya penggunaan standar untuk sumber daya ini sampai Anda menghentikannya. Untuk informasi lebih lanjut, lihat [RDS untuk harga MariaDB](https://aws.amazon.com//rds/mariadb/pricing).
+ Unduh CloudFormation template
+ Konfigurasikan sumber daya Anda menggunakan CloudFormation

### Unduh CloudFormation template
<a name="CHAP_GettingStarted.CFN.MariaDB.Step1"></a>

 CloudFormation Template adalah file teks JSON atau YAMB yang berisi informasi konfigurasi tentang sumber daya yang ingin Anda buat di tumpukan. Template ini juga membuat VPC dan host bastion untuk Anda bersama dengan instance RDS.

Untuk mengunduh file template, buka tautan berikut, template [MariaDB CloudFormation ](https://github.com/aws-ia/cfn-ps-amazon-rds/blob/main/templates/rds-mariadb-main.template.yaml).

Di halaman Github, klik tombol *Unduh file mentah* untuk menyimpan file YAMAL template.

### Konfigurasikan sumber daya Anda menggunakan CloudFormation
<a name="CHAP_GettingStarted.CFN.MariabDB.Step2"></a>

**catatan**  
Sebelum memulai proses ini, pastikan Anda memiliki pasangan Kunci untuk instans EC2 di. Akun AWS Untuk informasi selengkapnya, lihat [Pasangan kunci Amazon EC2 dan instans Linux](https://docs.aws.amazon.com//AWSEC2/latest/UserGuide/ec2-key-pairs.html).

Ketika Anda menggunakan CloudFormation template, Anda harus memilih parameter yang benar untuk memastikan sumber daya Anda dibuat dengan benar. Ikuti langkah-langkah di bawah ini:

1. Masuk ke Konsol Manajemen AWS dan buka CloudFormation konsol di [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. Pilih **Buat tumpukan**.

1. Di bagian Tentukan templat, pilih **Unggah file templat dari komputer Anda**, lalu pilih **Berikutnya**.

1. Di halaman **Tentukan detail tumpukan**, atur parameter berikut:

   1. Tetapkan **nama Stack** ke **Maria DBTest Stack**.

   1. Di bawah **Parameter**, atur **Availability Zone** dengan memilih tiga zona ketersediaan.

   1. Di bawah **konfigurasi Linux Bastion Host**, untuk **Key Name**, pilih key pair untuk login ke instans EC2 Anda.

   1. Dalam pengaturan **konfigurasi Linux Bastion Host**, atur **rentang IP yang Diizinkan** ke alamat IP Anda. Untuk menyambung ke instans EC2 di VPC Anda menggunakan Secure Shell (SSH), tentukan alamat IP publik Anda menggunakan layanan di. [https://checkip.amazonaws.com](https://checkip.amazonaws.com) Contoh alamat IP adalah 192.0.2.1/32.
**Awas**  
Jika menggunakan `0.0.0.0/0` untuk akses SSH, Anda memungkinkan semua alamat IP untuk mengakses instans publik EC2 Anda menggunakan SSH. Pendekatan ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans EC2 Anda menggunakan SSH.

   1. Di bawah **konfigurasi Database General**, atur **kelas instance Database** ke **db.t3.micro**.

   1. Tetapkan **nama Database** ke**database-test1**.

   1. Untuk **nama pengguna master Database**, masukkan nama untuk pengguna master.

   1. Atur **Kelola kata sandi pengguna master DB dengan Secrets Manager** `false` untuk tutorial ini.

   1. Untuk **kata sandi Database**, tetapkan kata sandi pilihan Anda. Ingat kata sandi ini untuk langkah lebih lanjut dalam tutorial.

   1. Di bawah **konfigurasi Penyimpanan Database**, atur **tipe penyimpanan Database** ke **gp2**.

   1. Di bawah **konfigurasi Pemantauan Database**, atur **Aktifkan Performance Insights RDS** ke false.

   1. Biarkan semua pengaturan lainnya sebagai nilai default. Klik **Berikutnya** untuk melanjutkan.

1. Di halaman **tumpukan Tinjauan**, pilih **Kirim** setelah memeriksa database dan opsi host bastion Linux.

Setelah proses pembuatan tumpukan selesai, lihat tumpukan dengan nama *BastionStack*dan *RDSNS* untuk mencatat informasi yang Anda butuhkan untuk terhubung ke database. Untuk informasi selengkapnya, lihat [Melihat data CloudFormation tumpukan dan sumber daya di Konsol Manajemen AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-view-stack-data-resources.html).

## Connect ke instance MariaDB DB
<a name="CHAP_GettingStarted.Connecting.MariaDB"></a>

Anda dapat menggunakan aplikasi klien SQL standar untuk menghubungkan ke instans DB. Dalam contoh ini, Anda akan menghubungkan ke instans DB MariaDB menggunakan klien baris perintah mysql.

**Untuk menghubungkan ke instans DB MariaDB**

1. Temukan titik akhir (nama DNS) dan nomor port untuk instans DB Anda. 

   1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

   1. Di sudut kanan atas konsol Amazon RDS, pilih instans DB Wilayah AWS .

   1. Di panel navigasi, pilih **Basis data**.

   1. Pilih nama instans DB MariaDB untuk menampilkan detailnya. 

   1. Di tab **Konektivitas & keamanan**, salin titik akhir. Perhatikan juga nomor port. Anda memerlukan titik akhir dan nomor port untuk terhubung ke instans DB.   
![\[Hubungkan ke instans DB MariaDB.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/MariaDBConnect1.png)

1. Connect ke instans EC2 yang Anda buat sebelumnya dengan mengikuti langkah-langkah di [Connect to Linux Anda](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstances.html) di Panduan Pengguna *Amazon EC2*.

   Sebaiknya Anda menghubungkan ke instans EC2 menggunakan SSH. Jika utilitas klien SSH diinstal di Windows, Linux, atau Mac, Anda dapat menghubungkan ke instans menggunakan format perintah berikut:

   ```
   ssh -i location_of_pem_file ec2-user@ec2-instance-public-dns-name
   ```

   Misalnya, asumsikan bahwa `ec2-database-connect-key-pair.pem` disimpan di `/dir1` di Linux, dan DNS IPv4 publik untuk instans EC2 Anda adalah `ec2-12-345-678-90.compute-1.amazonaws.com`. Perintah SSH Anda akan tampak seperti berikut:

   ```
   ssh -i /dir1/ec2-database-connect-key-pair.pem ec2-user@ec2-12-345-678-90.compute-1.amazonaws.com
   ```

1. Dapatkan pembaruan keamanan dan perbaikan bug terbaru dengan memperbarui perangkat lunak di instans EC2 Anda. Untuk melakukannya, gunakan perintah berikut.
**catatan**  
Opsi `-y` menginstal pembaruan tanpa meminta konfirmasi. Hilangkan opsi ini untuk memeriksa pembaruan sebelum menginstal.

   ```
   sudo dnf update -y
   ```

1. Instal klien baris perintah mysql dari MariaDB.

   Untuk menginstal klien baris perintah MariaDB di Amazon Linux 2023, jalankan perintah berikut:

   ```
   sudo dnf install mariadb105
   ```

1. Hubungkan ke instans DB MariaDB. Misalnya, masukkan perintah berikut. Tindakan ini memungkinkan Anda untuk terhubung ke instans DB MariaDB menggunakan klien MySQL.

   Ganti titik akhir instans DB (nama DNS) untuk `endpoint`, dan ganti nama pengguna utama yang Anda gunakan untuk `admin`. Masukkan kata sandi utama yang Anda gunakan saat dimintai kata sandi.

   ```
   mysql -h endpoint -P 3306 -u admin -p
   ```

   Setelah memasukkan kata sandi untuk pengguna, Anda akan melihat output yang serupa dengan yang berikut ini.

   ```
   Welcome to the MariaDB monitor.  Commands end with ; or \g.
   Your MariaDB connection id is 156
   Server version: 10.6.10-MariaDB-log managed by https://aws.amazon.com/rds/
    
   Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
     
   Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
     
   MariaDB [(none)]>
   ```

   Untuk informasi selengkapnya tentang cara menghubungkan ke instans DB MariaDB, lihat [Menghubungkan ke instans MariaDB DB Anda](USER_ConnectToMariaDBInstance.md). Jika Anda tidak dapat terhubung ke instans DB Anda, lihat [Tidak dapat terhubung ke instans DB Amazon RDS](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting).

   Untuk keamanan, praktik terbaiknya adalah menggunakan koneksi terenkripsi. Hanya gunakan koneksi MariaDB yang tidak terenkripsi saat klien dan server berada di VPC yang sama dan jaringan tepercaya. Untuk informasi tentang cara menggunakan koneksi terenkripsi, lihat [Menyambung ke instans MariaDB Anda di Amazon RDS dengan SSL/TLS dari klien baris perintah MySQL (dienkripsi)](USER_ConnectToMariaDBInstanceSSL.CLI.md).

1. Jalankan perintah SQL.

   Misalnya, perintah SQL berikut menunjukkan tanggal dan waktu saat ini:

   ```
   SELECT CURRENT_TIMESTAMP;
   ```

## Hapus instans EC2 dan instans DB
<a name="CHAP_GettingStarted.Deleting.MariaDB"></a>

Setelah Anda terhubung ke dan menjelajahi instans EC2 dan instans DB sampel yang Anda buat, hapus instans tersebut sehingga Anda tidak lagi dikenakan biaya untuk instans DB tersebut.

Jika Anda biasa CloudFormation membuat sumber daya, lewati langkah ini dan lanjutkan ke langkah berikutnya.

**Untuk menghapus instans EC2**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di panel navigasi, pilih **Instans**.

1. Pilih instans EC2, dan pilih **Status instans, Akhiri instans**.

1. Pilih **Akhiri** saat diminta untuk konfirmasi.

Untuk informasi selengkapnya tentang menghapus instans EC2, lihat [Mengakhiri instans Anda di Panduan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html) Pengguna *Amazon* EC2.

**Untuk menghapus instans DB tanpa snapshot DB akhir**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Basis data**.

1. Pilih instans DB yang ingin Anda hapus.

1. Untuk **Tindakan**, pilih **Hapus**.

1. Hapus **Buat snapshot akhir?** dan **Pertahankan pencadangan otomatis**.

1. Lengkapi pengakuan dan pilih **Hapus**.

## (Opsional) Hapus instans EC2 dan instans DB yang dibuat dengan CloudFormation
<a name="CHAP_GettingStarted.DeletingCFN.MariaDB"></a>

Jika Anda biasa CloudFormation membuat sumber daya, hapus CloudFormation tumpukan setelah Anda terhubung dan jelajahi contoh instans EC2 dan instans DB, sehingga Anda tidak lagi dikenakan biaya untuk itu.

**Untuk menghapus sumber CloudFormation daya**

1. Buka CloudFormation konsol.

1. Pada halaman **Stacks** di CloudFormation konsol, pilih tumpukan root (tumpukan tanpa nama VPCStack, BastionStack atau RDSNS).

1. Pilih **Hapus**.

1. Pilih **Hapus tumpukan** saat diminta konfirmasi.

Untuk informasi selengkapnya tentang menghapus tumpukan CloudFormation, lihat [Menghapus tumpukan di CloudFormation konsol di AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-delete-stack.html) *Panduan Pengguna*.

## (Opsional) Menghubungkan instans DB Anda ke fungsi Lambda
<a name="CHAP_GettingStarted.ComputeConnect.MariaDB"></a>

Anda juga dapat menghubungkan instans DB RDS for MariaDB ke sumber daya komputasi nirserver Lambda. Fungsi Lambda memungkinkan Anda menjalankan kode tanpa menyediakan atau mengelola infrastruktur. Fungsi Lambda juga memungkinkan Anda untuk otomatis merespons permintaan eksekusi kode pada skala apa pun, mulai dari belasan peristiwa dalam sehari hingga ratusan per detik. Lihat informasi yang lebih lengkap di [Menghubungkan secara otomatis fungsi Lambda dan instans DB](lambda-rds-connect.md).

# Membuat dan menghubungkan ke instans DB Microsoft SQL Server
<a name="CHAP_GettingStarted.CreatingConnecting.SQLServer"></a>

Tutorial ini membuat instans EC2 dan instans DB RDS for Microsoft SQL Server. Tutorial ini menunjukkan cara mengakses instans DB dari instans EC2 menggunakan klien Microsoft SQL Server Management Studio. Sebagai praktik terbaik, tutorial ini membuat instans DB privat dalam cloud privat virtual (VPC). Dalam kebanyakan kasus, sumber daya lain dalam VPC yang sama, seperti instans EC2, dapat mengakses instans DB, tetapi sumber daya di luar VPC tidak dapat mengaksesnya. 

Setelah Anda menyelesaikan tutorial, ada subnet publik dan privat di setiap Zona Ketersediaan di VPC Anda. Dalam satu Zona Ketersediaan, instans EC2 berada di subnet publik, dan instans DB berada di subnet privat.

**penting**  
Tidak ada biaya untuk membuat AWS akun. Namun, dengan menyelesaikan tutorial ini, Anda mungkin dikenakan biaya untuk AWS sumber daya yang Anda gunakan. Anda dapat menghapus sumber daya ini setelah menyelesaikan tutorial jika tidak diperlukan lagi.

Diagram berikut menunjukkan konfigurasi setelah tutorial selesai.

![\[Instans EC2 dan instans DB Microsoft SQL Server.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/getting-started-sqlserver.png)


Tutorial ini memungkinkan Anda untuk membuat sumber daya Anda dengan menggunakan salah satu metode berikut:

1. Gunakan Konsol Manajemen AWS - [Buat instance SQL Server DB](#CHAP_GettingStarted.Creating.SQLServer) dan [Buat instans EC2](#CHAP_GettingStarted.Creating.SQLServer.EC2)

1. Gunakan CloudFormation untuk membuat instance database dan instans EC2 - [(Opsional) Buat instance VPC, EC2, dan SQL Server menggunakan CloudFormation](#CHAP_GettingStarted.CFN.SQLServer) 

Metode pertama menggunakan **Easy create** untuk membuat instance SQL Server DB pribadi dengan. Konsol Manajemen AWS Di sini, Anda hanya menentukan jenis mesin DB, ukuran instans DB, dan pengidentifikasi instans DB. **Pembuatan mudah** menggunakan pengaturan default untuk opsi konfigurasi lainnya. 

Saat Anda menggunakan **Standard create** sebagai gantinya, Anda dapat menentukan lebih banyak opsi konfigurasi saat membuat instans DB. Opsi ini mencakup pengaturan untuk ketersediaan, keamanan, cadangan, dan pemeliharaan. Untuk membuat instans DB publik, Anda harus menggunakan **Pembuatan Standar**. Untuk informasi, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).

**Topics**
+ [Prasyarat](#CHAP_GettingStarted.Prerequisites.SQLServer)
+ [Buat instans EC2](#CHAP_GettingStarted.Creating.SQLServer.EC2)
+ [Buat instance SQL Server DB](#CHAP_GettingStarted.Creating.SQLServer)
+ [(Opsional) Buat instance VPC, EC2, dan SQL Server menggunakan CloudFormation](#CHAP_GettingStarted.CFN.SQLServer)
+ [Connect ke instans SQL Server DB Anda](#CHAP_GettingStarted.Connecting.SQLServer)
+ [Jelajahi contoh instans SQL Server DB Anda](#CHAP_GettingStarted.SQLServer.Exploring)
+ [Hapus instans EC2 dan instans DB](#CHAP_GettingStarted.Deleting.SQLServer)
+ [(Opsional) Hapus instans EC2 dan instans DB yang dibuat dengan CloudFormation](#CHAP_GettingStarted.DeletingCFN.SQLServer)
+ [(Opsional) Menghubungkan instans DB Anda ke fungsi Lambda](#CHAP_GettingStarted.ComputeConnect.SQLServer)

## Prasyarat
<a name="CHAP_GettingStarted.Prerequisites.SQLServer"></a>

Sebelum memulai, selesaikan langkah-langkah di bagian berikut:
+ [Mendaftar untuk Akun AWS](CHAP_SettingUp.md#sign-up-for-aws)
+ [Buat pengguna dengan akses administratif](CHAP_SettingUp.md#create-an-admin)

## Buat instans EC2
<a name="CHAP_GettingStarted.Creating.SQLServer.EC2"></a>

Buat instans Amazon EC2 yang akan Anda gunakan untuk menghubungkan ke basis data Anda.

**Untuk membuat instans EC2**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di sudut kanan atas Konsol Manajemen AWS, pilih yang Wilayah AWS Anda gunakan untuk database sebelumnya.

1. Pilih **Dasbor EC2**, lalu pilih **Luncurkan instans** seperti yang ditampilkan dalam gambar berikut.  
![\[Dasbor EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_11.png)

   Halaman **Meluncurkan instans** akan terbuka.

1. Pilih pengaturan berikut di halaman **Meluncurkan instans**.

   1. Di bagian **Nama dan tag**, untuk **Nama**, masukkan **ec2-database-connect**.

   1. Pada **Gambar Aplikasi dan OS (Amazon Machine Image)**, pilih **Windows**, lalu pilih **Microsoft Windows Server 2022 Base**. Biarkan default untuk pilihan lainnya.  
![\[Pilih Amazon Machine Image.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/tutorial_ec2_sqlserver_create1.png)

   1. Pada **Jenis instans**, pilih **t2.micro**.

   1. Pada **Pasangan kunci (login)**, pilih **Nama pasangan kunci** untuk menggunakan pasangan kunci yang ada. Untuk membuat pasangan kunci baru untuk instans Amazon EC2, pilih **Buat Pasangan kunci baru** lalu gunakan jendela **Buat pasangan kunci** untuk membuatnya.

      Untuk informasi selengkapnya tentang membuat pasangan kunci baru, lihat [Membuat pasangan kunci](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-key-pairs.html) di *Panduan Pengguna Amazon EC2 untuk Instans Windows*.

   1. Untuk **Firewall (grup keamanan)** di **pengaturan Jaringan**, pilih **Izinkan lalu lintas RDP dari** untuk menghubungkan ke instans EC2. 

      Anda dapat memilih **IP Saya** jika alamat IP yang ditampilkan benar untuk koneksi RDP. Jika tidak, Anda dapat menentukan alamat IP yang akan digunakan untuk menghubungkan ke instans EC2 di VPC Anda menggunakan RDP. Untuk menentukan alamat IP publik Anda, di jendela atau tab browser yang berbeda, Anda dapat menggunakan layanan di [https://checkip.amazonaws.com](https://checkip.amazonaws.com/). Contoh alamat IP adalah 192.0.2.1/32.

       Dalam banyak kasus, Anda dapat menghubungkan melalui penyedia layanan Internet (ISP) atau dari belakang firewall Anda tanpa alamat IP statis. Jika demikian, tentukan rentang alamat IP yang digunakan oleh komputer klien.
**Awas**  
Jika menggunakan `0.0.0.0/0` untuk akses RDP, Anda memungkinkan semua alamat IP untuk mengakses instans EC2 publik Anda menggunakan RDP. Hal ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans EC2 Anda menggunakan RDP.

      Gambar berikut menunjukkan contoh bagian **Pengaturan jaringan**.  
![\[Pengaturan jaringan untuk instans EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/EC2_RDS_Connect_NtwkSettingsRDSMS.png)

   1. Biarkan nilai default untuk bagian yang lainnya.

   1. Tinjau ringkasan konfigurasi instans EC2 Anda di panel **Ringkasan**, dan setelah Anda siap, pilih **Luncurkan instans**.

1. Di halaman **Status Peluncuran**, catat pengidentifikasi untuk instans EC2 baru Anda, misalnya: `i-1234567890abcdef0`.  
![\[Pengidentifikasi instans EC2 di halaman Status Peluncuran.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/getting-started-ec2-id.png)

1. Pilih pengidentifikasi instans EC2 untuk membuka daftar instans EC2. 

1. Tunggu hingga **Status instans** untuk instans EC2 Anda berstatus **Berjalan** sebelum melanjutkan.

## Buat instance SQL Server DB
<a name="CHAP_GettingStarted.Creating.SQLServer"></a>

Blok bangunan dasar Amazon RDS adalah instans DB. Lingkungan ini adalah tempat Anda menjalankan basis data SQL Server Anda.

Dalam contoh ini, Anda menggunakan **Pembuatan Mudah** untuk membuat instans DB yang menjalankan mesin basis data SQL Server dengan kelas instans DB db.t2.micro.

**Untuk membuat instans DB Microsoft SQL Server dengan Pembuatan Mudah**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS di mana Anda ingin membuat instans DB.

1. Di panel navigasi, pilih **Basis Data**.

1. Pilih **Buat basis data** dan pastikan bahwa **Pembuatan mudah** dipilih.   
![\[Opsi pembuatan mudah.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-option.png)

1. Di **Konfigurasi**, pilih **Microsoft SQL Server**.

1. Untuk **Edisi**, pilih **SQL Server Express Edition**.

1. Untuk **Ukuran instans DB**, pilih **Tingkat gratis**. **Tingkat gratis** muncul untuk akun paket gratis. **Kotak pasir** muncul untuk akun paket berbayar.

1. Untuk **Pengidentifikasi instans DB**, masukkan **database-test1**.

   Tampilan halaman **Membuat basis data** seperti gambar berikut. Untuk akun paket gratis, **tingkat gratis** muncul. Untuk akun paket berbayar, **Sandbox** muncul.  
![\[Opsi mesin\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-sqlserver.png)

1. Untuk **Nama pengguna utama**, masukkan nama untuk pengguna utama, atau tetap gunakan nama default.

1. Untuk menyiapkan koneksi dengan instans EC2 yang Anda buat sebelumnya, buka **Menyiapkan koneksi EC2 - *opsional***.

   Pilih **Hubungkan ke sumber daya komputasi EC2**. Pilih instans EC2 yang Anda buat sebelumnya.  
![\[Siapkan opsi koneksi EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/EC2_RDS_Setup_Conn-EasyCreate.png)

1. Untuk menggunakan kata sandi utama yang dibuat secara otomatis untuk instans DB, pilih kotak **Buat kata sandi secara otomatis**.

   Untuk memasukkan kata sandi utama Anda, hapus centang pada **Buat kata sandi secara otomatis**, lalu masukkan kata sandi yang sama dalam **Kata sandi utama** dan **Konfirmasi kata sandi**.

1. Buka **Lihat pengaturan default untuk Pembuatan Mudah**.  
![\[Pengaturan default Pembuatan mudah.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-sqlserver-confirm.png)

   Anda dapat memeriksa pengaturan default yang digunakan dengan **Pembuatan mudah**. Kolom **Dapat diedit setelah basis data dibuat** menunjukkan opsi yang dapat Anda ubah setelah membuat basis data.
   + Jika pengaturan memiliki **Tidak** di kolom tersebut, dan Anda menginginkan pengaturan yang berbeda, Anda dapat menggunakan **Pembuatan Standar** untuk membuat instans DB.
   + Jika pengaturan memiliki **Ya** di kolom tersebut, dan Anda menginginkan pengaturan yang berbeda, Anda dapat menggunakan **Pembuatan Standar** untuk membuat instans DB, atau mengubah instans DB setelah Anda membuatnya untuk mengubah pengaturan.

1. Pilih **Buat basis data**.

   Untuk melihat nama pengguna dan kata sandi utama untuk instans DB, pilih **Lihat detail kredensial**.

   Anda dapat menggunakan nama pengguna dan kata sandi yang ditampilkan untuk terhubung ke instans DB sebagai pengguna utama.
**penting**  
Anda tidak dapat melihat kata sandi pengguna utama lagi. Jika Anda tidak mencatatnya, Anda mungkin harus mengubahnya.   
Jika perlu mengubah kata sandi pengguna utama setelah instans DB tersedia, Anda dapat mengubah instans DB untuk melakukannya. Untuk informasi selengkapnya tentang cara mengubah instans DB, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

1. Dalam daftar **Basis data**, pilih nama instans DB SQL Server baru untuk menampilkan detailnya.

   Instans DB memiliki status **Membuat** hingga siap digunakan.  
![\[Tangkapan layar dari detail instans DB.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-sqlserver-launch.png)

   Saat statusnya berubah menjadi **Tersedia**, Anda dapat terhubung ke instans DB. Tergantung pada kelas instans DB dan jumlah penyimpanan, diperlukan waktu hingga 20 menit sebelum instans baru tersedia.

## (Opsional) Buat instance VPC, EC2, dan SQL Server menggunakan CloudFormation
<a name="CHAP_GettingStarted.CFN.SQLServer"></a>

Alih-alih menggunakan konsol untuk membuat instance VPC, EC2, dan SQL Server, Anda dapat menggunakannya CloudFormation untuk menyediakan AWS sumber daya dengan memperlakukan infrastruktur sebagai kode. Untuk membantu Anda mengatur AWS sumber daya Anda menjadi unit yang lebih kecil dan lebih mudah dikelola, Anda dapat menggunakan fungsionalitas tumpukan CloudFormation bersarang. Untuk informasi selengkapnya, lihat [Membuat tumpukan di CloudFormation konsol](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) dan [Bekerja dengan tumpukan bersarang..](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) 

**penting**  
CloudFormation gratis, tetapi sumber daya yang CloudFormation menciptakan hidup. Anda dikenakan biaya penggunaan standar untuk sumber daya ini sampai Anda menghentikannya. Untuk informasi selengkapnya, lihat [harga RDS untuk SQL Server](https://aws.amazon.com//rds/sqlserver/pricing).

Untuk membuat sumber daya menggunakan CloudFormation konsol, selesaikan langkah-langkah berikut:
+ Unduh CloudFormation template
+ Konfigurasikan sumber daya Anda menggunakan CloudFormation

### Unduh CloudFormation template
<a name="CHAP_GettingStarted.CFN.SQLServer.Step1"></a>

 CloudFormation Template adalah file teks JSON atau YAMAL yang berisi informasi konfigurasi tentang sumber daya yang ingin Anda buat di tumpukan. Template ini juga membuat VPC dan host bastion untuk Anda bersama dengan instance RDS.

Untuk mengunduh file template, buka tautan berikut, [ CloudFormation template SQL Server](https://github.com/aws-ia/cfn-ps-amazon-rds/blob/main/templates/rds-sqlserver-main.template.yaml).

Di halaman Github, klik tombol *Unduh file mentah* untuk menyimpan file YAMAL template.

### Konfigurasikan sumber daya Anda menggunakan CloudFormation
<a name="CHAP_GettingStarted.CFN.SQLServer.Step2"></a>

**catatan**  
Sebelum memulai proses ini, pastikan Anda memiliki pasangan Kunci untuk instans EC2 di. Akun AWS Untuk informasi selengkapnya, lihat [Pasangan kunci Amazon EC2 dan instans Linux](https://docs.aws.amazon.com//AWSEC2/latest/UserGuide/ec2-key-pairs.html).

Ketika Anda menggunakan CloudFormation template, Anda harus memilih parameter yang benar untuk memastikan sumber daya Anda dibuat dengan benar. Ikuti langkah-langkah di bawah ini:

1. Masuk ke Konsol Manajemen AWS dan buka CloudFormation konsol di [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. Pilih **Buat tumpukan**.

1. Di bagian Tentukan templat, pilih **Unggah file templat dari komputer Anda**, lalu pilih **Berikutnya**.

1. Di halaman **Tentukan detail tumpukan**, atur parameter berikut:

   1. Tetapkan **nama Stack** ke **SQLServerTestStack**.

   1. Di bawah **Parameter**, atur **Availability Zone** dengan memilih tiga zona ketersediaan.

   1. Di bawah **konfigurasi Linux Bastion Host**, untuk **Key Name**, pilih key pair untuk login ke instans EC2 Anda.

   1. Dalam pengaturan **konfigurasi Linux Bastion Host**, atur **rentang IP yang Diizinkan** ke alamat IP Anda. Untuk menyambung ke instans EC2 di VPC Anda menggunakan Secure Shell (SSH), tentukan alamat IP publik Anda menggunakan layanan di. [https://checkip.amazonaws.com](https://checkip.amazonaws.com) Contoh alamat IP adalah 192.0.2.1/32.
**Awas**  
Jika menggunakan `0.0.0.0/0` untuk akses SSH, Anda memungkinkan semua alamat IP untuk mengakses instans publik EC2 Anda menggunakan SSH. Pendekatan ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans EC2 Anda menggunakan SSH.

   1. Di bawah **konfigurasi Database General**, atur **kelas instance Database** ke **db.t3.micro**.

   1. Tetapkan **nama Database** ke**database-test1**.

   1. Untuk **nama pengguna master Database**, masukkan nama untuk pengguna master.

   1. Atur **Manage DB master user password dengan Secrets Manager** `false` untuk tutorial ini.

   1. Untuk **kata sandi Database**, tetapkan kata sandi pilihan Anda. Ingat kata sandi ini untuk langkah lebih lanjut dalam tutorial.

   1. Di bawah **konfigurasi Penyimpanan Database**, atur **tipe penyimpanan Database** ke **gp2**.

   1. Di bawah **konfigurasi Pemantauan Database**, atur **Aktifkan Performance Insights RDS** ke false.

   1. Biarkan semua pengaturan lainnya sebagai nilai default. Klik **Berikutnya** untuk melanjutkan.

1. Di halaman **Configure stack options**, tinggalkan semua opsi default. Klik **Berikutnya** untuk melanjutkan.

1. Di halaman **tumpukan Tinjauan**, pilih **Kirim** setelah memeriksa database dan opsi host bastion Linux.

Setelah proses pembuatan tumpukan selesai, lihat tumpukan dengan nama *BastionStack*dan *RDSNS* untuk mencatat informasi yang Anda butuhkan untuk terhubung ke database. Untuk informasi selengkapnya, lihat [Melihat data CloudFormation tumpukan dan sumber daya di Konsol Manajemen AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-view-stack-data-resources.html).

## Connect ke instans SQL Server DB Anda
<a name="CHAP_GettingStarted.Connecting.SQLServer"></a>

Dalam prosedur berikut, Anda akan menghubungkan ke instans DB menggunakan Microsoft SQL Server Management Studio (SSMS).

**Untuk menghubungkan ke instans DB RDS for SQL Server menggunakan SSMS**

1. Temukan titik akhir (nama DNS) dan nomor port untuk instans DB Anda. 

   1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

   1. Di sudut kanan atas konsol Amazon RDS, pilih instans DB Wilayah AWS .

   1. Di panel navigasi, pilih **Basis Data**.

   1. Pilih nama instans DB SQL Server untuk menampilkan detailnya. 

   1. Di tab **Konektivitas**, salin titik akhir. Perhatikan juga nomor port. Anda memerlukan titik akhir dan nomor port untuk terhubung ke instans DB.  
![\[Hubungkan ke instans DB Microsoft SQL Server.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/SQLServerConnect2.png)

1. Hubungkan ke instans EC2 yang Anda buat sebelumnya dengan mengikuti langkah-langkah di [Menghubungkan ke instans Microsoft Windows](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows) di *Panduan Pengguna Amazon EC2 untuk Instans Windows*.

1. Instal klien SQL Server Management Studio (SSMS) dari Microsoft.

   Untuk mengunduh versi mandiri SSMS ke instans EC2 Anda, lihat [Download SQL Server Management Studio (SSMS)](https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms) dalam dokumentasi Microsoft.

   1. Gunakan menu Start untuk membuka Internet Explorer.

   1. Gunakan Internet Explorer untuk mengunduh dan menginstal versi SSMS mandiri. Jika ada pemberitahuan bahwa situs tersebut tidak dipercaya, tambahkan situs tersebut ke daftar situs tepercaya.

1. Mulai SQL Server Management Studio (SSMS). 

   Kotak dialog **Hubungkan ke Server** ditampilkan. 

1. Masukkan informasi berikut untuk instans DB sampel Anda: 

   1. Untuk **Jenis server**, pilih **Mesin Basis Data**. 

   1. Untuk **Nama server**, masukkan nama DNS, diikuti dengan koma dan nomor port (port default adalah 1433). Misalnya, nama server Anda akan terlihat seperti berikut:

      ```
      database-test1.0123456789012.us-west-2.rds.amazonaws.com,1433
      ```

   1. Untuk **Autentikasi**, pilih **Autentikasi SQL Server**. 

   1. Untuk **Login**, masukkan nama pengguna yang Anda pilih sebagai instans DB sampel. Ini juga dikenal sebagai nama pengguna utama.

   1. Untuk **Kata Sandi**, masukkan kata sandi yang Anda pilih sebelumnya untuk instans DB sampel. Ini juga dikenal sebagai kata sandi pengguna utama.

1. Pilih **Hubungkan**. 

   Setelah beberapa saat, SSMS akan terhubung ke instans DB Anda. Untuk keamanan, praktik terbaiknya adalah menggunakan koneksi terenkripsi. Hanya gunakan koneksi SQL Server yang tidak terenkripsi saat klien dan server berada di VPC yang sama dan jaringan tepercaya. Untuk informasi tentang cara menggunakan koneksi terenkripsi, lihat [Menggunakan SSL dengan instans DB Microsoft SQL Server](SQLServer.Concepts.General.SSL.Using.md).

Untuk informasi selengkapnya tentang menghubungkan ke instans DB Microsoft SQL Server, lihat [Menyambung ke instans Microsoft SQL Server DB](USER_ConnectToMicrosoftSQLServerInstance.md).

Untuk informasi tentang masalah koneksi, lihat [Tidak dapat terhubung ke instans DB Amazon RDS](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting).

## Jelajahi contoh instans SQL Server DB Anda
<a name="CHAP_GettingStarted.SQLServer.Exploring"></a>

Anda dapat menjelajahi instans DB sampel menggunakan Microsoft SQL Server Management Studio (SSMS).

**Untuk menjelajahi instans DB menggunakan SSMS**

1. Instans DB SQL Server Anda dilengkapi dengan basis data sistem default standar SQL Server (master, model, msdb, dan tempdb). Untuk menjelajahi basis data sistem, lakukan tindakan berikut: 

   1. Di SSMS, pada menu **Lihat**, pilih **Object Explorer**.

   1. Perluas instans DB Anda, perluas **Basis Data**, lalu perluas **Basis Data Sistem** seperti yang ditunjukkan.   
![\[Object Explorer menampilkan basis data sistem.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/SQL-SSMS-SystemDBs.png)

   Instans DB SQL Server Anda juga dilengkapi dengan basis data bernama `rdsadmin`. Amazon RDS menggunakan basis data ini untuk menyimpan objek yang digunakan untuk mengelola basis data Anda. Basis data `rdsadmin` juga mencakup prosedur tersimpan yang dapat Anda jalankan untuk melakukan tugas tingkat lanjut. 

1. Mulai buat basis data Anda sendiri dan jalankan kueri terhadap instans DB dan basis data Anda seperti biasa. Untuk menjalankan kueri uji pada instans DB Anda, lakukan tindakan berikut: 

   1. Di SSMS, pada menu **File**, arahkan ke **Baru**, lalu pilih **Kueri dengan Koneksi Saat Ini**. 

   1. Masukkan kueri SQL berikut:

      ```
      select @@VERSION
      ```

   1. Jalankan kueri. SSMS mengembalikan versi SQL Server dari instans DB Amazon RDS Anda.   
![\[Jendela SQL Query.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/SQL-Connect-Query.png)

## Hapus instans EC2 dan instans DB
<a name="CHAP_GettingStarted.Deleting.SQLServer"></a>

Setelah Anda terhubung ke dan menjelajahi instans EC2 dan instans DB sampel yang Anda buat, hapus instans tersebut sehingga Anda tidak lagi dikenakan biaya untuk instans DB tersebut.

Jika Anda biasa CloudFormation membuat sumber daya, lewati langkah ini dan lanjutkan ke langkah berikutnya.

**Untuk menghapus instans EC2**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di panel navigasi, pilih **Instans**.

1. Pilih instans EC2, dan pilih **Status instans, Akhiri instans**.

1. Pilih **Akhiri** saat diminta untuk konfirmasi.

Untuk informasi selengkapnya tentang menghapus instans EC2, lihat [Mengakhiri Instans](https://docs.aws.amazon.com//AWSEC2/latest/WindowsGuide/terminating-instances.html) dalam *Panduan Pengguna untuk Instans Windows*.

**Untuk menghapus instans DB tanpa snapshot DB akhir**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Basis data**.

1. Pilih instans DB yang ingin Anda hapus.

1. Untuk **Tindakan**, pilih **Hapus**.

1. Hapus **Buat snapshot akhir?** dan **Pertahankan pencadangan otomatis**.

1. Lengkapi pengakuan dan pilih **Hapus**. 

## (Opsional) Hapus instans EC2 dan instans DB yang dibuat dengan CloudFormation
<a name="CHAP_GettingStarted.DeletingCFN.SQLServer"></a>

Jika Anda biasa CloudFormation membuat sumber daya, hapus CloudFormation tumpukan setelah Anda terhubung dan jelajahi contoh instans EC2 dan instans DB, sehingga Anda tidak lagi dikenakan biaya untuk itu.

**Untuk menghapus sumber CloudFormation daya**

1. Buka CloudFormation konsol.

1. Pada halaman **Stacks** di CloudFormationconsole, pilih tumpukan root (tumpukan tanpa nama VPCStack, BastionStack atau RDSNS).

1. Pilih **Hapus**.

1. Pilih **Hapus tumpukan** saat diminta konfirmasi.

Untuk informasi selengkapnya tentang menghapus tumpukan CloudFormation, lihat [Menghapus tumpukan di CloudFormation konsol di AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-delete-stack.html) *Panduan Pengguna*.

## (Opsional) Menghubungkan instans DB Anda ke fungsi Lambda
<a name="CHAP_GettingStarted.ComputeConnect.SQLServer"></a>

Anda juga dapat menghubungkan instans DB RDS for SQL Server ke sumber daya komputasi nirserver Lambda. Fungsi Lambda memungkinkan Anda menjalankan kode tanpa menyediakan atau mengelola infrastruktur. Fungsi Lambda juga memungkinkan Anda untuk otomatis merespons permintaan eksekusi kode pada skala apa pun, mulai dari belasan peristiwa dalam sehari hingga ratusan per detik. Lihat informasi yang lebih lengkap di [Menghubungkan secara otomatis fungsi Lambda dan instans DB](lambda-rds-connect.md).

# Membuat dan menghubungkan ke instans DB MySQL
<a name="CHAP_GettingStarted.CreatingConnecting.MySQL"></a>

Tutorial ini membuat instans EC2 dan instans DB RDS for MySQL. Tutorial ini menunjukkan cara mengakses instans DB dari instans EC2 menggunakan klien MySQL standar. Sebagai praktik terbaik, tutorial ini membuat instans DB privat dalam cloud privat virtual (VPC). Dalam kebanyakan kasus, sumber daya lain dalam VPC yang sama, seperti instans EC2, dapat mengakses instans DB, tetapi sumber daya di luar VPC tidak dapat mengaksesnya.

Setelah Anda menyelesaikan tutorial, ada subnet publik dan privat di setiap Zona Ketersediaan di VPC Anda. Dalam satu Zona Ketersediaan, instans EC2 berada di subnet publik, dan instans DB berada di subnet privat.

**penting**  
Tidak ada biaya untuk membuat AWS akun. Namun, dengan menyelesaikan tutorial ini, Anda mungkin dikenakan biaya untuk AWS sumber daya yang Anda gunakan. Anda dapat menghapus sumber daya ini setelah menyelesaikan tutorial jika tidak diperlukan lagi.

Diagram berikut menunjukkan konfigurasi setelah tutorial selesai.

![\[Instans EC2 dan instans DB MySQL.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/getting-started-mysql.png)


Tutorial ini memungkinkan Anda untuk membuat sumber daya Anda dengan menggunakan salah satu metode berikut:

1. Gunakan Konsol Manajemen AWS - [Buat instance MySQL DB](#CHAP_GettingStarted.Creating.MySQL) dan [Buat instans EC2](#CHAP_GettingStarted.Creating.MySQL.EC2) 

1. Gunakan CloudFormation untuk membuat instance database dan instans EC2 - [(Opsional) Buat instance VPC, EC2, dan MySQL menggunakan CloudFormation](#CHAP_GettingStarted.CFN.MySQL) 

Metode pertama menggunakan **Easy create** untuk membuat instance MySQL DB pribadi dengan. Konsol Manajemen AWS Di sini, Anda hanya menentukan jenis mesin DB, ukuran instans DB, dan pengidentifikasi instans DB. **Pembuatan mudah** menggunakan pengaturan default untuk opsi konfigurasi lainnya.

Saat Anda menggunakan **Standard create** sebagai gantinya, Anda dapat menentukan lebih banyak opsi konfigurasi saat membuat instans DB. Opsi ini mencakup pengaturan untuk ketersediaan, keamanan, cadangan, dan pemeliharaan. Untuk membuat instans DB publik, Anda harus menggunakan **Pembuatan Standar**. Untuk informasi, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).

**Topics**
+ [Prasyarat](#CHAP_GettingStarted.Prerequisites.MySQL)
+ [Buat instans EC2](#CHAP_GettingStarted.Creating.MySQL.EC2)
+ [Buat instance MySQL DB](#CHAP_GettingStarted.Creating.MySQL)
+ [(Opsional) Buat instance VPC, EC2, dan MySQL menggunakan CloudFormation](#CHAP_GettingStarted.CFN.MySQL)
+ [Terhubung ke instans DB MySQL](#CHAP_GettingStarted.Connecting.MySQL)
+ [Hapus instans EC2 dan instans DB](#CHAP_GettingStarted.Deleting.MySQL)
+ [(Opsional) Hapus instans EC2 dan instans DB yang dibuat dengan CloudFormation](#CHAP_GettingStarted.DeletingCFN.MySQL)
+ [(Opsional) Menghubungkan instans DB Anda ke fungsi Lambda](#CHAP_GettingStarted.ComputeConnect.MySQL)

## Prasyarat
<a name="CHAP_GettingStarted.Prerequisites.MySQL"></a>

Sebelum memulai, selesaikan langkah-langkah di bagian berikut:
+ [Mendaftar untuk Akun AWS](CHAP_SettingUp.md#sign-up-for-aws)
+ [Buat pengguna dengan akses administratif](CHAP_SettingUp.md#create-an-admin)

## Buat instans EC2
<a name="CHAP_GettingStarted.Creating.MySQL.EC2"></a>

Buat instans Amazon EC2 yang akan Anda gunakan untuk menghubungkan ke basis data Anda.

**Untuk membuat instans EC2**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di sudut kanan atas Konsol Manajemen AWS, pilih Wilayah AWS di mana Anda ingin membuat instans EC2.

1. Pilih **Dasbor EC2**, lalu pilih **Luncurkan instans** seperti yang ditampilkan dalam gambar berikut.  
![\[Dasbor EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_11.png)

   Halaman **Meluncurkan instans** akan terbuka.

1. Pilih pengaturan berikut di halaman **Meluncurkan instans**.

   1. Pada **Nama dan tag**, untuk **Nama**, masukkan **ec2-database-connect**.

   1. Pada **Gambar Aplikasi dan OS (Amazon Machine Image)**, pilih **Amazon Linux**, lalu pilih **AMI Amazon Linux 2023**. Biarkan default untuk pilihan lainnya.  
![\[Pilih Amazon Machine Image.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_12.png)

   1. Pada **Jenis instans**, pilih **t2.micro**.

   1. Pada **Pasangan kunci (login)**, pilih **Nama pasangan kunci** untuk menggunakan pasangan kunci yang ada. Untuk membuat pasangan kunci baru untuk instans Amazon EC2, pilih **Buat Pasangan kunci baru** lalu gunakan jendela **Buat pasangan kunci** untuk membuatnya.

      Untuk informasi selengkapnya tentang membuat key pair baru, lihat [Membuat key pair](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/get-set-up-for-amazon-ec2.html#create-a-key-pair) di *Panduan Pengguna Amazon EC2*.

   1. Untuk **Izinkan lalu lintas SSH** di **Pengaturan jaringan**, pilih sumber koneksi SSH ke instans EC2. 

      Anda dapat memilih **IP Saya** jika alamat IP yang ditampilkan benar untuk koneksi SSH. Jika tidak, Anda dapat menentukan alamat IP yang akan digunakan untuk menghubungkan ke instans EC2 di VPC Anda menggunakan Secure Shell (SSH). Untuk menentukan alamat IP publik Anda, di jendela atau tab browser yang berbeda, Anda dapat menggunakan layanan di [https://checkip.amazonaws.com](https://checkip.amazonaws.com/). Contoh alamat IP adalah 192.0.2.1/32.

       Dalam banyak kasus, Anda dapat menghubungkan melalui penyedia layanan Internet (ISP) atau dari belakang firewall Anda tanpa alamat IP statis. Jika demikian, tentukan rentang alamat IP yang digunakan oleh komputer klien.
**Awas**  
Jika menggunakan `0.0.0.0/0` untuk akses SSH, Anda memungkinkan semua alamat IP untuk mengakses instans publik EC2 Anda menggunakan SSH. Pendekatan ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans EC2 Anda menggunakan SSH.

      Gambar berikut menunjukkan contoh bagian **Pengaturan jaringan**.  
![\[Pengaturan jaringan untuk instans EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/EC2_RDS_Connect_NtwkSettings.png)

   1. Biarkan nilai default untuk bagian yang lainnya.

   1. Tinjau ringkasan konfigurasi instans EC2 Anda di panel **Ringkasan**, dan setelah Anda siap, pilih **Luncurkan instans**.

1. Di halaman **Status Peluncuran**, catat pengidentifikasi untuk instans EC2 baru Anda, misalnya: `i-1234567890abcdef0`.  
![\[Pengidentifikasi instans EC2 di halaman Status Peluncuran.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/getting-started-ec2-id.png)

1. Pilih pengidentifikasi instans EC2 untuk membuka daftar instans EC2, lalu pilih instans EC2 Anda.

1. Di tab **Detail**, catat nilai-nilai berikut, yang akan Anda butuhkan saat menghubungkan menggunakan SSH:

   1. Dalam **ringkasan Instance**, perhatikan nilai untuk ** IPv4 DNS Publik**.  
![\[Nama DNS publik EC2 pada tab Detail halaman Instans.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-ec2-public-dns.png)

   1. Di **Detail instans**, catat nilai untuk **Nama pasangan kunci**.  
![\[Nama pasangan kunci EC2 di tab Detail halaman Instans.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-ec2-key-pair.png)

1. Tunggu hingga **Status instans** untuk instans EC2 Anda berstatus **Berjalan** sebelum melanjutkan.

## Buat instance MySQL DB
<a name="CHAP_GettingStarted.Creating.MySQL"></a>

Blok bangunan dasar Amazon RDS adalah instans DB. Lingkungan ini adalah tempat Anda menjalankan basis data MySQL Anda.

Dalam contoh ini, Anda menggunakan **Pembuatan Mudah** untuk membuat instans DB yang menjalankan mesin basis data MySQL dengan kelas instans DB db.t3.micro.

**Untuk membuat instans DB MySQL dengan Pembuatan Mudah**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas konsol Amazon RDS, pilih yang Wilayah AWS Anda gunakan untuk instans EC2 sebelumnya.

1. Di panel navigasi, pilih **Basis Data**.

1. Pilih **Buat basis data** dan pastikan bahwa **Pembuatan mudah** dipilih.   
![\[Opsi pembuatan mudah.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-option.png)

1. Di **Konfigurasi**, pilih **MySQL**.

1. Untuk **Ukuran instans DB**, pilih **Tingkat gratis**. **Tingkat gratis** muncul untuk akun paket gratis. **Kotak pasir** muncul untuk akun paket berbayar.

1. Untuk **Pengidentifikasi instans DB**, masukkan **database-test1**.

1. Untuk **Nama pengguna utama**, masukkan nama untuk pengguna utama, atau tetap gunakan nama default.

   Tampilan halaman **Membuat basis data** seperti gambar berikut. Untuk akun paket gratis, **tingkat gratis** muncul. Untuk akun paket berbayar, **Sandbox** muncul.  
![\[Buat halaman basis data.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-mysql.png)

1. Untuk menggunakan kata sandi utama yang dibuat secara otomatis untuk instans DB, pilih **Buat kata sandi secara otomatis**.

   Untuk memasukkan kata sandi utama Anda, hapus centang pada **Buat kata sandi secara otomatis**, lalu masukkan kata sandi yang sama dalam **Kata sandi utama** dan **Konfirmasi kata sandi**.

1. Untuk menyiapkan koneksi dengan instans EC2 yang Anda buat sebelumnya, buka **Menyiapkan koneksi EC2 - *opsional***.

   Pilih **Hubungkan ke sumber daya komputasi EC2**. Pilih instans EC2 yang Anda buat sebelumnya.  
![\[Siapkan opsi koneksi EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/EC2_RDS_Setup_Conn-EasyCreate.png)

1. (Opsional) Buka **Lihat pengaturan default untuk Pembuatan Mudah**.  
![\[Pengaturan default Pembuatan mudah.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-view-default-mysql.png)

   Anda dapat memeriksa pengaturan default yang digunakan dengan **Pembuatan mudah**. Kolom **Dapat diedit setelah basis data dibuat** menunjukkan opsi yang dapat Anda ubah setelah membuat basis data.
   + Jika pengaturan memiliki **Tidak** di kolom tersebut, dan Anda menginginkan pengaturan yang berbeda, Anda dapat menggunakan **Pembuatan Standar** untuk membuat instans DB.
   + Jika pengaturan memiliki **Ya** di kolom tersebut, dan Anda menginginkan pengaturan yang berbeda, Anda dapat menggunakan **Pembuatan Standar** untuk membuat instans DB, atau mengubah instans DB setelah Anda membuatnya untuk mengubah pengaturan.

1. Pilih **Buat basis data**.

   Untuk melihat nama pengguna dan kata sandi utama untuk instans DB, pilih **Lihat detail kredensial**.

   Anda dapat menggunakan nama pengguna dan kata sandi yang ditampilkan untuk terhubung ke instans DB sebagai pengguna utama.
**penting**  
Anda tidak dapat melihat kata sandi pengguna utama lagi. Jika Anda tidak mencatatnya, Anda mungkin harus mengubahnya.   
Jika perlu mengubah kata sandi pengguna utama setelah instans DB tersedia, Anda dapat mengubah instans DB untuk melakukannya. Untuk informasi selengkapnya tentang cara mengubah instans DB, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

1. Dalam daftar **Basis Data**, pilih nama instans DB MySQL yang baru untuk menampilkan detailnya.

   Instans DB memiliki status **Membuat** hingga siap digunakan.  
![\[Detail instans DB.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/MySQL-Launch06.png)

   Saat statusnya berubah menjadi **Tersedia**, Anda dapat terhubung ke instans DB. Tergantung pada kelas instans DB dan jumlah penyimpanan, diperlukan waktu hingga 20 menit sebelum instans baru tersedia.

## (Opsional) Buat instance VPC, EC2, dan MySQL menggunakan CloudFormation
<a name="CHAP_GettingStarted.CFN.MySQL"></a>

Alih-alih menggunakan konsol untuk membuat VPC, instans EC2, dan instance MySQL, Anda dapat menggunakannya CloudFormation untuk menyediakan AWS sumber daya dengan memperlakukan infrastruktur sebagai kode. Untuk membantu Anda mengatur AWS sumber daya Anda menjadi unit yang lebih kecil dan lebih mudah dikelola, Anda dapat menggunakan fungsionalitas tumpukan CloudFormation bersarang. Untuk informasi selengkapnya, lihat [Membuat tumpukan di CloudFormation konsol](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) dan [Bekerja dengan tumpukan bersarang](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html). 

**penting**  
CloudFormation gratis, tetapi sumber daya yang CloudFormation menciptakan hidup. Anda dikenakan biaya penggunaan standar untuk sumber daya ini sampai Anda menghentikannya. Untuk informasi selengkapnya, lihat [RDS untuk harga MySQL](https://aws.amazon.com//rds/mysql/pricing).

Untuk membuat sumber daya Anda menggunakan CloudFormation konsol, selesaikan langkah-langkah berikut:
+ Unduh CloudFormation template
+ Konfigurasikan sumber daya Anda menggunakan CloudFormation

### Unduh CloudFormation template
<a name="CHAP_GettingStarted.CFN.MySQL.Step1"></a>

 CloudFormation Template adalah file teks JSON atau YAMAL yang berisi informasi konfigurasi tentang sumber daya yang ingin Anda buat di tumpukan. Template ini juga membuat VPC dan host bastion untuk Anda bersama dengan instance RDS.

Untuk mengunduh file template, buka tautan berikut, template [MySQL CloudFormation ](https://github.com/aws-ia/cfn-ps-amazon-rds/blob/main/templates/rds-mysql-main.template.yaml).

Di halaman Github, klik tombol *Unduh file mentah* untuk menyimpan file YAMAL template.

### Konfigurasikan sumber daya Anda menggunakan CloudFormation
<a name="CHAP_GettingStarted.CFN.MySQL.Step2"></a>

**catatan**  
Sebelum memulai proses ini, pastikan Anda memiliki pasangan Kunci untuk instans EC2 di. Akun AWS Untuk informasi selengkapnya, lihat [Pasangan kunci Amazon EC2 dan instans Linux](https://docs.aws.amazon.com//AWSEC2/latest/UserGuide/ec2-key-pairs.html).

Ketika Anda menggunakan CloudFormation template, Anda harus memilih parameter yang benar untuk memastikan sumber daya Anda dibuat dengan benar. Ikuti langkah-langkah di bawah ini:

1. Masuk ke Konsol Manajemen AWS dan buka CloudFormation konsol di [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. Pilih **Buat tumpukan**.

1. Di bagian Tentukan templat, pilih **Unggah file templat dari komputer Anda**, lalu pilih **Berikutnya**.

1. Di halaman **Tentukan detail tumpukan**, atur parameter berikut:

   1. Tetapkan **nama Stack** ke **My SQLTest Stack**.

   1. Di bawah **Parameter**, atur **Availability Zone** dengan memilih tiga zona ketersediaan.

   1. Di bawah **konfigurasi Linux Bastion Host**, untuk **Key Name**, pilih key pair untuk login ke instans EC2 Anda.

   1. Dalam pengaturan **konfigurasi Linux Bastion Host**, atur **rentang IP yang Diizinkan** ke alamat IP Anda. Untuk menyambung ke instans EC2 di VPC Anda menggunakan Secure Shell (SSH), tentukan alamat IP publik Anda menggunakan layanan di. [https://checkip.amazonaws.com](https://checkip.amazonaws.com) Contoh alamat IP adalah 192.0.2.1/32.
**Awas**  
Jika menggunakan `0.0.0.0/0` untuk akses SSH, Anda memungkinkan semua alamat IP untuk mengakses instans publik EC2 Anda menggunakan SSH. Pendekatan ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans EC2 Anda menggunakan SSH.

   1. Di bawah **konfigurasi Database General**, atur **kelas instance Database** ke **db.t3.micro**.

   1. Tetapkan **nama Database** ke**database-test1**.

   1. Untuk **nama pengguna master Database**, masukkan nama untuk pengguna master.

   1. Atur **Kelola kata sandi pengguna master DB dengan Secrets Manager** `false` untuk tutorial ini.

   1. Untuk **kata sandi Database**, tetapkan kata sandi pilihan Anda. Ingat kata sandi ini untuk langkah lebih lanjut dalam tutorial.

   1. Di bawah **konfigurasi Penyimpanan Database**, atur **tipe penyimpanan Database** ke **gp2**.

   1. Di bawah **konfigurasi Pemantauan Database**, atur **Aktifkan Performance Insights RDS** ke false.

   1. Biarkan semua pengaturan lainnya sebagai nilai default. Klik **Berikutnya** untuk melanjutkan.

1. Di halaman **Configure stack options**, tinggalkan semua opsi default. Klik **Berikutnya** untuk melanjutkan.

1. Di halaman **tumpukan Tinjauan**, pilih **Kirim** setelah memeriksa database dan opsi host bastion Linux.

Setelah proses pembuatan tumpukan selesai, lihat tumpukan dengan nama *BastionStack*dan *RDSNS* untuk mencatat informasi yang Anda butuhkan untuk terhubung ke database. Untuk informasi selengkapnya, lihat [Melihat data CloudFormation tumpukan dan sumber daya di Konsol Manajemen AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-view-stack-data-resources.html).

## Terhubung ke instans DB MySQL
<a name="CHAP_GettingStarted.Connecting.MySQL"></a>

Anda dapat menggunakan aplikasi klien SQL standar untuk menghubungkan ke instans DB. Dalam contoh ini, Anda akan menghubungkan ke instans DB MySQL menggunakan klien baris perintah mysql.

**Menghubungkan ke instans DB MySQL**

1. Temukan titik akhir (nama DNS) dan nomor port untuk instans DB Anda. 

   1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

   1. Di sudut kanan atas konsol Amazon RDS, pilih instans DB Wilayah AWS .

   1. Di panel navigasi, pilih **Basis data**.

   1. Pilih nama instans DB MySQL untuk menampilkan detailnya. 

   1. Di tab **Konektivitas & keamanan**, salin titik akhir. Selain itu, catat nomor port. Anda memerlukan titik akhir dan nomor port untuk terhubung ke instans DB.   
![\[Hubungkan ke instans DB MySQL.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/MySQLConnect1.png)

1. Connect ke instans EC2 yang Anda buat sebelumnya dengan mengikuti langkah-langkah di [Connect to Linux Anda](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstances.html) di Panduan Pengguna *Amazon EC2*.

   Sebaiknya Anda menghubungkan ke instans EC2 menggunakan SSH. Jika utilitas klien SSH diinstal di Windows, Linux, atau Mac, Anda dapat menghubungkan ke instans menggunakan format perintah berikut:

   ```
   ssh -i location_of_pem_file ec2-user@ec2-instance-public-dns-name
   ```

   Misalnya, asumsikan bahwa `ec2-database-connect-key-pair.pem` disimpan di `/dir1` di Linux, dan DNS IPv4 publik untuk instans EC2 Anda adalah `ec2-12-345-678-90.compute-1.amazonaws.com`. Perintah SSH Anda akan tampak seperti berikut:

   ```
   ssh -i /dir1/ec2-database-connect-key-pair.pem ec2-user@ec2-12-345-678-90.compute-1.amazonaws.com
   ```

1. Dapatkan pembaruan keamanan dan perbaikan bug terbaru dengan memperbarui perangkat lunak di instans EC2 Anda. Untuk melakukannya, gunakan perintah berikut.
**catatan**  
Opsi `-y` menginstal pembaruan tanpa meminta konfirmasi. Hilangkan opsi ini untuk memeriksa pembaruan sebelum menginstal.

   ```
   sudo dnf update -y
   ```

1.  Untuk menginstal klien baris perintah mysql dari MariaDB di Amazon Linux 2023, jalankan perintah berikut:

   ```
   sudo dnf install mariadb105
   ```

1. Hubungkan ke instans DB MySQL. Misalnya, masukkan perintah berikut. Tindakan ini memungkinkan Anda untuk terhubung ke instans DB MySQL menggunakan klien MySQL.

   Ganti titik akhir instans DB (nama DNS) untuk `endpoint`, dan ganti nama pengguna utama yang Anda gunakan untuk `admin`. Masukkan kata sandi utama yang Anda gunakan saat dimintai kata sandi.

   ```
   mysql -h endpoint -P 3306 -u admin -p
   ```

   Setelah memasukkan kata sandi untuk pengguna, Anda akan melihat output yang serupa dengan yang berikut ini.

   ```
   Welcome to the MariaDB monitor.  Commands end with ; or \g.
   Your MySQL connection id is 3082
   Server version: 8.0.28 Source distribution
   
   Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
   
   Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
   
   MySQL [(none)]>
   ```

   Untuk informasi selengkapnya tentang cara menghubungkan ke instans DB MySQL, lihat [Menghubungkan ke instans MySQL DB Anda](USER_ConnectToInstance.md). Jika Anda tidak dapat terhubung ke instans DB Anda, lihat [Tidak dapat terhubung ke instans DB Amazon RDS](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting).

   Untuk keamanan, praktik terbaiknya adalah menggunakan koneksi terenkripsi. Hanya gunakan koneksi MySQL yang tidak terenkripsi saat klien dan server berada di VPC yang sama dan jaringan tepercaya. Untuk informasi tentang cara menggunakan koneksi terenkripsi, lihat [Menyambung ke instans MySQL DB Anda di Amazon RDS dengan SSL/TLS dari klien baris perintah MySQL (dienkripsi)](USER_ConnectToInstanceSSL.CLI.md).

1. Jalankan perintah SQL.

   Misalnya, perintah SQL berikut menunjukkan tanggal dan waktu saat ini:

   ```
   SELECT CURRENT_TIMESTAMP;
   ```

## Hapus instans EC2 dan instans DB
<a name="CHAP_GettingStarted.Deleting.MySQL"></a>

Setelah Anda terhubung ke dan menjelajahi instans EC2 dan instans DB sampel yang Anda buat, hapus instans tersebut sehingga Anda tidak lagi dikenakan biaya untuk instans DB tersebut.

Jika Anda biasa CloudFormation membuat sumber daya, lewati langkah ini dan lanjutkan ke langkah berikutnya.

**Untuk menghapus instans EC2**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di panel navigasi, pilih **Instans**.

1. Pilih instans EC2, dan pilih **Status instans, Akhiri instans**.

1. Pilih **Akhiri** saat diminta untuk konfirmasi.

Untuk informasi selengkapnya tentang menghapus instans EC2, lihat [Mengakhiri instans Anda di Panduan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html) Pengguna *Amazon* EC2.

**Untuk menghapus instans DB tanpa snapshot DB akhir**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Basis data**.

1. Pilih instans DB yang ingin Anda hapus.

1. Untuk **Tindakan**, pilih **Hapus**.

1. Hapus **Buat snapshot akhir?** dan **Pertahankan pencadangan otomatis**.

1. Lengkapi pengakuan dan pilih **Hapus**. 

## (Opsional) Hapus instans EC2 dan instans DB yang dibuat dengan CloudFormation
<a name="CHAP_GettingStarted.DeletingCFN.MySQL"></a>

Jika Anda biasa CloudFormation membuat sumber daya, hapus CloudFormation tumpukan setelah Anda terhubung dan jelajahi contoh instans EC2 dan instans DB, sehingga Anda tidak lagi dikenakan biaya untuk itu.

**Untuk menghapus sumber CloudFormation daya**

1. Buka CloudFormation konsol.

1. Pada halaman **Stacks** di CloudFormationconsole, pilih tumpukan root (tumpukan tanpa nama VPCStack, BastionStack atau RDSNS).

1. Pilih **Hapus**.

1. Pilih **Hapus tumpukan** saat diminta konfirmasi.

Untuk informasi selengkapnya tentang menghapus tumpukan CloudFormation, lihat [Menghapus tumpukan di CloudFormation konsol di AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-delete-stack.html) *Panduan Pengguna*.

## (Opsional) Menghubungkan instans DB Anda ke fungsi Lambda
<a name="CHAP_GettingStarted.ComputeConnect.MySQL"></a>

Anda juga dapat menghubungkan instans DB RDS for MySQL ke sumber daya komputasi nirserver Lambda. Fungsi Lambda memungkinkan Anda menjalankan kode tanpa menyediakan atau mengelola infrastruktur. Fungsi Lambda juga memungkinkan Anda untuk otomatis merespons permintaan eksekusi kode pada skala apa pun, mulai dari belasan peristiwa dalam sehari hingga ratusan per detik. Lihat informasi yang lebih lengkap di [Menghubungkan secara otomatis fungsi Lambda dan instans DB](lambda-rds-connect.md).

# Membuat dan menghubungkan ke instans DB Oracle
<a name="CHAP_GettingStarted.CreatingConnecting.Oracle"></a>

Tutorial ini membuat instans EC2 dan instans DB RDS for Oracle. Tutorial ini menunjukkan cara mengakses instans DB dari instans EC2 menggunakan klien Oracle standar. Sebagai praktik terbaik, tutorial ini membuat instans DB privat dalam cloud privat virtual (VPC). Dalam kebanyakan kasus, sumber daya lain dalam VPC yang sama, seperti instans EC2, dapat mengakses instans DB, tetapi sumber daya di luar VPC tidak dapat mengaksesnya.

Setelah Anda menyelesaikan tutorial, ada subnet publik dan privat di setiap Zona Ketersediaan di VPC Anda. Dalam satu Zona Ketersediaan, instans EC2 berada di subnet publik, dan instans DB berada di subnet privat.

**penting**  
Tidak ada biaya untuk membuat AWS akun. Namun, dengan menyelesaikan tutorial ini, Anda mungkin dikenakan biaya untuk AWS sumber daya yang Anda gunakan. Anda dapat menghapus sumber daya ini setelah menyelesaikan tutorial jika tidak diperlukan lagi.

Diagram berikut menunjukkan konfigurasi setelah tutorial selesai.

![\[Instans EC2 dan instans DB Oracle.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/getting-started-oracle.png)


Tutorial ini memungkinkan Anda untuk membuat sumber daya Anda dengan menggunakan salah satu metode berikut:

1. Gunakan Konsol Manajemen AWS - [Langkah 2: Buat instans DB Oracle](#CHAP_GettingStarted.Creating.Oracle) dan [Langkah 1: Buat instans EC2](#CHAP_GettingStarted.Creating.Oracle.EC2) 

1. Gunakan CloudFormation untuk membuat instance database dan instans EC2 - [(Opsional) Buat VPC, instans EC2, dan instans Oracle DB menggunakan CloudFormation](#CHAP_GettingStarted.CFN.Oracle) 

Metode pertama menggunakan **Easy create** untuk membuat instance Oracle DB pribadi dengan. Konsol Manajemen AWS Di sini, Anda hanya menentukan jenis mesin DB, ukuran instans DB, dan pengidentifikasi instans DB. **Pembuatan mudah** menggunakan pengaturan default untuk opsi konfigurasi lainnya.

Saat Anda menggunakan **Standard create** sebagai gantinya, Anda dapat menentukan lebih banyak opsi konfigurasi saat membuat instans DB. Opsi ini mencakup pengaturan untuk ketersediaan, keamanan, cadangan, dan pemeliharaan. Untuk membuat instans DB publik, Anda harus menggunakan **Pembuatan Standar**. Untuk informasi, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).

**Topics**
+ [Prasyarat](#CHAP_GettingStarted.Prerequisites.Oracle)
+ [Langkah 1: Buat instans EC2](#CHAP_GettingStarted.Creating.Oracle.EC2)
+ [Langkah 2: Buat instans DB Oracle](#CHAP_GettingStarted.Creating.Oracle)
+ [(Opsional) Buat VPC, instans EC2, dan instans Oracle DB menggunakan CloudFormation](#CHAP_GettingStarted.CFN.Oracle)
+ [Langkah 3: Hubungkan klien SQL Anda ke instans DB Oracle](#CHAP_GettingStarted.Connecting.Oracle)
+ [Langkah 4: Hapus instans EC2 dan instans DB](#CHAP_GettingStarted.Deleting.Oracle)
+ [(Opsional) Hapus instans EC2 dan instans DB yang dibuat dengan CloudFormation](#CHAP_GettingStarted.DeletingCFN.Oracle)
+ [(Opsional) Menghubungkan instans DB Anda ke fungsi Lambda](#CHAP_GettingStarted.ComputeConnect.Oracle)

## Prasyarat
<a name="CHAP_GettingStarted.Prerequisites.Oracle"></a>

Sebelum memulai, selesaikan langkah-langkah di bagian berikut:
+ [Mendaftar untuk Akun AWS](CHAP_SettingUp.md#sign-up-for-aws)
+ [Buat pengguna dengan akses administratif](CHAP_SettingUp.md#create-an-admin)

## Langkah 1: Buat instans EC2
<a name="CHAP_GettingStarted.Creating.Oracle.EC2"></a>

Buat instans Amazon EC2 yang akan Anda gunakan untuk menghubungkan ke basis data Anda.

**Untuk membuat instans EC2**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di sudut kanan atas Konsol Manajemen AWS, pilih Wilayah AWS di mana Anda ingin membuat instans EC2.

1. Pilih **Dasbor EC2**, lalu pilih **Luncurkan instans** seperti yang ditampilkan dalam gambar berikut.  
![\[Dasbor EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_11.png)

   Halaman **Meluncurkan instans** akan terbuka.

1. Pilih pengaturan berikut di halaman **Meluncurkan instans**.

   1. Pada **Nama dan tag**, untuk **Nama**, masukkan **ec2-database-connect**.

   1. Pada **Gambar Aplikasi dan OS (Amazon Machine Image)**, pilih **Amazon Linux**, lalu pilih **AMI Amazon Linux 2023**. Biarkan default untuk pilihan lainnya.  
![\[Pilih Amazon Machine Image.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_12.png)

   1. Pada **Jenis instans**, pilih **t2.micro**.

   1. Pada **Pasangan kunci (login)**, pilih **Nama pasangan kunci** untuk menggunakan pasangan kunci yang ada. Untuk membuat pasangan kunci baru untuk instans Amazon EC2, pilih **Buat Pasangan kunci baru** lalu gunakan jendela **Buat pasangan kunci** untuk membuatnya.

      Untuk informasi selengkapnya tentang membuat key pair baru, lihat [Membuat key pair](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/get-set-up-for-amazon-ec2.html#create-a-key-pair) di *Panduan Pengguna Amazon EC2*.

   1. Untuk **Izinkan lalu lintas SSH** di **Pengaturan jaringan**, pilih sumber koneksi SSH ke instans EC2. 

      Anda dapat memilih **IP Saya** jika alamat IP yang ditampilkan benar untuk koneksi SSH. Jika tidak, Anda dapat menentukan alamat IP yang akan digunakan untuk menghubungkan ke instans EC2 di VPC Anda menggunakan Secure Shell (SSH). Untuk menentukan alamat IP publik Anda, di jendela atau tab browser yang berbeda, Anda dapat menggunakan layanan di [https://checkip.amazonaws.com](https://checkip.amazonaws.com/). Contoh alamat IP adalah 192.0.2.1/32.

       Dalam banyak kasus, Anda dapat menghubungkan melalui penyedia layanan Internet (ISP) atau dari belakang firewall Anda tanpa alamat IP statis. Jika demikian, tentukan rentang alamat IP yang digunakan oleh komputer klien.
**Awas**  
Jika menggunakan `0.0.0.0/0` untuk akses SSH, Anda memungkinkan semua alamat IP untuk mengakses instans publik EC2 Anda menggunakan SSH. Pendekatan ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans EC2 Anda menggunakan SSH.

      Gambar berikut menunjukkan contoh bagian **Pengaturan jaringan**.  
![\[Pengaturan jaringan untuk instans EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/EC2_RDS_Connect_NtwkSettings.png)

   1. Biarkan nilai default untuk bagian yang lainnya.

   1. Tinjau ringkasan konfigurasi instans EC2 Anda di panel **Ringkasan**, dan setelah Anda siap, pilih **Luncurkan instans**.

1. Di halaman **Status Peluncuran**, catat pengidentifikasi untuk instans EC2 baru Anda, misalnya: `i-1234567890abcdef0`.  
![\[Pengidentifikasi instans EC2 di halaman Status Peluncuran.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/getting-started-ec2-id.png)

1. Pilih pengidentifikasi instans EC2 untuk membuka daftar instans EC2, lalu pilih instans EC2 Anda.

1. Di tab **Detail**, catat nilai-nilai berikut, yang akan Anda butuhkan saat menghubungkan menggunakan SSH:

   1. Dalam **ringkasan Instance**, perhatikan nilai untuk ** IPv4 DNS Publik**.  
![\[Nama DNS publik EC2 pada tab Detail halaman Instans.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-ec2-public-dns.png)

   1. Di **Detail instans**, catat nilai untuk **Nama pasangan kunci**.  
![\[Nama pasangan kunci EC2 di tab Detail halaman Instans.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-ec2-key-pair.png)

1. Tunggu hingga **Status instans** untuk instans EC2 Anda berstatus **Berjalan** sebelum melanjutkan.

## Langkah 2: Buat instans DB Oracle
<a name="CHAP_GettingStarted.Creating.Oracle"></a>

Blok bangunan dasar Amazon RDS adalah instans DB. Lingkungan ini adalah tempat Anda menjalankan basis data Oracle Anda.

Dalam contoh ini, Anda menggunakan **Pembuatan Mudah** untuk membuat instans DB yang menjalankan mesin basis data Oracle dengan kelas instans DB db.m5.large.

**Untuk membuat instans DB Oracle DB dengan Pembuatan Mudah**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS di mana Anda ingin membuat instans DB.

1. Di panel navigasi, pilih **Basis Data**.

1. Pilih **Buat basis data** dan pastikan bahwa **Pembuatan mudah** dipilih.   
![\[Opsi pembuatan mudah.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-option.png)

1. Di **Konfigurasi**, pilih **Oracle**.

1. Untuk **Ukuran instans DB**, pilih **Dev/Tes**.

1. Untuk **Pengidentifikasi instans DB**, masukkan **database-test1**.

1. Untuk **Nama pengguna utama**, masukkan nama untuk pengguna utama, atau tetap gunakan nama default.

   Tampilan halaman **Membuat basis data** seperti gambar berikut.  
![\[Buat halaman basis data.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-oracle2.png)

1. Untuk menggunakan kata sandi utama yang dibuat secara otomatis untuk instans DB, pilih **Buat kata sandi secara otomatis**.

   Untuk memasukkan kata sandi utama Anda, hapus centang pada **Buat kata sandi secara otomatis**, lalu masukkan kata sandi yang sama dalam **Kata sandi utama** dan **Konfirmasi kata sandi**.

1. Untuk menyiapkan koneksi dengan instans EC2 yang Anda buat sebelumnya, buka **Menyiapkan koneksi EC2 - *opsional***.

   Pilih **Hubungkan ke sumber daya komputasi EC2**. Pilih instans EC2 yang Anda buat sebelumnya.  
![\[Siapkan opsi koneksi EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/EC2_RDS_Setup_Conn-EasyCreate.png)

1. Buka **Lihat pengaturan default untuk Pembuatan mudah**.  
![\[Pengaturan default Pembuatan mudah.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-view-default-Oracle.png)

   Anda dapat memeriksa pengaturan default yang digunakan dengan **Pembuatan mudah**. Kolom **Dapat diedit setelah basis data dibuat** menunjukkan opsi yang dapat Anda ubah setelah membuat basis data.
   + Jika pengaturan memiliki **Tidak** di kolom tersebut, dan Anda menginginkan pengaturan yang berbeda, Anda dapat menggunakan **Pembuatan Standar** untuk membuat instans DB.
   + Jika pengaturan memiliki **Ya** di kolom tersebut, dan Anda menginginkan pengaturan yang berbeda, Anda dapat menggunakan **Pembuatan Standar** untuk membuat instans DB, atau mengubah instans DB setelah Anda membuatnya untuk mengubah pengaturan.

1. Pilih **Buat basis data**.

   Untuk melihat nama pengguna dan kata sandi utama untuk instans DB, pilih **Lihat detail kredensial**.

   Anda dapat menggunakan nama pengguna dan kata sandi yang ditampilkan untuk terhubung ke instans DB sebagai pengguna utama.
**penting**  
Anda tidak dapat melihat kata sandi pengguna utama lagi. Jika Anda tidak mencatatnya, Anda mungkin harus mengubahnya.   
Jika perlu mengubah kata sandi pengguna utama setelah instans DB tersedia, Anda dapat mengubah instans DB untuk melakukannya. Untuk informasi selengkapnya tentang cara mengubah instans DB, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

1. Dalam daftar **Basis Data**, pilih nama instans DB Oracle yang baru untuk menampilkan detailnya.

   Instans DB memiliki status **Membuat** hingga siap digunakan.  
![\[Detail instans DB.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Oracle-Launch05.png)

   Saat statusnya berubah menjadi **Tersedia**, Anda dapat terhubung ke instans DB. Tergantung pada kelas instans DB dan jumlah penyimpanan, diperlukan waktu hingga 20 menit sebelum instans baru tersedia. Saat instans DB sedang dibuat, Anda dapat melanjutkan ke langkah berikutnya dan membuat instans EC2.

## (Opsional) Buat VPC, instans EC2, dan instans Oracle DB menggunakan CloudFormation
<a name="CHAP_GettingStarted.CFN.Oracle"></a>

Alih-alih menggunakan konsol untuk membuat VPC, instans EC2, dan instans Oracle DB, Anda dapat menggunakannya CloudFormation untuk menyediakan AWS sumber daya dengan memperlakukan infrastruktur sebagai kode. Untuk membantu Anda mengatur AWS sumber daya Anda menjadi unit yang lebih kecil dan lebih mudah dikelola, Anda dapat menggunakan fungsionalitas tumpukan CloudFormation bersarang. Untuk informasi selengkapnya, lihat [Membuat tumpukan di CloudFormation konsol](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) dan [Bekerja dengan tumpukan bersarang](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html). 

**penting**  
CloudFormation gratis, tetapi sumber daya yang CloudFormation menciptakan hidup. Anda dikenakan biaya penggunaan standar untuk sumber daya ini sampai Anda menghentikannya. Untuk informasi selengkapnya, lihat [harga RDS untuk Oracle](https://aws.amazon.com//rds/oracle/pricing).

Untuk membuat sumber daya Anda menggunakan CloudFormation konsol, selesaikan langkah-langkah berikut:
+ Langkah 1: Unduh CloudFormation template
+ Langkah 2: Konfigurasikan sumber daya Anda menggunakan CloudFormation

### Unduh CloudFormation templatnya
<a name="CHAP_GettingStarted.CFN.Oracle.Step1"></a>

 CloudFormation Template adalah file teks JSON atau YAMAL yang berisi informasi konfigurasi tentang sumber daya yang ingin Anda buat di tumpukan. Template ini juga membuat VPC dan host bastion untuk Anda bersama dengan instance RDS.

Untuk mengunduh file template, buka tautan berikut, [Oracle CloudFormation Template](https://github.com/aws-ia/cfn-ps-amazon-rds/blob/main/templates/rds-oracle-main.template.yaml).

Di halaman Github, klik tombol *Unduh file mentah* untuk menyimpan file YAMAL template.

### Konfigurasikan sumber daya Anda menggunakan CloudFormation
<a name="CHAP_GettingStarted.CFN.Oracle.Step2"></a>

**catatan**  
Sebelum memulai proses ini, pastikan Anda memiliki pasangan Kunci untuk instans EC2 di. Akun AWS Untuk informasi selengkapnya, lihat [Pasangan kunci Amazon EC2 dan instans Linux](https://docs.aws.amazon.com//AWSEC2/latest/UserGuide/ec2-key-pairs.html).

Ketika Anda menggunakan CloudFormation template, Anda harus memilih parameter yang benar untuk memastikan sumber daya Anda dibuat dengan benar. Ikuti langkah-langkah di bawah ini:

1. Masuk ke Konsol Manajemen AWS dan buka CloudFormation konsol di [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. Pilih **Buat tumpukan**.

1. Di bagian Tentukan templat, pilih **Unggah file templat dari komputer Anda**, lalu pilih **Berikutnya**.

1. Di halaman **Tentukan detail tumpukan**, atur parameter berikut:

   1. Tetapkan **nama Stack** ke **OracleTestStack**.

   1. Di bawah **Parameter**, atur **Availability Zone** dengan memilih tiga zona ketersediaan.

   1. Di bawah **konfigurasi Linux Bastion Host**, untuk **Key Name**, pilih key pair untuk login ke instans EC2 Anda.

   1. Dalam pengaturan **konfigurasi Linux Bastion Host**, atur **rentang IP yang Diizinkan** ke alamat IP Anda. Untuk menyambung ke instans EC2 di VPC Anda menggunakan Secure Shell (SSH), tentukan alamat IP publik Anda menggunakan layanan di. [https://checkip.amazonaws.com](https://checkip.amazonaws.com) Contoh alamat IP adalah 192.0.2.1/32.
**Awas**  
Jika menggunakan `0.0.0.0/0` untuk akses SSH, Anda memungkinkan semua alamat IP untuk mengakses instans publik EC2 Anda menggunakan SSH. Pendekatan ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans EC2 Anda menggunakan SSH.

   1. Di bawah **konfigurasi Database General**, atur **kelas instance Database** ke **db.t3.micro**.

   1. Tetapkan **nama Database** ke**database-test1**.

   1. Untuk **nama pengguna master Database**, masukkan nama untuk pengguna master.

   1. Atur **Kelola kata sandi pengguna master DB dengan Secrets Manager** `false` untuk tutorial ini.

   1. Untuk **kata sandi Database**, tetapkan kata sandi pilihan Anda. Ingat kata sandi ini untuk langkah lebih lanjut dalam tutorial.

   1. Di bawah **konfigurasi Penyimpanan Database**, atur **tipe penyimpanan Database** ke **gp2**.

   1. Di bawah **konfigurasi Pemantauan Database**, atur **Aktifkan Performance Insights RDS** ke false.

   1. Biarkan semua pengaturan lainnya sebagai nilai default. Klik **Berikutnya** untuk melanjutkan.

1. Di halaman **Configure stack options**, tinggalkan semua opsi default. Klik **Berikutnya** untuk melanjutkan.

1. Di halaman **tumpukan Tinjauan**, pilih **Kirim** setelah memeriksa database dan opsi host bastion Linux.

Setelah proses pembuatan tumpukan selesai, lihat tumpukan dengan nama *BastionStack*dan *RDSNS* untuk mencatat informasi yang Anda butuhkan untuk terhubung ke database. Untuk informasi selengkapnya, lihat [Melihat data CloudFormation tumpukan dan sumber daya di Konsol Manajemen AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-view-stack-data-resources.html).

## Langkah 3: Hubungkan klien SQL Anda ke instans DB Oracle
<a name="CHAP_GettingStarted.Connecting.Oracle"></a>

Anda dapat menggunakan aplikasi klien SQL standar untuk menghubungkan ke instans DB Anda. Dalam contoh ini, Anda akan menghubungkan ke instans DB Oracle menggunakan klien baris perintah Oracle.

**Menghubungkan ke instans DB Oracle**

1. Temukan titik akhir (nama DNS) dan nomor port untuk instans DB Anda. 

   1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

   1. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS untuk instans DB.

   1. Di panel navigasi, pilih **Basis Data**.

   1. Pilih nama instans DB Oracle untuk menampilkan detailnya. 

   1. Di tab **Konektivitas & keamanan**, salin titik akhir. Selain itu, catat nomor port. Anda memerlukan titik akhir dan nomor port untuk terhubung ke instans DB.   
![\[Hubungkan ke instans DB Oracle.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/OracleConnect1.png)

1. Connect ke instans EC2 yang Anda buat sebelumnya dengan mengikuti langkah-langkah di [Connect to Linux Anda](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstances.html) di Panduan Pengguna *Amazon EC2*.

   Sebaiknya Anda menghubungkan ke instans EC2 menggunakan SSH. Jika utilitas klien SSH diinstal di Windows, Linux, atau Mac, Anda dapat menghubungkan ke instans menggunakan format perintah berikut:

   ```
   ssh -i location_of_pem_file ec2-user@ec2-instance-public-dns-name
   ```

   Misalnya, asumsikan bahwa `ec2-database-connect-key-pair.pem` disimpan di `/dir1` di Linux, dan DNS IPv4 publik untuk instans EC2 Anda adalah `ec2-12-345-678-90.compute-1.amazonaws.com`. Perintah SSH Anda akan tampak seperti berikut:

   ```
   ssh -i /dir1/ec2-database-connect-key-pair.pem ec2-user@ec2-12-345-678-90.compute-1.amazonaws.com
   ```

1. Dapatkan perbaikan bug dan pembaruan keamanan terbaru dengan memperbarui perangkat lunak di instans EC2 Anda. Untuk melakukannya, gunakan perintah berikut.
**catatan**  
Opsi `-y` menginstal pembaruan tanpa meminta konfirmasi. Hilangkan opsi ini untuk memeriksa pembaruan sebelum menginstal.

   ```
   sudo dnf update -y
   ```

1. Di browser web, buka [https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html](https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html).

1. Untuk versi basis data terbaru yang muncul di halaman web, salin tautan .rpm (bukan tautan .zip) untuk Instant Client Basic Package dan SQL\$1Plus Package. Sebagai contoh, tautan berikut adalah untuk Oracle Database versi 21.9:
   + https://download.oracle.com/otn\$1software/linux/instantclient/219000/oracle-klien instan-dasar-21.9.0.0.0-1.el8.x86\$164.rpm
   + https://download.oracle.com/otn\$1software/linux/instantclient/219000/oracle-instantclient-sqlplus-21.9.0.0.0-1.el8.x86\$164.rpm

1. Dalam sesi SSH Anda, jalankan perintah `wget` untuk mengunduh file .rpm dari tautan yang Anda peroleh pada langkah sebelumnya. Contoh berikut mengunduh file .rpm untuk Oracle Database versi 21.9:

   ```
   wget https://download.oracle.com/otn_software/linux/instantclient/219000/oracle-instantclient-basic-21.9.0.0.0-1.el8.x86_64.rpm
   wget https://download.oracle.com/otn_software/linux/instantclient/219000/oracle-instantclient-sqlplus-21.9.0.0.0-1.el8.x86_64.rpm
   ```

1. Instal paket dengan menjalankan perintah `dnf` sebagai berikut:

   ```
   sudo dnf install oracle-instantclient-*.rpm
   ```

1. Mulai SQL\$1Plus dan hubungkan ke instans DB Oracle. Misalnya, masukkan perintah berikut.

   Ganti titik akhir instans DB (nama DNS) untuk `oracle-db-instance-endpoint`, dan ganti nama pengguna utama yang Anda gunakan untuk `admin`. Jika Anda menggunakan **Pembuatan Mudah** untuk Oracle, nama basis datanya adalah `DATABASE`. Masukkan kata sandi utama yang Anda gunakan saat dimintai kata sandi.

   ```
   sqlplus admin@oracle-db-instance-endpoint:1521/DATABASE
   ```

   Setelah memasukkan kata sandi untuk pengguna, Anda akan melihat output yang serupa dengan yang berikut ini.

   ```
   SQL*Plus: Release 21.0.0.0.0 - Production on Wed Mar 1 16:41:28 2023
   Version 21.9.0.0.0
   
   Copyright (c) 1982, 2022, Oracle.  All rights reserved.
   
   Enter password: 
   Last Successful login time: Wed Mar 01 2023 16:30:52 +00:00
   
   Connected to:
   Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
   Version 19.18.0.0.0
   
   SQL>
   ```

   Untuk informasi selengkapnya tentang cara menghubungkan ke instans DB Oracle, lihat [Terhubung ke instans DB Oracle Anda](USER_ConnectToOracleInstance.md). Jika Anda tidak dapat terhubung ke instans DB Anda, lihat [Tidak dapat terhubung ke instans DB Amazon RDS](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting).

   Untuk keamanan, praktik terbaiknya adalah menggunakan koneksi terenkripsi. Hanya gunakan koneksi Oracle yang tidak terenkripsi saat klien dan server berada di VPC yang sama dan jaringan tepercaya. Untuk informasi tentang cara menggunakan koneksi terenkripsi, lihat [Mengamankan koneksi instans DB Oracle](Oracle.Concepts.RestrictedDBAPrivileges.md).

1. Jalankan perintah SQL.

   Misalnya, perintah SQL berikut menunjukkan tanggal saat ini:

   ```
   SELECT SYSDATE FROM DUAL;
   ```

## Langkah 4: Hapus instans EC2 dan instans DB
<a name="CHAP_GettingStarted.Deleting.Oracle"></a>

Setelah Anda terhubung ke dan menjelajahi instans EC2 dan instans DB sampel yang Anda buat, hapus instans tersebut sehingga Anda tidak lagi dikenakan biaya untuk instans DB tersebut.

Jika Anda biasa CloudFormation membuat sumber daya, lewati langkah ini dan lanjutkan ke langkah berikutnya.

**Untuk menghapus instans EC2**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di panel navigasi, pilih **Instans**.

1. Pilih instans EC2, dan pilih **Status instans, Akhiri instans**.

1. Pilih **Akhiri** saat diminta untuk konfirmasi.

Untuk informasi selengkapnya tentang menghapus instans EC2, lihat [Mengakhiri instans Anda di Panduan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html) Pengguna *Amazon* EC2.

**Untuk menghapus instans DB tanpa snapshot DB akhir**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Basis data**.

1. Pilih instans DB yang ingin Anda hapus.

1. Untuk **Tindakan**, pilih **Hapus**.

1. Hapus **Buat snapshot akhir?** dan **Pertahankan pencadangan otomatis**.

1. Lengkapi pengakuan dan pilih **Hapus**. 

## (Opsional) Hapus instans EC2 dan instans DB yang dibuat dengan CloudFormation
<a name="CHAP_GettingStarted.DeletingCFN.Oracle"></a>

Jika Anda biasa CloudFormation membuat sumber daya, hapus CloudFormation tumpukan setelah Anda terhubung dan jelajahi contoh instans EC2 dan instans DB, sehingga Anda tidak lagi dikenakan biaya untuk itu.

**Untuk menghapus sumber CloudFormation daya**

1. Buka CloudFormation konsol.

1. Pada halaman **Stacks** di CloudFormationconsole, pilih tumpukan root (tumpukan tanpa nama VPCStack, BastionStack atau RDSNS).

1. Pilih **Hapus**.

1. Pilih **Hapus tumpukan** saat diminta konfirmasi.

Untuk informasi selengkapnya tentang menghapus tumpukan CloudFormation, lihat [Menghapus tumpukan di CloudFormation konsol di AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-delete-stack.html) *Panduan Pengguna*.

## (Opsional) Menghubungkan instans DB Anda ke fungsi Lambda
<a name="CHAP_GettingStarted.ComputeConnect.Oracle"></a>

Anda juga dapat menghubungkan instans DB RDS for Oracle ke sumber daya komputasi nirserver Lambda. Fungsi Lambda memungkinkan Anda menjalankan kode tanpa menyediakan atau mengelola infrastruktur. Fungsi Lambda juga memungkinkan Anda untuk otomatis merespons permintaan eksekusi kode pada skala apa pun, mulai dari belasan peristiwa dalam sehari hingga ratusan per detik. Lihat informasi yang lebih lengkap di [Menghubungkan secara otomatis fungsi Lambda dan instans DB](lambda-rds-connect.md).

# Membuat dan menghubungkan ke instans DB PostgreSQL
<a name="CHAP_GettingStarted.CreatingConnecting.PostgreSQL"></a>

Tutorial ini membuat instans EC2 dan instans DB RDS for PostgreSQL. Tutorial ini menunjukkan cara mengakses instans DB dari instans EC2 menggunakan klien PostgreSQL standar. Sebagai praktik terbaik, tutorial ini membuat instans DB privat dalam cloud privat virtual (VPC). Dalam kebanyakan kasus, sumber daya lain dalam VPC yang sama, seperti instans EC2, dapat mengakses instans DB, tetapi sumber daya di luar VPC tidak dapat mengaksesnya.

Setelah Anda menyelesaikan tutorial, ada subnet publik dan privat di setiap Zona Ketersediaan di VPC Anda. Dalam satu Zona Ketersediaan, instans EC2 berada di subnet publik, dan instans DB berada di subnet privat.

**penting**  
Tidak ada biaya untuk membuat AWS akun. Namun, dengan menyelesaikan tutorial ini, Anda mungkin dikenakan biaya untuk AWS sumber daya yang Anda gunakan. Anda dapat menghapus sumber daya ini setelah menyelesaikan tutorial jika tidak diperlukan lagi.

Diagram berikut menunjukkan konfigurasi setelah tutorial selesai.

![\[Instans EC2 dan instans DB PostgreSQL.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/getting-started-postgresql.png)


Tutorial ini memungkinkan Anda untuk membuat sumber daya Anda dengan menggunakan salah satu metode berikut:

1. Gunakan Konsol Manajemen AWS - [Buat instans EC2](#CHAP_GettingStarted.Creating.RDSPostgreSQL.EC2) dan [Buat instance PostgreSQL DB](#CHAP_GettingStarted.Creating.PostgreSQL) 

1. Gunakan CloudFormation untuk membuat instance database dan instans EC2 - [(Opsional) Buat VPC, instans EC2, dan PostgreSQL menggunakan CloudFormation](#CHAP_GettingStarted.CFN.PostgreSQL) 

Metode pertama menggunakan **Easy create untuk membuat** instance PostgreSQL DB pribadi dengan. Konsol Manajemen AWS Di sini, Anda hanya menentukan jenis mesin DB, ukuran instans DB, dan pengidentifikasi instans DB. **Pembuatan mudah** menggunakan pengaturan default untuk opsi konfigurasi lainnya. 

Saat Anda menggunakan **Standard create** sebagai gantinya, Anda dapat menentukan lebih banyak opsi konfigurasi saat membuat instans DB. Opsi ini mencakup pengaturan untuk ketersediaan, keamanan, cadangan, dan pemeliharaan. Untuk membuat instans DB publik, Anda harus menggunakan **Pembuatan Standar**. Untuk informasi, lihat [Membuat instans DB Amazon RDS](USER_CreateDBInstance.md).

**Topics**
+ [Prasyarat](#CHAP_GettingStarted.Prerequisites.RDSPostgreSQL)
+ [Buat instans EC2](#CHAP_GettingStarted.Creating.RDSPostgreSQL.EC2)
+ [Buat instance PostgreSQL DB](#CHAP_GettingStarted.Creating.PostgreSQL)
+ [(Opsional) Buat VPC, instans EC2, dan PostgreSQL menggunakan CloudFormation](#CHAP_GettingStarted.CFN.PostgreSQL)
+ [Terhubung ke instans DB PostgreSQL](#CHAP_GettingStarted.Connecting.PostgreSQL)
+ [Hapus instans EC2 dan instans DB](#CHAP_GettingStarted.Deleting.PostgreSQL)
+ [(Opsional) Hapus instans EC2 dan instans DB yang dibuat dengan CloudFormation](#CHAP_GettingStarted.DeletingCFN.PostgreSQL)
+ [(Opsional) Menghubungkan instans DB Anda ke fungsi Lambda](#CHAP_GettingStarted.ComputeConnect.PostreSQL)

## Prasyarat
<a name="CHAP_GettingStarted.Prerequisites.RDSPostgreSQL"></a>

Sebelum memulai, selesaikan langkah-langkah di bagian berikut:
+ [Mendaftar untuk Akun AWS](CHAP_SettingUp.md#sign-up-for-aws)
+ [Buat pengguna dengan akses administratif](CHAP_SettingUp.md#create-an-admin)

## Buat instans EC2
<a name="CHAP_GettingStarted.Creating.RDSPostgreSQL.EC2"></a>

Buat instans Amazon EC2 yang akan Anda gunakan untuk menghubungkan ke basis data Anda.

**Untuk membuat instans EC2**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di sudut kanan atas Konsol Manajemen AWS, pilih Wilayah AWS di mana Anda ingin membuat instans EC2.

1. Pilih **Dasbor EC2**, lalu pilih **Luncurkan instans** seperti yang ditampilkan dalam gambar berikut.  
![\[Dasbor EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_11.png)

   Halaman **Meluncurkan instans** akan terbuka.

1. Pilih pengaturan berikut di halaman **Meluncurkan instans**.

   1. Pada **Nama dan tag**, untuk **Nama**, masukkan **ec2-database-connect**.

   1. Pada **Gambar Aplikasi dan OS (Amazon Machine Image)**, pilih **Amazon Linux**, lalu pilih **AMI Amazon Linux 2023**. Biarkan default untuk pilihan lainnya.  
![\[Pilih Amazon Machine Image.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_12.png)

   1. Pada **Jenis instans**, pilih **t2.micro**.

   1. Pada **Pasangan kunci (login)**, pilih **Nama pasangan kunci** untuk menggunakan pasangan kunci yang ada. Untuk membuat pasangan kunci baru untuk instans Amazon EC2, pilih **Buat Pasangan kunci baru** lalu gunakan jendela **Buat pasangan kunci** untuk membuatnya.

      Untuk informasi selengkapnya tentang membuat key pair baru, lihat [Membuat key pair](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/get-set-up-for-amazon-ec2.html#create-a-key-pair) di *Panduan Pengguna Amazon EC2*.

   1. Untuk **Izinkan lalu lintas SSH** di **Pengaturan jaringan**, pilih sumber koneksi SSH ke instans EC2. 

      Anda dapat memilih **IP Saya** jika alamat IP yang ditampilkan benar untuk koneksi SSH. Jika tidak, Anda dapat menentukan alamat IP yang akan digunakan untuk menghubungkan ke instans EC2 di VPC Anda menggunakan Secure Shell (SSH). Untuk menentukan alamat IP publik Anda, di jendela atau tab browser yang berbeda, Anda dapat menggunakan layanan di [https://checkip.amazonaws.com](https://checkip.amazonaws.com/). Contoh alamat IP adalah 192.0.2.1/32.

       Dalam banyak kasus, Anda dapat menghubungkan melalui penyedia layanan Internet (ISP) atau dari belakang firewall Anda tanpa alamat IP statis. Jika demikian, tentukan rentang alamat IP yang digunakan oleh komputer klien.
**Awas**  
Jika menggunakan `0.0.0.0/0` untuk akses SSH, Anda memungkinkan semua alamat IP untuk mengakses instans publik EC2 Anda menggunakan SSH. Pendekatan ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans EC2 Anda menggunakan SSH.

      Gambar berikut menunjukkan contoh bagian **Pengaturan jaringan**.  
![\[Pengaturan jaringan untuk instans EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/EC2_RDS_Connect_NtwkSettings.png)

   1. Biarkan nilai default untuk bagian yang lainnya.

   1. Tinjau ringkasan konfigurasi instans EC2 Anda di panel **Ringkasan**, dan setelah Anda siap, pilih **Luncurkan instans**.

1. Di halaman **Status Peluncuran**, catat pengidentifikasi untuk instans EC2 baru Anda, misalnya: `i-1234567890abcdef0`.  
![\[Pengidentifikasi instans EC2 di halaman Status Peluncuran.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/getting-started-ec2-id.png)

1. Pilih pengidentifikasi instans EC2 untuk membuka daftar instans EC2, lalu pilih instans EC2 Anda.

1. Di tab **Detail**, catat nilai-nilai berikut, yang akan Anda butuhkan saat menghubungkan menggunakan SSH:

   1. Dalam **ringkasan Instance**, perhatikan nilai untuk ** IPv4 DNS Publik**.  
![\[Nama DNS publik EC2 pada tab Detail halaman Instans.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-ec2-public-dns.png)

   1. Di **Detail instans**, catat nilai untuk **Nama pasangan kunci**.  
![\[Nama pasangan kunci EC2 di tab Detail halaman Instans.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-ec2-key-pair.png)

1. Tunggu hingga **Status instans** untuk instans EC2 Anda berstatus **Berjalan** sebelum melanjutkan.

## Buat instance PostgreSQL DB
<a name="CHAP_GettingStarted.Creating.PostgreSQL"></a>

Blok bangunan dasar Amazon RDS adalah instans DB. Lingkungan ini adalah tempat Anda menjalankan basis data PostgreSQL Anda.

Dalam contoh ini, Anda menggunakan **Pembuatan Mudah** untuk membuat instans DB yang menjalankan mesin basis data PostgreSQL dengan kelas instans DB db.t3.micro.

**Untuk membuat instans DB PostgreSQL dengan Pembuatan Mudah**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas konsol Amazon RDS, pilih AWS Wilayah tempat Anda ingin membuat instans DB. 

1. Di panel navigasi, pilih **Basis Data**.

1. Pilih **Buat basis data** dan pastikan bahwa **Pembuatan mudah** dipilih.  
![\[Opsi pembuatan mudah.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-option.png)

1. Di **Konfigurasi**, pilih **PostgreSQL**.

1. Untuk **Ukuran instans DB**, pilih **Tingkat gratis**. **Tingkat gratis** muncul untuk akun paket gratis. **Kotak pasir** muncul untuk akun paket berbayar.

1. Untuk **Pengidentifikasi instans DB**, masukkan **database-test1**.

1. Untuk **Nama pengguna utama**, masukkan nama untuk pengguna utama, atau tetap gunakan nama default (**postgres**).

   Tampilan halaman **Membuat basis data** seperti gambar berikut. Untuk akun paket gratis, **tingkat gratis** muncul. Untuk akun paket berbayar, **Sandbox** muncul.  
![\[Buat halaman basis data.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-postgresql.png)

1. Untuk menggunakan kata sandi utama yang dibuat secara otomatis untuk instans DB, pilih **Buat kata sandi secara otomatis**.

   Untuk memasukkan kata sandi utama Anda, hapus centang pada **Buat kata sandi secara otomatis**, lalu masukkan kata sandi yang sama dalam **Kata sandi utama** dan **Konfirmasi kata sandi**.

1. Untuk menyiapkan koneksi dengan instans EC2 yang Anda buat sebelumnya, buka **Menyiapkan koneksi EC2 - *opsional***.

   Pilih **Hubungkan ke sumber daya komputasi EC2**. Pilih instans EC2 yang Anda buat sebelumnya.  
![\[Siapkan opsi koneksi EC2.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/EC2_RDS_Setup_Conn-EasyCreate.png)

1. Buka **Lihat pengaturan default untuk Pembuatan Mudah**.  
![\[Pengaturan default pembuatan mudah untuk RDS for PostgreSQL.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-view-default-postgres.png)

   Anda dapat memeriksa pengaturan default yang digunakan dengan **Pembuatan mudah**. Kolom **Dapat diedit setelah basis data dibuat** menunjukkan opsi yang dapat Anda ubah setelah membuat basis data.
   + Jika pengaturan memiliki **Tidak** di kolom tersebut, dan Anda menginginkan pengaturan yang berbeda, Anda dapat menggunakan **Pembuatan Standar** untuk membuat instans DB.
   + Jika pengaturan memiliki **Ya** di kolom tersebut, dan Anda menginginkan pengaturan yang berbeda, Anda dapat menggunakan **Pembuatan Standar** untuk membuat instans DB, atau mengubah instans DB setelah Anda membuatnya untuk mengubah pengaturan.

1. Pilih **Buat basis data**.

   Untuk melihat nama pengguna dan kata sandi utama untuk instans DB, pilih **Lihat detail kredensial**.

   Anda dapat menggunakan nama pengguna dan kata sandi yang ditampilkan untuk terhubung ke instans DB sebagai pengguna utama.
**penting**  
Anda tidak dapat melihat kata sandi pengguna utama lagi. Jika Anda tidak mencatatnya, Anda mungkin harus mengubahnya.   
Jika perlu mengubah kata sandi pengguna utama setelah instans DB tersedia, Anda dapat mengubah instans DB untuk melakukannya. Untuk informasi selengkapnya tentang cara mengubah instans DB, lihat [Memodifikasi instans DB Amazon RDS](Overview.DBInstance.Modifying.md).

1. Dalam daftar **Basis Data**, pilih nama instans DB PostgreSQL yang baru untuk menampilkan detailnya.

   Instans DB memiliki status **Membuat** hingga siap digunakan.  
![\[Detail instans DB.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Postgres-Launch06.png)

   Saat statusnya berubah menjadi **Tersedia**, Anda dapat terhubung ke instans DB. Tergantung pada kelas instans DB dan jumlah penyimpanan, diperlukan waktu hingga 20 menit sebelum instans baru tersedia.

## (Opsional) Buat VPC, instans EC2, dan PostgreSQL menggunakan CloudFormation
<a name="CHAP_GettingStarted.CFN.PostgreSQL"></a>

Alih-alih menggunakan konsol untuk membuat instance VPC, EC2, dan PostgreSQL, Anda dapat menggunakannya CloudFormation untuk menyediakan sumber daya dengan memperlakukan infrastruktur sebagai kode. AWS Untuk membantu Anda mengatur AWS sumber daya Anda menjadi unit yang lebih kecil dan lebih mudah dikelola, Anda dapat menggunakan fungsionalitas tumpukan CloudFormation bersarang. Untuk informasi selengkapnya, lihat [Membuat tumpukan di CloudFormation konsol](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) dan [Bekerja dengan tumpukan bersarang](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html). 

**penting**  
CloudFormation gratis, tetapi sumber daya yang CloudFormation menciptakan hidup. Anda dikenakan biaya penggunaan standar untuk sumber daya ini sampai Anda menghentikannya. Untuk informasi lebih lanjut, lihat harga [RDS untuk PostgreSQL](https://aws.amazon.com//rds/postgresql/pricing).

Untuk membuat sumber daya Anda menggunakan CloudFormation konsol, selesaikan langkah-langkah berikut:
+ Unduh CloudFormation templatnya
+ Konfigurasikan sumber daya Anda menggunakan CloudFormation

### Unduh CloudFormation templatnya
<a name="CHAP_GettingStarted.CFN.PostgreSQL.Step1"></a>

 CloudFormation Template adalah file teks JSON atau YAMAL yang berisi informasi konfigurasi tentang sumber daya yang ingin Anda buat di tumpukan. Template ini juga membuat VPC dan host bastion untuk Anda bersama dengan instance RDS.

Untuk men-download file template, buka link berikut, [PostgreSQL CloudFormation ](https://github.com/aws-ia/cfn-ps-amazon-rds/blob/main/templates/rds-postgres-main.template.yaml) template.

Di halaman Github, klik tombol *Unduh file mentah* untuk menyimpan file YAMAL template.

### Konfigurasikan sumber daya Anda menggunakan CloudFormation
<a name="CHAP_GettingStarted.CFN.PostgreSQL.Step2"></a>

**catatan**  
Sebelum memulai proses ini, pastikan Anda memiliki pasangan Kunci untuk instans EC2 di. Akun AWS Untuk informasi selengkapnya, lihat [Pasangan kunci Amazon EC2 dan instans Linux](https://docs.aws.amazon.com//AWSEC2/latest/UserGuide/ec2-key-pairs.html).

Ketika Anda menggunakan CloudFormation template, Anda harus memilih parameter yang benar untuk memastikan sumber daya Anda dibuat dengan benar. Ikuti langkah-langkah di bawah ini:

1. Masuk ke Konsol Manajemen AWS dan buka CloudFormation konsol di [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/).

1. Pilih **Buat tumpukan**.

1. Di bagian Tentukan templat, pilih **Unggah file templat dari komputer Anda**, lalu pilih **Berikutnya**.

1. Di halaman **Tentukan detail tumpukan**, atur parameter berikut:

   1. Tetapkan **nama Stack** ke **Postgre SQLTest** Stack.

   1. Di bawah **Parameter**, atur **Availability Zone** dengan memilih tiga zona ketersediaan.

   1. Di bawah **konfigurasi Linux Bastion Host**, untuk **Key Name**, pilih key pair untuk login ke instans EC2 Anda.

   1. Dalam pengaturan **konfigurasi Linux Bastion Host**, atur **rentang IP yang Diizinkan** ke alamat IP Anda. Untuk menyambung ke instans EC2 di VPC Anda menggunakan Secure Shell (SSH), tentukan alamat IP publik Anda menggunakan layanan di. [https://checkip.amazonaws.com](https://checkip.amazonaws.com) Contoh alamat IP adalah 192.0.2.1/32.
**Awas**  
Jika menggunakan `0.0.0.0/0` untuk akses SSH, Anda memungkinkan semua alamat IP untuk mengakses instans publik EC2 Anda menggunakan SSH. Pendekatan ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans EC2 Anda menggunakan SSH.

   1. Di bawah **konfigurasi Database General**, atur **kelas instance Database** ke **db.t3.micro**.

   1. Tetapkan **nama Database** ke**database-test1**.

   1. Untuk **nama pengguna master Database**, masukkan nama untuk pengguna master.

   1. Atur **Kelola kata sandi pengguna master DB dengan Secrets Manager** `false` untuk tutorial ini.

   1. Untuk **kata sandi Database**, tetapkan kata sandi pilihan Anda. Ingat kata sandi ini untuk langkah lebih lanjut dalam tutorial.

   1. Di bawah **konfigurasi Penyimpanan Database**, atur **tipe penyimpanan Database** ke **gp2**.

   1. Di bawah **konfigurasi Pemantauan Database**, atur **Aktifkan Performance Insights RDS** ke false.

   1. Biarkan semua pengaturan lainnya sebagai nilai default. Klik **Berikutnya** untuk melanjutkan.

1. Di halaman **Configure stack options**, tinggalkan semua opsi default. Klik **Berikutnya** untuk melanjutkan.

1. Di halaman **tumpukan Tinjauan**, pilih **Kirim** setelah memeriksa database dan opsi host bastion Linux.

Setelah proses pembuatan tumpukan selesai, lihat tumpukan dengan nama *BastionStack*dan *RDSNS* untuk mencatat informasi yang Anda butuhkan untuk terhubung ke database. Untuk informasi selengkapnya, lihat [Melihat data CloudFormation tumpukan dan sumber daya di Konsol Manajemen AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-view-stack-data-resources.html).

## Terhubung ke instans DB PostgreSQL
<a name="CHAP_GettingStarted.Connecting.PostgreSQL"></a>

Anda dapat menghubungkan ke instans DB menggunakan pgadmin atau psql. Contoh ini menjelaskan cara menghubungkan ke instans DB PostgreSQL menggunakan klien baris perintah psql.

**Untuk menghubungkan ke instans DB PostgreSQL menggunakan psql**

1. Temukan titik akhir (nama DNS) dan nomor port untuk instans DB Anda. 

   1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

   1. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS untuk instans DB.

   1. Di panel navigasi, pilih **Basis Data**.

   1. Pilih nama instans DB PostgreSQL untuk menampilkan detailnya. 

   1. Di tab **Konektivitas & keamanan**, salin titik akhir. Perhatikan juga nomor port. Anda memerlukan titik akhir dan nomor port untuk terhubung ke instans DB.   
![\[Hubungkan ke instans DB PostgreSQL.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/PostgreSQL-endpoint.png)

1. Connect ke instans EC2 yang Anda buat sebelumnya dengan mengikuti langkah-langkah di [Connect to Linux Anda](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstances.html) di Panduan Pengguna *Amazon EC2*.

   Sebaiknya Anda menghubungkan ke instans EC2 menggunakan SSH. Jika utilitas klien SSH diinstal di Windows, Linux, atau Mac, Anda dapat menghubungkan ke instans menggunakan format perintah berikut:

   ```
   ssh -i location_of_pem_file ec2-user@ec2-instance-public-dns-name
   ```

   Misalnya, asumsikan bahwa `ec2-database-connect-key-pair.pem` disimpan di `/dir1` di Linux, dan DNS IPv4 publik untuk instans EC2 Anda adalah `ec2-12-345-678-90.compute-1.amazonaws.com`. Perintah SSH Anda akan tampak seperti berikut:

   ```
   ssh -i /dir1/ec2-database-connect-key-pair.pem ec2-user@ec2-12-345-678-90.compute-1.amazonaws.com
   ```

1. Dapatkan pembaruan keamanan dan perbaikan bug terbaru dengan memperbarui perangkat lunak di instans EC2 Anda. Untuk melakukannya, gunakan perintah berikut.
**catatan**  
Opsi `-y` menginstal pembaruan tanpa meminta konfirmasi. Hilangkan opsi ini untuk memeriksa pembaruan sebelum menginstal.

   ```
   sudo dnf update -y
   ```

1. Untuk menginstal klien baris perintah psql dari PostgreSQL di Amazon Linux 2023, jalankan perintah berikut:

   ```
   sudo dnf install postgresql15
   ```

1. Hubungkan ke instans DB PostgreSQL. Misalnya, masukkan perintah berikut pada prompt perintah di komputer klien. Tindakan ini memungkinkan Anda terhubung ke instans DB PostgreSQL menggunakan klien psql.

   Ganti titik akhir instans DB (nama DNS) untuk `endpoint`, ganti nama basis data `--dbname` yang ingin Anda hubungkan untuk `postgres`, dan ganti nama pengguna utama yang Anda gunakan untuk `postgres`. Masukkan kata sandi utama yang Anda gunakan saat dimintai kata sandi.

   ```
   psql --host=endpoint --port=5432 --dbname=postgres --username=postgres
   ```

   Setelah memasukkan kata sandi untuk pengguna, Anda akan melihat output yang serupa dengan yang berikut ini.

   ```
   psql (14.3, server 14.6)
   SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
   Type "help" for help.
   
   postgres=>
   ```

   Untuk informasi selengkapnya tentang cara menghubungkan ke instans DB PostgreSQL, lihat [Menghubungkan ke instans DB yang menjalankan mesin basis data PostgreSQL](USER_ConnectToPostgreSQLInstance.md). Jika Anda tidak dapat terhubung ke instans DB Anda, lihat [Memecahkan masalah koneksi ke instans RDS for PostgreSQL Anda](USER_ConnectToPostgreSQLInstance.Troubleshooting.md). 

   Untuk keamanan, praktik terbaiknya adalah menggunakan koneksi terenkripsi. Hanya gunakan koneksi PostgreSQL yang tidak terenkripsi saat klien dan server berada di VPC yang sama dan jaringan tepercaya. Untuk informasi tentang cara menggunakan koneksi terenkripsi, lihat [Menghubungkan ke instans DB PostgreSQL melalui SSL](PostgreSQL.Concepts.General.SSL.md#PostgreSQL.Concepts.General.SSL.Connecting).

1. Jalankan perintah SQL.

   Misalnya, perintah SQL berikut menunjukkan tanggal dan waktu saat ini:

   ```
   SELECT CURRENT_TIMESTAMP;
   ```

## Hapus instans EC2 dan instans DB
<a name="CHAP_GettingStarted.Deleting.PostgreSQL"></a>

Setelah Anda terhubung ke dan menjelajahi instans EC2 dan instans DB sampel yang Anda buat, hapus instans tersebut sehingga Anda tidak lagi dikenakan biaya untuk instans DB tersebut.

Jika Anda biasa CloudFormation membuat sumber daya, lewati langkah ini dan lanjutkan ke langkah berikutnya.

**Untuk menghapus instans EC2**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di panel navigasi, pilih **Instans**.

1. Pilih instans EC2, dan pilih **Status instans, Akhiri instans**.

1. Pilih **Akhiri** saat diminta untuk konfirmasi.

Untuk informasi selengkapnya tentang menghapus instans EC2, lihat [Mengakhiri instans Anda di Panduan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html) Pengguna *Amazon* EC2.

**Untuk menghapus instans DB tanpa snapshot DB akhir**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Basis data**.

1. Pilih instans DB yang ingin Anda hapus.

1. Untuk **Tindakan**, pilih **Hapus**.

1. Hapus **Buat snapshot akhir?** dan **Pertahankan pencadangan otomatis**.

1. Lengkapi pengakuan dan pilih **Hapus**. 

## (Opsional) Hapus instans EC2 dan instans DB yang dibuat dengan CloudFormation
<a name="CHAP_GettingStarted.DeletingCFN.PostgreSQL"></a>

Jika Anda biasa CloudFormation membuat sumber daya, hapus CloudFormation tumpukan setelah Anda terhubung dan jelajahi contoh instans EC2 dan instans DB, sehingga Anda tidak lagi dikenakan biaya untuk itu.

**Untuk menghapus sumber CloudFormation daya**

1. Buka CloudFormation konsol.

1. Pada halaman **Stacks** di CloudFormationconsole, pilih tumpukan root (tumpukan tanpa nama VPCStack, BastionStack atau RDSNS).

1. Pilih **Hapus**.

1. Pilih **Hapus tumpukan** saat diminta konfirmasi.

Untuk informasi selengkapnya tentang menghapus tumpukan CloudFormation, lihat [Menghapus tumpukan di CloudFormation konsol di AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-delete-stack.html) *Panduan Pengguna*.

## (Opsional) Menghubungkan instans DB Anda ke fungsi Lambda
<a name="CHAP_GettingStarted.ComputeConnect.PostreSQL"></a>

Anda juga dapat menghubungkan instans DB RDS for PostgreSQL ke sumber daya komputasi nirserver Lambda. Fungsi Lambda memungkinkan Anda menjalankan kode tanpa menyediakan atau mengelola infrastruktur. Fungsi Lambda juga memungkinkan Anda untuk otomatis merespons permintaan eksekusi kode pada skala apa pun, mulai dari belasan peristiwa dalam sehari hingga ratusan per detik. Lihat informasi yang lebih lengkap di [Menghubungkan secara otomatis fungsi Lambda dan instans DB](lambda-rds-connect.md).

# Tutorial: Membuat server web dan instans DB Amazon RDS
<a name="TUT_WebAppWithRDS"></a>

Tutorial ini menunjukkan cara menginstal server web Apache dengan PHP dan membuat basis data MariaDB, MySQL, atau PostgreSQL. Server web berjalan di instans Amazon EC2 menggunakan Amazon Linux 2023, dan Anda dapat memilih antara instans DB MySQL atau PostgreSQL. Baik instans Amazon EC2 maupun instans DB berjalan di cloud privat virtual (VPC) berdasarkan layanan Amazon VPC. 

**penting**  
Tidak ada biaya untuk membuat AWS akun. Namun, dengan menyelesaikan tutorial ini, Anda mungkin dikenakan biaya untuk AWS sumber daya yang Anda gunakan. Anda dapat menghapus sumber daya ini setelah menyelesaikan tutorial jika tidak diperlukan lagi.

**catatan**  
Tutorial ini berfungsi dengan Amazon Linux 2023 dan mungkin tidak berfungsi untuk versi Linux lainnya.

Dalam tutorial berikut, Anda membuat instans EC2 yang menggunakan VPC, subnet, dan grup keamanan default untuk Akun AWS Anda. Tutorial ini menunjukkan cara membuat instans DB dan secara otomatis menyiapkan konektivitas dengan instans EC2 yang Anda buat. Tutorial kemudian menunjukkan cara menginstal server web pada instans EC2. Anda menghubungkan server web ke instans DB di VPC menggunakan titik akhir penulis klaster DB.

1. [Luncurkan instans EC2 untuk terhubung dengan instans Anda](CHAP_Tutorials.WebServerDB.LaunchEC2.md)

1. [Membuat instans DB Amazon RDS](CHAP_Tutorials.WebServerDB.CreateDBInstance.md)

1. [Menginstal server web di instans EC2 Anda](CHAP_Tutorials.WebServerDB.CreateWebServer.md)

Diagram berikut menunjukkan konfigurasi setelah tutorial selesai.

![\[Skenario VPC tunggal\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/con-VPC-sec-grp.png)


**catatan**  
Setelah Anda menyelesaikan tutorial, ada subnet publik dan privat di setiap Zona Ketersediaan di VPC Anda.  Jika Anda lebih suka mengonfigurasi VPC baru untuk skenario ini, selesaikan tugas di [Tutorial: Buat VPC untuk digunakan dengan ) IPv4](CHAP_Tutorials.WebServerDB.CreateVPC.md).

# Luncurkan instans EC2 untuk terhubung dengan instans Anda
<a name="CHAP_Tutorials.WebServerDB.LaunchEC2"></a>

Buat instans Amazon EC2 di subnet publik VPC Anda.

**Untuk meluncurkan instans EC2**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon EC2 di. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Di sudut kanan atas Konsol Manajemen AWS, pilih Wilayah AWS tempat Anda ingin membuat instans EC2.

1. Pilih **Dasbor EC2**, lalu pilih **Luncurkan instans**, seperti yang ditampilkan berikut ini.  
![\[Dasbor EC2\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_11.png)

1. Pilih pengaturan berikut di halaman **Luncurkan instans**.

   1. Di bagian **Nama dan tag**, untuk **Nama**, masukkan **tutorial-ec2-instance-web-server**.

   1. Di bagian **Gambar Aplikasi dan OS (Amazon Machine Image)**, pilih **Amazon Linux**, lalu pilih **AMI Amazon Linux 2023**. Biarkan default untuk pilihan lain.  
![\[Memilih Amazon Machine Image\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_12.png)

   1. Di bagian **Jenis instans**, pilih **t2.micro**.

   1. Pada **Pasangan kunci (login)**, pilih **Nama pasangan kunci** untuk menggunakan pasangan kunci yang ada. Untuk membuat pasangan kunci baru untuk instans Amazon EC2, pilih **Buat Pasangan kunci baru** lalu gunakan jendela **Buat pasangan kunci** untuk membuatnya.

      Untuk informasi selengkapnya tentang membuat key pair baru, lihat [Membuat key pair](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/get-set-up-for-amazon-ec2.html#create-a-key-pair) di *Panduan Pengguna Amazon EC2*.

   1. Di bagian **Pengaturan jaringan**, atur nilai-nilai ini dan biarkan nilai-nilai lainnya sebagai default:
      + Untuk **Izinkan lalu lintas SSH dari**, pilih sumber koneksi SSH ke instans EC2.

        Anda dapat memilih **IP Saya** jika alamat IP yang ditampilkan benar untuk koneksi SSH.

        Jika tidak, Anda dapat menentukan alamat IP yang akan digunakan untuk menghubungkan ke instans EC2 di VPC Anda menggunakan Secure Shell (SSH). Untuk menentukan alamat IP publik Anda, di jendela atau tab browser yang berbeda, Anda dapat menggunakan layanan di [https://checkip.amazonaws.com](https://checkip.amazonaws.com). Contoh alamat IP adalah `203.0.113.25/32`.

        Dalam banyak kasus, Anda dapat menghubungkan melalui penyedia layanan Internet (ISP) atau dari belakang firewall Anda tanpa alamat IP statis. Jika demikian, tentukan rentang alamat IP yang digunakan oleh komputer klien.
**Awas**  
Jika Anda menggunakan `0.0.0.0/0` untuk akses SSH, Anda memungkinkan semua alamat IP untuk mengakses instans publik Anda menggunakan SSH. Hal ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans-instans Anda menggunakan SSH.
      + Aktifkan **Izinkan HTTPs lalu lintas dari internet**.
      + Aktifkan **Izinkan lalu lintas HTTP dari internet**.  
![\[Mengonfigurasi Detail Instans\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_14.png)

   1. Biarkan nilai default untuk bagian yang lainnya.

   1. Tinjau ringkasan konfigurasi instans di panel **Ringkasan**, dan ketika Anda siap, pilih **Luncurkan instans**.

1. Di halaman **Status Peluncuran**, catat pengidentifikasi untuk instans EC2 baru Anda, misalnya: `i-1234567890abcdef0`.  
![\[Pengidentifikasi instans EC2 di halaman Status Peluncuran.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/getting-started-ec2-id.png)

1. Pilih pengidentifikasi instans EC2 untuk membuka daftar instans EC2, lalu pilih instans EC2 Anda.

1. Di tab **Detail**, catat nilai-nilai berikut, yang akan Anda butuhkan saat menghubungkan menggunakan SSH:

   1. Dalam **ringkasan Instance**, perhatikan nilai untuk ** IPv4 DNS Publik**.  
![\[Nama DNS publik EC2 pada tab Detail halaman Instans.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-ec2-public-dns.png)

   1. Di **Detail instans**, catat nilai untuk **Nama pasangan kunci**.  
![\[Nama pasangan kunci EC2 di tab Detail halaman Instans.\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/easy-create-ec2-key-pair.png)

1. Tunggu hingga **status instans** untuk instans Anda **Berjalan** sebelum melanjutkan.

1. Selesaikan [Membuat instans DB Amazon RDS](CHAP_Tutorials.WebServerDB.CreateDBInstance.md).

# Membuat instans DB Amazon RDS
<a name="CHAP_Tutorials.WebServerDB.CreateDBInstance"></a>

Buat instans DB RDS for MariaDB, RDS for MySQL, atau RDS for PostgreSQL yang mempertahankan data yang digunakan oleh aplikasi web. 

------
#### [ RDS for MariaDB ]

**Untuk membuat instans MariaDB**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas Konsol Manajemen AWS, periksa. Wilayah AWS Itu harus sama dengan tempat Anda membuat EC2 instance Anda.

1. Di panel navigasi, pilih **Basis Data**.

1. Pilih **Buat basis data**.

1. Di halaman **Buat basis data**, pilih **Pembuatan standar**.

1. Untuk **opsi Mesin**, pilih **MariaDB**.  
![\[Pilih jenis mesin\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/tutorial-create-mariadb.png)

1. Untuk **Template**, pilih **Tingkat gratis** atau **Kotak Pasir**. **Tingkat gratis** muncul untuk akun paket gratis. **Kotak pasir** muncul untuk akun paket berbayar.  
![\[Pilih Template\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/tutorial-create-template.png)

1. Di bagian **Ketersediaan dan daya tahan**, pertahankan default-nya.

1. Di bagian **Pengaturan**, atur nilai-nilai ini:
   + **Pengidentifikasi instans DB** – Ketikkan **tutorial-db-instance**.
   + **Nama pengguna utama** – Ketikkan **tutorial\$1user**.
   + **Buat kata sandi secara otomatis** – Biarkan opsi nonaktif.
   + **Kata sandi utama** – Ketikkan kata sandi.
   + **Konfirmasi kata sandi** – Ketik ulang kata sandi.  
![\[Bagian pengaturan\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_Settings.png)

1. Di bagian **Konfigurasi instans**, atur nilai-nilai ini:
   + **Kelas runtutan (termasuk kelas t)**
   + **db.t3.micro**  
![\[Bagian konfigurasi instans\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_DB_instance_micro.png)

1. Di bagian **Penyimpanan**, pertahankan default-nya.

1. Di bagian **Konektivitas**, atur nilai-nilai ini dan biarkan nilai lainnya sebagai default:
   + Untuk **sumber daya Compute**, pilih **Connect to an EC2 compute** resource.
   + **EC2 Misalnya, pilih EC2 instance** yang Anda buat sebelumnya, seperti **tutorial-ec2** -. instance-web-server  
![\[Bagian konektivitas\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_Connectivity.png)

1. Di bagian **Autentikasi basis data**, pastikan **Autentikasi kata sandi** dipilih.

1. Buka bagian **Konfigurasi tambahan**, dan masukkan **sample** untuk **Nama basis data awal**. Biarkan opsi lainnya menggunakan pengaturan default.

1. Untuk membuat instans MariaDB, pilih **Buat basis data**.

   Instans DB baru Anda muncul di daftar **Basis data** dengan status **Membuat**.

1. Tunggu sampai **Status** instans DB baru Anda menampilkan status **Tersedia**. Lalu pilih nama instans DB untuk menampilkan detailnya.

1. Di bagian **Konektivitas & keamanan**, lihat **Titik Akhir** dan **Port** instans DB.  
![\[Detail instans DB\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_Endpoint_Port.png)

   Catat titik akhir dan port untuk instans DB Anda. Gunakan informasi ini untuk menghubungkan server web Anda ke instans DB Anda.

1. Selesaikan [Menginstal server web di instans EC2 Anda](CHAP_Tutorials.WebServerDB.CreateWebServer.md).

------
#### [ RDS for MySQL ]

**Untuk membuat instans DB MySQL**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas Konsol Manajemen AWS, periksa. Wilayah AWS Itu harus sama dengan tempat Anda membuat EC2 instance Anda.

1. Di panel navigasi, pilih **Basis Data**.

1. Pilih **Buat basis data**.

1. Di halaman **Buat basis data**, pilih **Pembuatan standar**.

1. Untuk **opsi Mesin**, pilih **MySQL**.  
![\[Pilih jenis mesin\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/tutorial-create-mysql.png)

1. Untuk **Template**, pilih **Tingkat gratis** atau **Kotak Pasir**. **Tingkat gratis** muncul untuk akun paket gratis. **Kotak pasir** muncul untuk akun paket berbayar.  
![\[Pilih Template\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/tutorial-create-template.png)

1. Di bagian **Ketersediaan dan daya tahan**, pertahankan default-nya.

1. Di bagian **Pengaturan**, atur nilai-nilai ini:
   + **Pengidentifikasi instans DB** – Ketikkan **tutorial-db-instance**.
   + **Nama pengguna utama** – Ketikkan **tutorial\$1user**.
   + **Buat kata sandi secara otomatis** – Biarkan opsi nonaktif.
   + **Kata sandi utama** – Ketikkan kata sandi.
   + **Konfirmasi kata sandi** – Ketik ulang kata sandi.  
![\[Bagian pengaturan\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_Settings.png)

1. Di bagian **Konfigurasi instans**, atur nilai-nilai ini:
   + **Kelas runtutan (termasuk kelas t)**
   + **db.t3.micro**  
![\[Bagian konfigurasi instans\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_DB_instance_micro.png)

1. Di bagian **Penyimpanan**, pertahankan default-nya.

1. Di bagian **Konektivitas**, atur nilai-nilai ini dan biarkan nilai lainnya sebagai default:
   + Untuk **sumber daya Compute**, pilih **Connect to an EC2 compute** resource.
   + **EC2 Misalnya, pilih EC2 instance** yang Anda buat sebelumnya, seperti **tutorial-ec2** -. instance-web-server  
![\[Bagian konektivitas\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_Connectivity.png)

1. Di bagian **Autentikasi basis data**, pastikan **Autentikasi kata sandi** dipilih.

1. Buka bagian **Konfigurasi tambahan**, dan masukkan **sample** untuk **Nama basis data awal**. Biarkan opsi lainnya menggunakan pengaturan default.

1. Untuk membuat instans DB MySQL, pilih **Buat basis data**.

   Instans DB baru Anda muncul di daftar **Basis data** dengan status **Membuat**.

1. Tunggu sampai **Status** instans DB baru Anda menampilkan status **Tersedia**. Lalu pilih nama instans DB untuk menampilkan detailnya.

1. Di bagian **Konektivitas & keamanan**, lihat **Titik Akhir** dan **Port** instans DB.  
![\[Detail instans DB\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_Endpoint_Port.png)

   Catat titik akhir dan port untuk instans DB Anda. Gunakan informasi ini untuk menghubungkan server web Anda ke instans DB Anda.

1. Selesaikan [Menginstal server web di instans EC2 Anda](CHAP_Tutorials.WebServerDB.CreateWebServer.md).

------
#### [ RDS for PostgreSQL ]

**Untuk membuat instans DB PostgreSQL**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di sudut kanan atas Konsol Manajemen AWS, periksa. Wilayah AWS Itu harus sama dengan tempat Anda membuat EC2 instance Anda.

1. Di panel navigasi, pilih **Basis Data**.

1. Pilih **Buat basis data**.

1. Di halaman **Buat basis data**, pilih **Pembuatan standar**.

1. Untuk **opsi Mesin**, pilih **PostgreSQL**.  
![\[Pilih jenis mesin\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/tutorial-create-postgres.png)

1. Untuk **Template**, pilih **Tingkat gratis** atau **Kotak Pasir**. **Tingkat gratis** muncul untuk akun paket gratis. **Kotak pasir** muncul untuk akun paket berbayar.  
![\[Pilih Template\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/tutorial-create-template.png)

1. Di bagian **Ketersediaan dan daya tahan**, pertahankan default-nya.

1. Di bagian **Pengaturan**, atur nilai-nilai ini:
   + **Pengidentifikasi instans DB** – Ketikkan **tutorial-db-instance**.
   + **Nama pengguna utama** – Ketikkan **tutorial\$1user**.
   + **Buat kata sandi secara otomatis** – Biarkan opsi nonaktif.
   + **Kata sandi utama** – Ketikkan kata sandi.
   + **Konfirmasi kata sandi** – Ketik ulang kata sandi.  
![\[Bagian pengaturan\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_Settings.png)

1. Di bagian **Konfigurasi instans**, atur nilai-nilai ini:
   + **Kelas runtutan (termasuk kelas t)**
   + **db.t3.micro**  
![\[Bagian konfigurasi instans\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_DB_instance_micro.png)

1. Di bagian **Penyimpanan**, pertahankan default-nya.

1. Di bagian **Konektivitas**, atur nilai-nilai ini dan biarkan nilai lainnya sebagai default:
   + Untuk **sumber daya Compute**, pilih **Connect to an EC2 compute** resource.
   + **EC2 Misalnya, pilih EC2 instance** yang Anda buat sebelumnya, seperti **tutorial-ec2** -. instance-web-server  
![\[Bagian konektivitas\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_Connectivity.png)

1. Di bagian **Autentikasi basis data**, pastikan **Autentikasi kata sandi** dipilih.

1. Buka bagian **Konfigurasi tambahan**, dan masukkan **sample** untuk **Nama basis data awal**. Biarkan opsi lainnya menggunakan pengaturan default.

1. Untuk membuat instans DB PostgreSQL, pilih **Buat basis data**.

   Instans DB baru Anda muncul di daftar **Basis data** dengan status **Membuat**.

1. Tunggu sampai **Status** instans DB baru Anda menampilkan status **Tersedia**. Lalu pilih nama instans DB untuk menampilkan detailnya.

1. Di bagian **Konektivitas & keamanan**, lihat **Titik Akhir** dan **Port** instans DB.  
![\[Detail instans DB\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/Tutorial_WebServer_Endpoint_Port_postgres.png)

   Catat titik akhir dan port untuk instans DB Anda. Gunakan informasi ini untuk menghubungkan server web Anda ke instans DB Anda.

1. Selesaikan [Menginstal server web di instans EC2 Anda](CHAP_Tutorials.WebServerDB.CreateWebServer.md).

------

# Menginstal server web di instans EC2 Anda
<a name="CHAP_Tutorials.WebServerDB.CreateWebServer"></a>

Instal server web pada instans EC2 yang Anda buat di [Luncurkan instans EC2 untuk terhubung dengan instans Anda](CHAP_Tutorials.WebServerDB.LaunchEC2.md). Server web ini terhubung ke instans DB Amazon RDS yang Anda buat di [Membuat instans DB Amazon RDS](CHAP_Tutorials.WebServerDB.CreateDBInstance.md). 

## Menginstal server web Apache dengan PHP dan MariaDB
<a name="CHAP_Tutorials.WebServerDB.CreateWebServer.Apache"></a>

Hubungkan ke instans EC2 Anda dan instal server web.

**Menghubungkan ke instans EC2 dan menginstal server web Apache dengan PHP**

1. Connect ke instans EC2 yang Anda buat sebelumnya dengan mengikuti langkah-langkah di [Connect to Linux Anda](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstances.html) di Panduan Pengguna *Amazon EC2*.

   Sebaiknya Anda menghubungkan ke instans EC2 menggunakan SSH. Jika utilitas klien SSH diinstal di Windows, Linux, atau Mac, Anda dapat menghubungkan ke instans menggunakan format perintah berikut:

   ```
   ssh -i location_of_pem_file ec2-user@ec2-instance-public-dns-name
   ```

   Misalnya, asumsikan bahwa `ec2-database-connect-key-pair.pem` disimpan di `/dir1` di Linux, dan DNS IPv4 publik untuk instans EC2 Anda adalah `ec2-12-345-678-90.compute-1.amazonaws.com`. Perintah SSH Anda akan tampak seperti berikut:

   ```
   ssh -i /dir1/ec2-database-connect-key-pair.pem ec2-user@ec2-12-345-678-90.compute-1.amazonaws.com
   ```

1. Dapatkan pembaruan keamanan dan perbaikan bug terbaru dengan memperbarui perangkat lunak di instans EC2 Anda. Untuk melakukannya, gunakan perintah berikut.
**catatan**  
Opsi `-y` menginstal pembaruan tanpa meminta konfirmasi. Hilangkan opsi ini untuk memeriksa pembaruan sebelum menginstal.

   ```
   sudo dnf update -y
   ```

1. Setelah pembaruan selesai, instal server web Apache, PHP, dan MariaDB atau perangkat lunak PostgreSQL menggunakan perintah berikut. Perintah ini menginstal beberapa paket perangkat lunak dan dependensi terkait bersamaan.

------
#### [ MariaDB & MySQL ]

   ```
   sudo dnf install -y httpd php php-mysqli mariadb105
   ```

------
#### [ PostgreSQL ]

   ```
   sudo dnf install -y httpd php php-pgsql postgresql15
   ```

------

   Jika Anda mengalami kesalahan, instans Anda mungkin tidak diluncurkan dengan AMI Amazon Linux 2023. Sebaiknya gunakan AMI Amazon Linux 2 AMI. Anda dapat melihat versi Amazon Linux Anda menggunakan perintah berikut.

   ```
   cat /etc/system-release
   ```

   Untuk informasi selengkapnya, lihat [Memperbarui perangkat lunak instans](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/install-updates.html).

1. Mulai server web dengan perintah yang ditampilkan berikut ini.

   ```
   sudo systemctl start httpd
   ```

   Anda dapat menguji apakah server web Anda terinstal dan berjalan dengan benar. Untuk melakukannya, masukkan nama Sistem Nama Domain (DNS) publik dari instans EC2 Anda di bilah alamat browser web, misalnya: `http://ec2-42-8-168-21.us-west-1.compute.amazonaws.com`. Jika server web Anda berjalan, maka Anda akan melihat halaman uji Apache. 

   Jika Anda tidak melihat halaman uji Apache, periksa aturan masuk Anda untuk grup keamanan VPC yang Anda buat di [Tutorial: Buat VPC untuk digunakan dengan ) IPv4](CHAP_Tutorials.WebServerDB.CreateVPC.md). Pastikan aturan masuk Anda menyertakan aturan yang mengizinkan akses HTTP (port 80) untuk alamat IP agar terhubung ke server web.
**catatan**  
Halaman uji Apache hanya muncul jika tidak ada konten di direktori root dokumen, `/var/www/html`. Setelah konten ditambahkan ke direktori root dokumen, konten tersebut akan muncul di alamat DNS publik dari instans EC2 Anda. Sebelumnya, konten tersebut muncul di halaman uji Apache.

1. Konfigurasikan server web untuk memulai setiap boot sistem menggunakan perintah `systemctl`.

   ```
   sudo systemctl enable httpd
   ```

Untuk mengizinkan `ec2-user` mengelola file di direktori root default untuk server web Apache Anda, ubah kepemilikan dan izin direktori `/var/www`. Ada banyak cara untuk menyelesaikan tugas ini. Dalam tutorial ini, Anda menambahkan `ec2-user` ke grup `apache`, untuk memberikan kepemilikan grup `apache` atas direktori `/var/www` dan menetapkan izin tulis ke grup.

**Mengatur izin file untuk server web Apache**

1. Tambahkan pengguna `ec2-user` ke grup `apache`.

   ```
   sudo usermod -a -G apache ec2-user
   ```

1. Keluar untuk menyegarkan izin Anda dan masukkan grup `apache` baru.

   ```
   exit
   ```

1. Masuk kembali dan verifikasi apakah grup `apache` ada dengan perintah `groups`.

   ```
   groups
   ```

   Output Anda akan terlihat seperti berikut ini:

   ```
   ec2-user adm wheel apache systemd-journal
   ```

1. Ubah kepemilikan grup atas direktori `/var/www` dan kontennya ke grup `apache`.

   ```
   sudo chown -R ec2-user:apache /var/www
   ```

1. Ubah izin direktori atas `/var/www` dan subdirektorinya untuk menambahkan izin tulis grup dan atur ID grup pada subdirektori yang dibuat di masa mendatang.

   ```
   sudo chmod 2775 /var/www
   find /var/www -type d -exec sudo chmod 2775 {} \;
   ```

1. Ubah izin file secara berulang di direktori `/var/www` dan subdirektorinya untuk menambahkan izin tulis grup.

   ```
   find /var/www -type f -exec sudo chmod 0664 {} \;
   ```

Sekarang, `ec2-user` (dan setiap anggota grup `apache` mendatang) dapat menambahkan, menghapus, dan mengedit file pada root dokumen Apache. Ini memungkinkan Anda untuk menambahkan konten, seperti situs web statis atau aplikasi PHP. 

**catatan**  
Server web yang menjalankan protokol HTTP tidak memberikan keamanan transportasi untuk data yang dikirim atau diterimanya. Saat Anda menghubungkan ke server HTTP menggunakan browser web, banyak informasi yang terlihat oleh penyadap di mana saja di sepanjang jalur jaringan. Informasi ini mencakup URLs yang Anda kunjungi, konten halaman web yang Anda terima, dan konten (termasuk kata sandi) dari formulir HTML apa pun.   
Praktik terbaik untuk mengamankan server web Anda adalah dengan menginstal dukungan untuk HTTPS (HTTP Secure). Protokol ini melindungi data Anda dengan SSL/TLS enkripsi. Untuk informasi selengkapnya, lihat [Tutorial: Mengkonfigurasi SSL/TLS dengan Amazon Linux AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/SSL-on-amazon-linux-ami.html) di *Panduan Pengguna Amazon EC2*.

## Menghubungkan server web Apache ke instans DB
<a name="CHAP_Tutorials.WebServerDB.CreateWebServer.PHPContent"></a>

Selanjutnya, Anda menambahkan konten ke server web Apache yang terhubung ke instans DB Amazon RDS.

**Menambahkan konten ke server web Apache yang terhubung ke instans DB Anda**

1. Saat masih terhubung ke instans EC2, ubah direktori ke `/var/www` dan buat subdirektori baru yang diberi nama `inc`.

   ```
   cd /var/www
   mkdir inc
   cd inc
   ```

1. Buat file baru dalam direktori `inc` yang diberi nama `dbinfo.inc`, lalu edit file tersebut dengan menggunakan nano (atau editor pilihan Anda).

   ```
   >dbinfo.inc
   nano dbinfo.inc
   ```

1. Tambahkan konten berikut ini ke file `dbinfo.inc`. 
**catatan**  
Sebaiknya tempatkan nama pengguna dan informasi kata sandi dalam folder yang bukan bagian dari root dokumen untuk server web Anda. Hal ini mengurangi kemungkinan informasi keamanan Anda terungkap.  
Pastikan untuk mengubah `master password` ke kata sandi yang sesuai di aplikasi Anda.

   ```
   <?php
   
   define('DB_SERVER', 'db_instance_endpoint');
   define('DB_USERNAME', 'tutorial_user');
   define('DB_PASSWORD', 'master password');
   define('DB_DATABASE', 'sample');
   ?>
   ```

1. Simpan dan tutup file `dbinfo.inc`. Jika Anda menggunakan nano, simpan dan tutup file dengan menggunakan Ctrl\$1S dan Ctrl\$1X.

1. Ubah direktori ke `/var/www/html`.

   ```
   cd /var/www/html
   ```

1. Buat file baru dalam direktori `html` yang diberi nama `SamplePage.php`, lalu edit file tersebut dengan menggunakan nano (atau editor pilihan Anda).

   ```
   >SamplePage.php
   nano SamplePage.php
   ```

1. Tambahkan konten berikut ini ke file `SamplePage.php`:

------
#### [ MariaDB & MySQL ]

   ```
   <?php include "../inc/dbinfo.inc"; ?>
   <html>
   <body>
   <h1>Sample page</h1>
   <?php
   
     /* Connect to MySQL and select the database. */
     $connection = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD);
   
     if (mysqli_connect_errno()) echo "Failed to connect to MySQL: " . mysqli_connect_error();
   
     $database = mysqli_select_db($connection, DB_DATABASE);
   
     /* Ensure that the EMPLOYEES table exists. */
     VerifyEmployeesTable($connection, DB_DATABASE);
   
     /* If input fields are populated, add a row to the EMPLOYEES table. */
     $employee_name = htmlentities($_POST['NAME']);
     $employee_address = htmlentities($_POST['ADDRESS']);
   
     if (strlen($employee_name) || strlen($employee_address)) {
       AddEmployee($connection, $employee_name, $employee_address);
     }
   ?>
   
   <!-- Input form -->
   <form action="<?PHP echo $_SERVER['SCRIPT_NAME'] ?>" method="POST">
     <table border="0">
       <tr>
         <td>NAME</td>
         <td>ADDRESS</td>
       </tr>
       <tr>
         <td>
           <input type="text" name="NAME" maxlength="45" size="30" />
         </td>
         <td>
           <input type="text" name="ADDRESS" maxlength="90" size="60" />
         </td>
         <td>
           <input type="submit" value="Add Data" />
         </td>
       </tr>
     </table>
   </form>
   
   <!-- Display table data. -->
   <table border="1" cellpadding="2" cellspacing="2">
     <tr>
       <td>ID</td>
       <td>NAME</td>
       <td>ADDRESS</td>
     </tr>
   
   <?php
   
   $result = mysqli_query($connection, "SELECT * FROM EMPLOYEES");
   
   while($query_data = mysqli_fetch_row($result)) {
     echo "<tr>";
     echo "<td>",$query_data[0], "</td>",
          "<td>",$query_data[1], "</td>",
          "<td>",$query_data[2], "</td>";
     echo "</tr>";
   }
   ?>
   
   </table>
   
   <!-- Clean up. -->
   <?php
   
     mysqli_free_result($result);
     mysqli_close($connection);
   
   ?>
   
   </body>
   </html>
   
   
   <?php
   
   /* Add an employee to the table. */
   function AddEmployee($connection, $name, $address) {
      $n = mysqli_real_escape_string($connection, $name);
      $a = mysqli_real_escape_string($connection, $address);
   
      $query = "INSERT INTO EMPLOYEES (NAME, ADDRESS) VALUES ('$n', '$a');";
   
      if(!mysqli_query($connection, $query)) echo("<p>Error adding employee data.</p>");
   }
   
   /* Check whether the table exists and, if not, create it. */
   function VerifyEmployeesTable($connection, $dbName) {
     if(!TableExists("EMPLOYEES", $connection, $dbName))
     {
        $query = "CREATE TABLE EMPLOYEES (
            ID int(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
            NAME VARCHAR(45),
            ADDRESS VARCHAR(90)
          )";
   
        if(!mysqli_query($connection, $query)) echo("<p>Error creating table.</p>");
     }
   }
   
   /* Check for the existence of a table. */
   function TableExists($tableName, $connection, $dbName) {
     $t = mysqli_real_escape_string($connection, $tableName);
     $d = mysqli_real_escape_string($connection, $dbName);
   
     $checktable = mysqli_query($connection,
         "SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_NAME = '$t' AND TABLE_SCHEMA = '$d'");
   
     if(mysqli_num_rows($checktable) > 0) return true;
   
     return false;
   }
   ?>
   ```

------
#### [ PostgreSQL ]

   ```
   <?php include "../inc/dbinfo.inc"; ?>
   
   <html>
   <body>
   <h1>Sample page</h1>
   <?php
   
   /* Connect to PostgreSQL and select the database. */
   $constring = "host=" . DB_SERVER . " dbname=" . DB_DATABASE . " user=" . DB_USERNAME . " password=" . DB_PASSWORD ;
   $connection = pg_connect($constring);
   
   if (!$connection){
    echo "Failed to connect to PostgreSQL";
    exit;
   }
   
   /* Ensure that the EMPLOYEES table exists. */
   VerifyEmployeesTable($connection, DB_DATABASE);
   
   /* If input fields are populated, add a row to the EMPLOYEES table. */
   $employee_name = htmlentities($_POST['NAME']);
   $employee_address = htmlentities($_POST['ADDRESS']);
   
   if (strlen($employee_name) || strlen($employee_address)) {
     AddEmployee($connection, $employee_name, $employee_address);
   }
   
   ?>
   
   <!-- Input form -->
   <form action="<?PHP echo $_SERVER['SCRIPT_NAME'] ?>" method="POST">
     <table border="0">
       <tr>
         <td>NAME</td>
         <td>ADDRESS</td>
       </tr>
       <tr>
         <td>
       <input type="text" name="NAME" maxlength="45" size="30" />
         </td>
         <td>
       <input type="text" name="ADDRESS" maxlength="90" size="60" />
         </td>
         <td>
       <input type="submit" value="Add Data" />
         </td>
       </tr>
     </table>
   </form>
   <!-- Display table data. -->
   <table border="1" cellpadding="2" cellspacing="2">
     <tr>
       <td>ID</td>
       <td>NAME</td>
       <td>ADDRESS</td>
     </tr>
   
   <?php
   
   $result = pg_query($connection, "SELECT * FROM EMPLOYEES");
   
   while($query_data = pg_fetch_row($result)) {
     echo "<tr>";
     echo "<td>",$query_data[0], "</td>",
          "<td>",$query_data[1], "</td>",
          "<td>",$query_data[2], "</td>";
     echo "</tr>";
   }
   ?>
   </table>
   
   <!-- Clean up. -->
   <?php
   
     pg_free_result($result);
     pg_close($connection);
   ?>
   </body>
   </html>
   
   
   <?php
   
   /* Add an employee to the table. */
   function AddEmployee($connection, $name, $address) {
      $n = pg_escape_string($name);
      $a = pg_escape_string($address);
      echo "Forming Query";
      $query = "INSERT INTO EMPLOYEES (NAME, ADDRESS) VALUES ('$n', '$a');";
   
      if(!pg_query($connection, $query)) echo("<p>Error adding employee data.</p>"); 
   }
   
   /* Check whether the table exists and, if not, create it. */
   function VerifyEmployeesTable($connection, $dbName) {
     if(!TableExists("EMPLOYEES", $connection, $dbName))
     {
        $query = "CREATE TABLE EMPLOYEES (
            ID serial PRIMARY KEY,
            NAME VARCHAR(45),
            ADDRESS VARCHAR(90)
          )";
   
        if(!pg_query($connection, $query)) echo("<p>Error creating table.</p>"); 
     }
   }
   /* Check for the existence of a table. */
   function TableExists($tableName, $connection, $dbName) {
     $t = strtolower(pg_escape_string($tableName)); //table name is case sensitive
     $d = pg_escape_string($dbName); //schema is 'public' instead of 'sample' db name so not using that
   
     $query = "SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_NAME = '$t';";
     $checktable = pg_query($connection, $query);
   
     if (pg_num_rows($checktable) >0) return true;
     return false;
   
   }
   ?>
   ```

------

1. Simpan dan tutup file `SamplePage.php`.

1. Verifikasi bahwa server web Anda berhasil terhubung ke instans DB Anda dengan membuka browser web dan menelusuri ke `http://EC2 instance endpoint/SamplePage.php`, misalnya: `http://ec2-12-345-67-890.us-west-2.compute.amazonaws.com/SamplePage.php`.

Anda dapat menggunakan `SamplePage.php` untuk menambahkan data ke instans DB Anda. Data yang Anda tambahkan kemudian ditampilkan di halaman. Untuk memverifikasi apakah data dimasukkan ke dalam tabel, instal klien MySQL pada instans Amazon EC2. Kemudian, hubungkan ke instans DB dan kueri tabelnya. 

Untuk informasi tentang menginstal klien MySQL dan menghubungkan ke instans DB, lihat [Menghubungkan ke instans MySQL DB Anda](USER_ConnectToInstance.md).

Untuk memastikan instans DB Anda seaman mungkin, verifikasi bahwa sumber di luar VPC tidak dapat menghubungkan ke instans DB Anda. 

Setelah selesai menguji server web dan database, Anda harus menghapus instans DB dan instans Amazon EC2 Anda.
+ Untuk menghapus instans DB, ikuti petunjuk di [Menghapus instans DB](USER_DeleteInstance.md). Anda tidak perlu membuat snapshot terakhir.
+ Untuk mengakhiri instans Amazon EC2, ikuti petunjuk di [Mengakhiri instans Anda](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html) dalam *Panduan Pengguna Amazon EC2*.

# Tutorial: Menggunakan fungsi Lambda untuk mengakses basis data Amazon RDS
<a name="rds-lambda-tutorial"></a>

Dalam tutorial ini, Anda menggunakan fungsi Lambda untuk menulis data ke basis data [Amazon Relational Database Service](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html) (Amazon RDS) melalui Proksi RDS. Fungsi Lambda Anda membaca catatan dari antrean Amazon Simple Queue Service (Amazon SQS) dan menulis item baru ke tabel di basis data Anda setiap kali ada pesan yang ditambahkan. Dalam contoh ini, Anda menggunakan Konsol Manajemen AWS untuk menambahkan pesan secara manual ke antrean. Diagram berikut menunjukkan AWS sumber daya yang Anda gunakan untuk menyelesaikan tutorial.

![\[\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/TUT_Lambda_1.png)


Dengan Amazon RDS, Anda dapat menjalankan basis data relasional terkelola di cloud menggunakan produk basis data umum seperti Microsoft SQL Server, MariaDB, MySQL, Oracle Database, dan PostgreSQL. Dengan mengakses basis data menggunakan Lambda, Anda dapat membaca dan menulis data sebagai respons terhadap peristiwa, seperti pelanggan baru yang mendaftar ke situs web Anda. Fungsi, instans basis data, dan proksi secara otomatis diskalakan untuk memenuhi periode saat permintaan sedang tinggi.

Untuk menyelesaikan tutorial ini, lakukan tugas berikut:

1. Luncurkan RDS untuk instance database MySQL dan proxy di VPC default Anda Akun AWS.

1. Buat dan uji fungsi Lambda yang membuat tabel baru di basis data Anda dan menulis data ke dalamnya.

1. Buat antrean Amazon SQS dan konfigurasikan untuk menginvokasi fungsi Lambda Anda setiap kali ada pesan baru yang ditambahkan.

1. Uji penyiapan lengkap dengan menambahkan pesan ke antrian Anda menggunakan Konsol Manajemen AWS dan memantau hasilnya menggunakan CloudWatch Log.

Dengan menyelesaikan langkah-langkah ini, Anda belajar:
+ Cara menggunakan Amazon RDS untuk membuat instans basis data dan proksi, serta menghubungkan fungsi Lambda ke proksi.
+ Cara menggunakan Lambda untuk melakukan operasi pembuatan dan pembacaan pada basis data Amazon RDS.
+ Cara menggunakan Amazon SQS untuk menginvokasi fungsi Lambda.

Anda dapat menyelesaikan tutorial ini menggunakan Konsol Manajemen AWS atau AWS Command Line Interface (AWS CLI).

## Prasyarat
<a name="vpc-rds-prereqs"></a>

Sebelum memulai, selesaikan langkah-langkah di bagian berikut:
+ [Mendaftar untuk Akun AWS](CHAP_SettingUp.md#sign-up-for-aws)
+ [Buat pengguna dengan akses administratif](CHAP_SettingUp.md#create-an-admin)

## Buat instans DB Amazon RDS
<a name="vpc-rds-create-RDS-instance"></a>

![\[\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/TUT_Lambda_step1.png)


Instans DB Amazon RDS adalah lingkungan basis data terisolasi yang berjalan di AWS Cloud. Instans dapat berisi satu atau beberapa basis data yang dibuat pengguna. Kecuali Anda menentukan sebaliknya, Amazon RDS membuat instance database baru di VPC default yang disertakan dalam file Anda. Akun AWS Untuk informasi selengkapnya tentang Amazon VPC, lihat [Panduan Pengguna Amazon Virtual Private Cloud](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html).

Dalam tutorial ini, Anda membuat instance baru di VPC default Anda Akun AWS dan membuat database bernama `ExampleDB` dalam contoh itu. Anda dapat membuat instans dan database DB Anda menggunakan salah satu Konsol Manajemen AWS atau AWS CLI.

**Untuk membuat instans basis data**

1. Buka konsol Amazon RDS dan pilih **Buat basis data**.

1. Pilih **Pembuatan standar**, lalu di **Opsi mesin**, pilih **MySQL**.

1. Di **Template**, pilih **Tingkat gratis** atau **Kotak Pasir**. **Tingkat gratis** muncul untuk akun tingkat gratis. **Kotak pasir** muncul untuk akun paket berbayar.

1. Di **Pengaturan**, untuk **Pengidentifikasi instans DB**, masukkan **MySQLForLambda**.

1. Tetapkan nama pengguna dan kata sandi Anda dengan melakukan hal berikut:

   1. Di **Pengaturan kredensial**, atur **Nama pengguna utama** sebagai `admin`.

   1. Untuk **Kata sandi utama**, masukkan dan konfirmasikan kata sandi untuk mengakses basis data Anda.

1. Tentukan nama basis data dengan melakukan hal berikut:
   + Pilih semua sesuai opsi default-nya, kemudian gulir ke bawah ke bagian **Konfigurasi tambahan**.
   + Perluas bagian ini dan masukkan **ExampleDB** sebagai **Nama basis data awal**.

1. Pilih semua sesuai opsi default-nya dan pilih **Buat basis data**.

## Buat fungsi Lambda dan proksi
<a name="auto-create-Lambda"></a>

![\[\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/TUT_Lambda_step2.png)


Anda dapat menggunakan konsol RDS untuk membuat fungsi Lambda dan proksi di VPC yang sama dengan basis data. 

**catatan**  
Anda hanya dapat membuat sumber daya terkait ini jika basis data Anda telah selesai dibuat dan berstatus **Tersedia**.

**Untuk membuat fungsi dan proksi terkait**

1. Dari halaman **Basis Data**, periksa apakah basis data Anda sudah berstatus **Tersedia**. Jika sudah, lanjutkan ke langkah berikutnya. Jika belum, tunggu hingga basis data tersedia.

1. Pilih basis data dan pilih **Siapkan koneksi Lambda** dari **Tindakan**.

1. Di halaman **Siapkan koneksi Lambda**, pilih **Buat fungsi baru**.

   Atur **Nama fungsi Lambda baru** ke **LambdaFunctionWithRDS**.

1. Di bagian **Proksi RDS**, pilih opsi **Hubungkan menggunakan Proksi RDS**. Selanjutnya pilih **Buat proksi baru**.
   + Untuk **Kredensial basis data**, pilih **Nama pengguna dan kata sandi basis data**.
   + Untuk **Nama pengguna**, pilih `admin`.
   + Untuk **Kata sandi**, masukkan kata sandi untuk instans basis data Anda. 

1. Pilih **Siapkan** untuk menyelesaikan pembuatan proksi dan fungsi Lambda.

Wizard menyelesaikan penyiapan dan menyediakan tautan ke konsol Lambda untuk meninjau fungsi baru Anda. Catat titik akhir proksi sebelum beralih ke konsol Lambda.

## Buat peran eksekusi fungsi
<a name="vpc-rds-create-execution-role"></a>

![\[\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/TUT_Lambda_step3.png)


Sebelum membuat fungsi Lambda, Anda membuat peran eksekusi untuk memberikan izin yang diperlukan ke fungsi Anda. Untuk tutorial ini, Lambda memerlukan izin untuk mengelola koneksi jaringan ke VPC yang berisi instans basis data Anda dan untuk melakukan polling pesan dari antrean Amazon SQS.

Untuk memberikan izin yang diperlukan oleh fungsi Lambda, tutorial ini menggunakan kebijakan terkelola IAM. Ini adalah kebijakan yang memberikan izin untuk banyak kasus penggunaan umum dan tersedia di Akun AWS Anda. Untuk informasi selengkapnya tentang penggunaan kebijakan terkelola, lihat [Praktik terbaik kebijakan](security_iam_id-based-policy-examples.md#security_iam_service-with-iam-policy-best-practices).

**Untuk membuat peran eksekusi Lambda**

1. Buka halaman [Peran](https://console.aws.amazon.com/iamv2/home#/roles) di konsol IAM dan pilih **Buat peran**.

1. Untuk **Jenis entitas tepercaya**, pilih **Layanan AWS **, dan untuk **Kasus penggunaan**, pilih **Lambda**.

1. Pilih **Berikutnya**.

1. Tambahkan kebijakan terkelola IAM dengan melakukan hal berikut:

   1. Menggunakan kotak pencarian kebijakan, cari **AWSLambdaSQSQueueExecutionRole**.

   1. Di dalam daftar hasil, centang kotak di samping peran, lalu pilih **Hapus filter**.

   1. Menggunakan kotak pencarian kebijakan, cari **AWSLambdaVPCAccessExecutionRole**.

   1. Di dalam daftar hasil, centang kotak di samping peran, lalu pilih **Berikutnya**.

1. Untuk **Nama peran**, masukkan **lambda-vpc-sqs-role**, lalu pilih **Buat peran**.

Nantinya dalam tutorial ini, Anda memerlukan Amazon Resource Name (ARN) untuk peran eksekusi yang baru saja Anda buat.

**Untuk menemukan ARN peran eksekusi**

1. Buka halaman [Peran](https://console.aws.amazon.com/iamv2/home#/roles) di konsol IAM dan pilih peran (`lambda-vpc-sqs-role`) Anda.

1.  Salin **ARN** yang ditampilkan di bagian **Ringkasan**.

## Buat paket deployment Lambda
<a name="vpc-rds-create-deployment-package"></a>

![\[\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/TUT_Lambda_step4.png)


Contoh kode Python berikut menggunakan paket [PyMySQL](https://pymysql.readthedocs.io/en/latest/) untuk membuka koneksi ke database Anda. Saat pertama kali diinvokasi, fungsi Anda juga membuat tabel baru bernama `Customer`. Tabel menggunakan skema berikut, dengan kunci primer `CustID`:

```
Customer(CustID, Name)
```

Fungsi ini juga menggunakan PyMy SQL untuk menambahkan catatan ke tabel ini. Fungsi ini menambahkan catatan menggunakan pelanggan IDs dan nama yang ditentukan dalam pesan yang akan Anda tambahkan ke antrian Amazon SQS Anda.

Kode ini membuat koneksi ke basis data Anda di luar fungsi handler. Membuat koneksi dalam kode inisialisasi memungkinkan koneksi untuk digunakan kembali oleh invokasi fungsi berikutnya dan meningkatkan performa. Dalam aplikasi produksi, Anda juga dapat menggunakan [konkurensi yang tersedia](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) untuk menginisialisasi sejumlah permintaan koneksi basis data. Koneksi ini langsung tersedia setelah fungsi Anda dipanggil.

```
import sys
import logging
import pymysql
import json
import os

# rds settings
user_name = os.environ['USER_NAME']
password = os.environ['PASSWORD']
rds_proxy_host = os.environ['RDS_PROXY_HOST']
db_name = os.environ['DB_NAME']

logger = logging.getLogger()
logger.setLevel(logging.INFO)

# create the database connection outside of the handler to allow connections to be
# re-used by subsequent function invocations.
try:
        conn = pymysql.connect(host=rds_proxy_host, user=user_name, passwd=password, db=db_name, connect_timeout=5)
except pymysql.MySQLError as e:
    logger.error("ERROR: Unexpected error: Could not connect to MySQL instance.")
    logger.error(e)
    sys.exit(1)

logger.info("SUCCESS: Connection to RDS for MySQL instance succeeded")

def lambda_handler(event, context):
    """
    This function creates a new RDS database table and writes records to it
    """
    message = event['Records'][0]['body']
    data = json.loads(message)
    CustID = data['CustID']
    Name = data['Name']

    item_count = 0
    sql_string = f"insert into Customer (CustID, Name) values(%s, %s)"

    with conn.cursor() as cur:
        cur.execute("create table if not exists Customer ( CustID  int NOT NULL, Name varchar(255) NOT NULL, PRIMARY KEY (CustID))")
        cur.execute(sql_string, (CustID, Name))
        conn.commit()
        cur.execute("select * from Customer")
        logger.info("The following items have been added to the database:")
        for row in cur:
            item_count += 1
            logger.info(row)
    conn.commit()

    return "Added %d items to RDS for MySQL table" %(item_count)
```

**catatan**  
Dalam contoh ini, kredensial akses basis data Anda disimpan sebagai variabel lingkungan. Dalam aplikasi produksi, sebaiknya gunakan [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) sebagai opsi yang lebih aman. Perlu diketahui bahwa jika fungsi Lambda Anda berada di dalam VPC, untuk terhubung ke Secrets Manager, Anda perlu membuat titik akhir VPC. Untuk mempelajari selengkapnya, lihat [ Cara terhubung ke layanan Secrets Manager dalam Virtual Private Cloud](https://aws.amazon.com/blogs/security/how-to-connect-to-aws-secrets-manager-service-within-a-virtual-private-cloud/). 

 Untuk menyertakan ketergantungan PyMy SQL dengan kode fungsi Anda, buat paket.zip deployment. Perintah berikut dapat digunakan untuk Linux, macOS, atau Unix:

**Untuk membuat paket deployment .zip**

1. Simpan kode contoh sebagai file bernama `lambda_function.py`. 

1. Di direktori yang sama di mana Anda membuat `lambda_function.py` file Anda, buat direktori baru bernama `package` dan instal perpustakaan PyMy SQL. 

   ```
   mkdir package
   pip install --target package pymysql
   ```

1. Buat file zip yang berisi kode aplikasi Anda dan perpustakaan PyMy SQL. Di Linux atau macOS, jalankan perintah CLI berikut. Di Windows, gunakan alat zip pilihan Anda untuk membuat file `lambda_function.zip`. File kode sumber `lambda_function.py` dan folder yang berisi dependensi Anda harus diinstal di root file .zip.

   ```
   cd package
   zip -r ../lambda_function.zip .
   cd ..
   zip lambda_function.zip lambda_function.py
   ```

   Anda juga dapat membuat paket deployment menggunakan lingkungan virtual Python. Lihat [Melakukan deployment fungsi Lambda Python dengan arsip file .zip](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html#python-package-create-package-with-dependency).

## Perbarui fungsi Lambda
<a name="vpc-rds-update-function"></a>

Menggunakan paket .zip yang baru saja Anda buat, perbarui fungsi Lambda Anda menggunakan konsol Lambda. Agar fungsi dapat mengakses basis data, variabel lingkungan juga perlu dikonfigurasikan dengan kredensial akses.

**Untuk memperbarui fungsi Lambda**

1. Buka halaman [Fungsi](https://console.aws.amazon.com/lambda/home#/functions) di konsol Lambda dan pilih fungsi `LambdaFunctionWithRDS`.

1. **Di tab **Runtime settings**, pilih **Edit** untuk mengubah **Runtime** fungsi ke Python 3.10.**

1. Ubah **Handler** ke `lambda_function.lambda_handler`.

1. Di tab **Kode**, pilih **Unggah dari** kemudian **File .zip**.

1. Pilih file `lambda_function.zip` yang Anda buat di tahap sebelumnya dan pilih **Simpan**.

Sekarang konfigurasikan fungsi dengan peran eksekusi yang Anda buat sebelumnya. Dengan demikian, fungsi dapat memperoleh izin yang diperlukan untuk mengakses instans basis data Anda dan melakukan polling antrean Amazon SQS.

**Untuk mengonfigurasi peran eksekusi fungsi**

1. Di halaman [Fungsi](https://console.aws.amazon.com/lambda/home#/functions) pada konsol Lambda, pilih tab **Konfigurasi**, lalu pilih **Izin**.

1. Di **Peran eksekusi**, pilih **Edit**.

1. Di **Peran yang ada**, pilih peran eksekusi Anda (`lambda-vpc-sqs-role`).

1. Pilih **Simpan**.

**Untuk mengonfigurasi variabel lingkungan fungsi Anda**

1. Di halaman [Fungsi](https://console.aws.amazon.com/lambda/home#/functions) pada konsol Lambda, pilih tab **Konfigurasi**, lalu pilih **Variabel lingkungan**.

1. Pilih **Edit**.

1. Untuk menambahkan kredensial akses basis data, lakukan hal berikut:

   1. Pilih **Tambahkan variabel lingkungan**, lalu untuk **Kunci** masukkan **USER\$1NAME** dan untuk **Nilai** masukkan **admin**.

   1. Pilih **Tambahkan variabel lingkungan**, lalu untuk **Kunci** masukkan **DB\$1NAME** dan untuk **Nilai** masukkan **ExampleDB**.

   1. Pilih **Tambahkan variabel lingkungan**, lalu untuk **Kunci** masukkan **PASSWORD** dan untuk **Nilai** masukkan kata sandi yang Anda pilih saat membuat basis data.

   1. Pilih **Tambahkan variabel lingkungan**, lalu untuk **Kunci** masukkan **RDS\$1PROXY\$1HOST** dan untuk **Nilai** masukkan titik akhir Proksi RDS yang Anda catat sebelumnya.

   1. Pilih **Simpan**.

## Uji fungsi Lambda Anda di konsol
<a name="vpc-rds-test-function"></a>

![\[\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/TUT_Lambda_step5.png)


Anda dapat menggunakan konsol Lambda untuk menguji fungsi. Anda membuat peristiwa pengujian yang meniru data yang akan diterima fungsi saat diinvokasi menggunakan Amazon SQS pada tahap akhir tutorial ini. Peristiwa pengujian berisi objek JSON yang menentukan ID pelanggan dan nama pelanggan yang akan ditambahkan ke tabel `Customer` buatan fungsi Anda.

**Untuk menguji fungsi Lambda**

1. Buka halaman [Fungsi](https://console.aws.amazon.com/lambda/home#/functions) di konsol Lambda dan pilih fungsi Anda.

1. Pilih bagian **Uji**.

1. Pilih **Buat peristiwa baru** dan masukkan **myTestEvent** sebagai nama peristiwa.

1. Salin kode berikut ke **JSON peristiwa** dan pilih **Simpan**.

   ```
   {
     "Records": [
       {
         "messageId": "059f36b4-87a3-44ab-83d2-661975830a7d",
         "receiptHandle": "AQEBwJnKyrHigUMZj6rYigCgxlaS3SLy0a...",
         "body": "{\n     \"CustID\": 1021,\n     \"Name\": \"Martha Rivera\"\n}",
         "attributes": {
           "ApproximateReceiveCount": "1",
           "SentTimestamp": "1545082649183",
           "SenderId": "AIDAIENQZJOLO23YVJ4VO",
           "ApproximateFirstReceiveTimestamp": "1545082649185"
         },
         "messageAttributes": {},
         "md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3",
         "eventSource": "aws:sqs",
         "eventSourceARN": "arn:aws:sqs:us-west-2:123456789012:my-queue",
         "awsRegion": "us-west-2"
       }
     ]
   }
   ```

1. Pilih **Uji**.

Di tab **Hasil eksekusi**, Anda akan melihat hasil yang mirip dengan yang ditampilkan di **Log Fungsi**:

```
[INFO] 2023-02-14T19:31:35.149Z bdd06682-00c7-4d6f-9abb-89f4bbb4a27f The following items have been added to the database:
[INFO] 2023-02-14T19:31:35.149Z bdd06682-00c7-4d6f-9abb-89f4bbb4a27f (1021, 'Martha Rivera')
```

## Buat antrean Amazon SQS
<a name="vpc-rds-create-queue"></a>

![\[\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/TUT_Lambda_step6.png)


Anda telah berhasil menguji integrasi fungsi Lambda dan instans basis data Amazon RDS. Sekarang Anda membuat antrean Amazon SQS yang akan Anda gunakan untuk menginvokasi fungsi Lambda di tahap akhir tutorial ini.

**Untuk membuat antrean Amazon SQS (konsol)**

1. Buka halaman [Antrean](https://console.aws.amazon.com/sqs/v2/home#/queues) di konsol Amazon SQS dan pilih **Buat antrean**.

1. Di bagian **Jenis** pilih **Standar** masukkan **LambdaRDSQueue** untuk nama antrean.

1. Pilih semua sesuai opsi default-nya dan pilih **Buat antrean**.

## Buat pemetaan sumber peristiwa untuk menginvokasi fungsi Lambda Anda
<a name="vpc-rds-create-event-source-mapping"></a>

![\[\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/TUT_Lambda_step7.png)


[Pemetaan sumber peristiwa](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventsourcemapping.html) adalah sumber daya Lambda yang membaca item dari aliran atau antrean dan menginvokasi fungsi Lambda. Saat mengonfigurasi pemetaan sumber peristiwa, Anda dapat menentukan ukuran batch sehingga catatan dari aliran atau antrean Anda dikumpulkan ke dalam satu payload. Dalam contoh ini, Anda mengatur ukuran batch ke 1 sehingga fungsi Lambda akan diinvokasi setiap kali Anda mengirim sebuah pesan ke antrean. Anda dapat mengonfigurasi pemetaan sumber peristiwa menggunakan konsol AWS CLI atau Lambda.

**Untuk membuat pemetaan sumber peristiwa (konsol)**

1. Buka halaman [Fungsi](https://console.aws.amazon.com/lambda/home#/functions) di konsol Lambda dan pilih fungsi Anda (`LambdaFunctionWithRDS`).

1. Di bagian **Ikhtisar fungsi**, pilih **Tambahkan pemicu**.

1. Untuk sumbernya, pilih **Amazon SQS**, lalu pilih nama antrean (`LambdaRDSQueue`).

1. Untuk **Ukuran batch**, masukkan **1**.

1. Biarkan semua opsi lain diatur ke nilai default dan pilih **Tambahkan**.

Kini semua penyiapan Anda sudah siap diuji dengan menambahkan pesan ke antrean Amazon SQS Anda.

## Uji dan pantau pengaturan Anda
<a name="vpc-rds-test-setup"></a>

![\[\]](http://docs.aws.amazon.com/id_id/AmazonRDS/latest/UserGuide/images/TUT_Lambda_step8.png)


Untuk menguji seluruh pengaturan Anda, tambahkan pesan ke antrean Amazon SQS menggunakan konsol. Anda kemudian menggunakan CloudWatch Log untuk mengonfirmasi bahwa fungsi Lambda Anda menulis catatan ke database Anda seperti yang diharapkan.

**Untuk menguji dan memantau pengaturan Anda**

1. Buka halaman [Antrean](https://console.aws.amazon.com/sqs/v2/home#/queues) di konsol Amazon SQS dan pilih antrean (`LambdaRDSQueue`).

1. Pilih **Kirim dan terima pesan** dan tempelkan JSON berikut ke **Konten pesan** di bagian **Kirim pesan**.

   ```
   {
       "CustID": 1054,
       "Name": "Richard Roe"
   }
   ```

1. Pilih **Kirim pesan**.

   Mengirim pesan ke antrean akan membuat Lambda menginvokasi fungsi Anda melalui pemetaan sumber peristiwa. Untuk mengonfirmasi bahwa Lambda telah memanggil fungsi Anda seperti yang diharapkan, gunakan CloudWatch Log untuk memverifikasi bahwa fungsi tersebut telah menulis nama pelanggan dan ID ke tabel database Anda.

1. Buka halaman [Grup log](https://console.aws.amazon.com/cloudwatch/home#logsV2:log-groups) CloudWatch konsol dan pilih grup log untuk fungsi Anda (`/aws/lambda/LambdaFunctionWithRDS`).

1. Di bagian **Log stream**, pilih log stream terbaru.

   Tabel Anda harus berisi dua catatan pelanggan, satu dari setiap invokasi fungsi Anda. Di log stream, Anda akan melihat pesan yang mirip dengan pesan berikut:

   ```
   [INFO] 2023-02-14T19:06:43.873Z 45368126-3eee-47f7-88ca-3086ae6d3a77 The following items have been added to the database:
   [INFO] 2023-02-14T19:06:43.873Z 45368126-3eee-47f7-88ca-3086ae6d3a77 (1021, 'Martha Rivera')
   [INFO] 2023-02-14T19:06:43.873Z 45368126-3eee-47f7-88ca-3086ae6d3a77 (1054, 'Richard Roe')
   ```

## Bersihkan sumber daya Anda
<a name="rds-tutorial-cleanup"></a>

Sekarang Anda dapat menghapus sumber daya yang Anda buat untuk tutorial ini, kecuali Anda ingin mempertahankannya. Dengan menghapus AWS sumber daya yang tidak lagi Anda gunakan, Anda mencegah tagihan yang tidak perlu ke AWS akun Anda.

**Untuk menghapus fungsi Lambda**

1. Buka [halaman Fungsi](https://console.aws.amazon.com/lambda/home#/functions) di konsol Lambda.

1. Pilih fungsi yang Anda buat.

1. Pilih **Tindakan**, **Hapus**.

1. Pilih **Hapus**.

**Untuk menghapus peran eksekusi**

1. Buka [halaman Peran](https://console.aws.amazon.com/iam/home#/roles) dari konsol IAM.

1. Pilih peran eksekusi yang Anda buat.

1. Pilih **Hapus peran**.

1. Pilih **Ya, Hapus**.

**Untuk menghapus instans DB MySQL**

1. Buka [halaman Basis Data](https://console.aws.amazon.com//rds/home#databases:) di konsol Amazon RDS.

1. Pilih basis data yang Anda buat.

1. Pilih **Tindakan**, **Hapus**.

1. Hapus kotak centang **Buat snapshot terakhir**.

1. Masukkan **delete me** di kotak teks.

1. Pilih **Hapus**.

**Untuk menghapus antrean Amazon SQS**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon SQS di. [https://console.aws.amazon.com/sqs/](https://console.aws.amazon.com/sqs/)

1. Pilih antrean yang Anda buat.

1. Pilih **Hapus**.

1. Masukkan **delete** di kotak teks.

1. Pilih **Hapus**.