

 Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai Patch 198. Python yang ada UDFs akan terus berfungsi hingga 30 Juni 2026. Untuk informasi lebih lanjut, lihat [posting blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

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

# Kueri database
<a name="query-databases"></a>

Untuk menanyakan database yang dihosting oleh cluster Amazon Redshift Anda, Anda memiliki dua opsi:
+ Hubungkan ke klaster Anda dan jalankan kueri Konsol Manajemen AWS dengan editor kueri. 

  Jika Anda menggunakan editor kueri di konsol Amazon Redshift, Anda tidak perlu mengunduh dan menyiapkan aplikasi klien SQL. 
+ Connect ke cluster Anda melalui alat klien SQL, seperti SQL Workbench/J. 

  Amazon Redshift mendukung alat klien SQL yang terhubung melalui Java Database Connectivity (JDBC) dan Open Database Connectivity (ODBC). Amazon Redshift tidak menyediakan atau menginstal alat atau pustaka klien SQL apa pun, jadi Anda harus menginstalnya di komputer klien atau instans Amazon EC2 untuk menggunakannya. Anda dapat menggunakan sebagian besar alat klien SQL yang mendukung driver JDBC atau ODBC.

**catatan**  
 Saat Anda menulis prosedur tersimpan, kami merekomendasikan praktik terbaik untuk mengamankan nilai sensitif:   
 Jangan membuat kode keras informasi sensitif apa pun dalam logika prosedur yang disimpan. Misalnya, jangan tetapkan kata sandi pengguna dalam pernyataan CREATE USER di badan prosedur yang disimpan. Ini menimbulkan risiko keamanan, karena nilai hard-code dapat dicatat sebagai metadata skema dalam tabel katalog. Sebagai gantinya, berikan nilai sensitif, seperti kata sandi, sebagai argumen ke prosedur yang disimpan, melalui parameter.   
Untuk informasi selengkapnya tentang prosedur tersimpan, lihat [MEMBUAT PROSEDUR](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_PROCEDURE.html) dan [Membuat prosedur tersimpan di Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/stored-procedure-overview.html). Untuk informasi selengkapnya tentang tabel katalog, lihat [Tabel katalog sistem](https://docs.aws.amazon.com/redshift/latest/dg/c_intro_catalog_views.html).

# Menghubungkan ke Amazon Redshift
<a name="cluster-syntax"></a>

Anda dapat terhubung ke database Anda menggunakan sintaks berikut.

```
cluster-name.account-number.aws-region.redshift.amazonaws.com/database-name
```

Elemen sintaks didefinisikan sebagai berikut.
+  `cluster-name` 

   Nama klaster Anda. 
+  `account-number` 

   Pengenal unik yang terkait dengan nomor AWS akun Anda di tertentu Wilayah AWS. Semua cluster yang dibuat oleh akun tertentu di tertentu Wilayah AWS memiliki hal yang sama`account-number`. 
+  `aws-region` 

   Kode untuk tempat Wilayah AWS cluster berada. 
+  `database-name` 

   Nama database Anda. 

Misalnya, string koneksi berikut menentukan `my-db` database dalam `my-cluster` cluster di Wilayah AWS us-east-1.

```
my-cluster.123456789012.us-east-1.redshift.amazonaws.com/my-db
```

# Menanyakan database menggunakan editor kueri v2
<a name="query-editor-v2"></a>

Editor kueri v2 adalah aplikasi klien SQL berbasis web terpisah yang Anda gunakan untuk membuat dan menjalankan kueri di gudang data Amazon Redshift Anda. Editor kueri v2 terutama digunakan untuk mengedit dan menjalankan kueri, memvisualisasikan hasil, dan berbagi pekerjaan Anda dengan tim Anda. Dengan query editor v2, Anda dapat membuat database, skema, tabel, dan fungsi yang ditentukan pengguna (). UDFs Dalam panel tampilan pohon, untuk setiap database Anda, Anda dapat melihat skema. Untuk setiap skema, Anda dapat melihat tabel, tampilan UDFs, dan prosedur tersimpan. Editor kueri v2 adalah pengganti editor kueri sebelumnya. 

**catatan**  
Editor kueri v2 tersedia dalam komersial Wilayah AWS. Untuk daftar Wilayah AWS di mana editor kueri v2 tersedia, lihat titik akhir yang terdaftar untuk [Redshift query editor](https://docs.aws.amazon.com/general/latest/gr/redshift-service.html) v2 di. *Referensi Umum Amazon Web Services* 

Untuk demo editor kueri v2, tonton video berikut. 

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/IwZNIroJUnc/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/IwZNIroJUnc)


[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/4EIV4XTE9iI/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/4EIV4XTE9iI)


[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/7y-f1wlyVhI/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/7y-f1wlyVhI)


Editor kueri v2 memiliki serangkaian fitur yang kaya untuk mengelola dan menjalankan pernyataan SQL Anda. Topik di bagian berikut membantu Anda memulai dengan banyak fitur ini. Jelajahi editor kueri v2 Anda sendiri untuk membiasakan diri dengan kemampuannya. 

# Mengkonfigurasi Akun AWS
<a name="query-editor-v2-getting-started"></a>

Anda dapat melakukan serangkaian tugas ini untuk mengonfigurasi editor kueri v2 untuk menanyakan database Amazon Redshift. Dengan izin yang tepat, Anda dapat mengakses data di klaster Amazon Redshift atau grup kerja yang dimiliki oleh Anda yang ada di saat ini. Akun AWS Wilayah AWS

Pertama kali administrator mengonfigurasi editor kueri v2 untuk Anda Akun AWS, mereka memilih AWS KMS key yang digunakan untuk mengenkripsi sumber daya editor kueri v2. Secara default, kunci yang AWS dimiliki digunakan untuk mengenkripsi sumber daya. Atau, administrator dapat menggunakan kunci yang dikelola pelanggan dengan memilih Amazon Resource Name (ARN) untuk kunci di halaman konfigurasi. 

Setelah mengonfigurasi akun, pengaturan AWS KMS enkripsi tidak dapat diubah. Untuk informasi selengkapnya tentang membuat dan menggunakan kunci yang dikelola pelanggan dengan editor kueri v2, lihat[Membuat kunci yang dikelola AWS KMS pelanggan untuk digunakan dengan editor kueri v2](#query-editor-v2-kms-key). Administrator juga dapat secara opsional memilih bucket dan jalur S3 yang digunakan untuk beberapa fitur, seperti memuat data dari file. Untuk informasi selengkapnya, lihat [Memuat data dari pengaturan file lokal dan alur kerja](query-editor-v2-loading-data-local.md). 

Editor kueri Amazon Redshift v2 mendukung autentikasi, enkripsi, isolasi, dan kepatuhan untuk menjaga data Anda tetap diam dan data dalam transit aman. Untuk informasi selengkapnya tentang keamanan data dan editor kueri v2, lihat berikut ini: 
+ [Enkripsi saat diam](security-server-side-encryption.md)
+ [Enkripsi saat bergerak](security-encryption-in-transit.md)
+ [Analisis konfigurasi dan kerentanan di Amazon Redshift](security-vulnerability-analysis-and-management.md)

AWS CloudTrail menangkap panggilan API dan peristiwa terkait yang dibuat oleh atau atas nama Anda Akun AWS dan mengirimkan file log ke bucket Amazon S3 yang Anda tentukan. Anda dapat mengidentifikasi pengguna dan akun mana yang dipanggil AWS, alamat IP sumber dari mana panggilan dilakukan, dan kapan panggilan terjadi. Untuk mempelajari selengkapnya tentang bagaimana editor kueri v2 berjalan AWS CloudTrail, lihat[Logging dengan CloudTrail](logging-with-cloudtrail.md). Untuk informasi selengkapnya CloudTrail, lihat [Panduan AWS CloudTrail Pengguna](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html). 

Editor kueri v2 memiliki kuota yang dapat disesuaikan untuk beberapa sumber dayanya. Untuk informasi selengkapnya, lihat [Kuota untuk objek Amazon Redshift](amazon-redshift-limits.md#amazon-redshift-limits-quota). 

## Sumber daya dibuat dengan editor kueri v2
<a name="query-editor-v2-resources"></a>

Dalam editor kueri v2, Anda dapat membuat sumber daya seperti kueri dan bagan yang disimpan. Semua sumber daya di editor kueri v2 dikaitkan dengan peran IAM atau dengan pengguna. Sebaiknya Anda melampirkan kebijakan ke peran IAM dan menetapkan peran tersebut kepada pengguna.

Di editor kueri v2, Anda dapat menambahkan dan menghapus tag untuk kueri dan bagan yang disimpan. Anda dapat menggunakan tag ini saat menyiapkan kebijakan IAM khusus atau untuk mencari sumber daya. Anda juga dapat mengelola tag dengan menggunakan Editor AWS Resource Groups Tag.

Anda dapat mengatur peran IAM dengan kebijakan IAM untuk berbagi kueri dengan orang lain di bagian yang sama Akun AWS . Wilayah AWS

## Membuat kunci yang dikelola AWS KMS pelanggan untuk digunakan dengan editor kueri v2
<a name="query-editor-v2-kms-key"></a>

**Untuk membuat kunci terkelola enkripsi simetris yang dikelola pelanggan**:

Anda dapat membuat kunci terkelola pelanggan enkripsi simetris untuk mengenkripsi sumber daya editor kueri v2 menggunakan operasi AWS KMS konsol atau AWS KMS API. Untuk petunjuk tentang membuat kunci, lihat [Membuat AWS KMS kunci enkripsi simetris](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) di *Panduan AWS Key Management Service Pengembang*.

**Kebijakan utama**

Kebijakan utama mengontrol akses ke kunci yang dikelola pelanggan Anda. Setiap kunci yang dikelola pelanggan harus memiliki persis satu kebijakan utama, yang berisi pernyataan yang menentukan siapa yang dapat menggunakan kunci dan bagaimana mereka dapat menggunakannya. Saat membuat kunci terkelola pelanggan, Anda dapat menentukan kebijakan kunci. Untuk informasi selengkapnya, lihat [Mengelola akses ke AWS KMS kunci](https://docs.aws.amazon.com/kms/latest/developerguide/control-access-overview.html#managing-access) di *Panduan AWS Key Management Service Pengembang*. 

Untuk menggunakan kunci terkelola pelanggan Anda dengan editor kueri Amazon Redshift v2, operasi API berikut harus diizinkan dalam kebijakan kunci: 
+ `kms:GenerateDataKey`— Menghasilkan kunci data simetris yang unik untuk mengenkripsi data Anda.
+ `kms:Decrypt`— Mendekripsi data yang dienkripsi dengan kunci yang dikelola pelanggan.
+ `kms:DescribeKey`— Memberikan detail kunci yang dikelola pelanggan untuk memungkinkan layanan memvalidasi kunci. 

Berikut ini adalah contoh AWS KMS kebijakan untuk Akun AWS `111122223333`. Di bagian pertama, `kms:ViaService` batas penggunaan kunci untuk layanan editor kueri v2 (yang dinamai `sqlworkbench.region.amazonaws.com` dalam kebijakan). Akun AWS Menggunakan kunci harus`111122223333`. Di bagian kedua, pengguna root dan administrator kunci Akun AWS `111122223333` dapat mengakses ke kunci.

 Saat Anda membuat Akun AWS, Anda mulai dengan satu identitas masuk yang disebut *pengguna Akun AWS root* yang memiliki akses lengkap ke semua Layanan AWS dan sumber daya. Kami sangat menyarankan agar Anda tidak menggunakan pengguna root untuk tugas sehari-hari. Untuk tugas yang memerlukan kredensial pengguna root, lihat [Tugas yang memerlukan kredensial pengguna root](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks) dalam *Panduan Pengguna IAM*. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "key-consolepolicy",
    "Statement": [
        {
            "Sid": "Allow access to principals authorized to use Amazon Redshift Query Editor V2",
            "Effect": "Allow",
            "Principal": {
                "AWS": "*"
            },
            "Action": [
                "kms:GenerateDataKey",
                "kms:Decrypt",
                "kms:DescribeKey"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "kms:ViaService": "sqlworkbench.us-east-1.amazonaws.com",
                    "kms:CallerAccount": "111122223333"
                }
            }
        },
        {
            "Sid": "Allow access for key administrators",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:root"
            },
            "Action": [
                "kms:*"
            ],
            "Resource": "arn:aws:kms:us-east-1:111122223333:key/key_ID"
        }
    ]
}
```

------

Sumber daya berikut memberikan informasi lebih lanjut tentang AWS KMS kunci:
+ Untuk informasi selengkapnya tentang AWS KMS kebijakan, lihat [Menentukan izin dalam kebijakan di Panduan AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/control-access-overview.html#overview-policy-elements) *Pengembang*. 
+ *Untuk informasi tentang AWS KMS kebijakan pemecahan masalah, lihat [Memecahkan masalah akses kunci](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html#example-no-iam) di Panduan Pengembang.AWS Key Management Service * 
+ Untuk informasi selengkapnya tentang kunci, lihat [kunci AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys) di *Panduan AWS Key Management Service Pengembang*.

## Mengakses editor kueri v2
<a name="query-editor-v2-configure"></a>

Untuk mengakses editor kueri v2, Anda memerlukan izin. Administrator dapat melampirkan salah satu kebijakan AWS terkelola berikut ke peran untuk memberikan izin. (Kami merekomendasikan untuk melampirkan kebijakan ke peran IAM dan menetapkan peran tersebut kepada pengguna.) Kebijakan AWS terkelola ini ditulis dengan opsi berbeda yang mengontrol bagaimana sumber daya penandaan memungkinkan berbagi kueri. Anda dapat menggunakan konsol IAM ([https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)) untuk melampirkan kebijakan IAM. 
+ **AmazonRedshiftQueryEditorV2 FullAccess** - Memberikan akses penuh ke operasi dan sumber daya editor kueri Amazon Redshift v2. Kebijakan ini juga memberikan akses ke layanan lain yang diperlukan.
+ **AmazonRedshiftQueryEditorV2 NoSharing** - Memberikan kemampuan untuk bekerja dengan editor kueri Amazon Redshift v2 tanpa berbagi sumber daya. Kebijakan ini juga memberikan akses ke layanan lain yang diperlukan. 
+ **AmazonRedshiftQueryEditorV2 ReadSharing** - Memberikan kemampuan untuk bekerja dengan editor kueri Amazon Redshift v2 dengan berbagi sumber daya terbatas. Prinsipal yang diberikan dapat membaca sumber daya yang dibagikan dengan timnya tetapi tidak dapat memperbaruinya. Kebijakan ini juga memberikan akses ke layanan lain yang diperlukan. 
+ **AmazonRedshiftQueryEditorV2 ReadWriteSharing** - Memberikan kemampuan untuk bekerja dengan editor kueri Amazon Redshift v2 dengan berbagi sumber daya. Kepala sekolah yang diberikan dapat membaca dan memperbarui sumber daya yang dibagikan dengan timnya. Kebijakan ini juga memberikan akses ke layanan lain yang diperlukan. 

Anda juga dapat membuat kebijakan sendiri berdasarkan izin yang diizinkan dan ditolak dalam kebijakan terkelola yang disediakan. Jika Anda menggunakan editor kebijakan konsol IAM untuk membuat kebijakan Anda sendiri, pilih **SQL Workbench** sebagai layanan yang Anda buat kebijakan di editor visual. Query editor v2 menggunakan nama layanan AWS SQL Workbench di editor visual dan IAM Policy Simulator. 

Untuk prinsipal (pengguna dengan peran IAM yang ditetapkan) untuk terhubung ke klaster Amazon Redshift, mereka memerlukan izin di salah satu kebijakan terkelola editor kueri v2. Mereka juga membutuhkan salah satu `redshift:GetClusterCredentialsWithIAM` atau `redshift:GetClusterCredentials` izin ke cluster. Untuk mendapatkan izin ini, seseorang dengan izin administratif dapat melampirkan kebijakan ke peran IAM yang digunakan untuk terhubung ke klaster dengan menggunakan kredenal sementara. Anda dapat membuat cakupan kebijakan ke kluster tertentu atau lebih umum. Untuk informasi selengkapnya tentang izin untuk menggunakan kredensil sementara, lihat [Membuat peran IAM atau pengguna dengan izin untuk](generating-iam-credentials-steps.md#generating-iam-credentials-role-permissions) memanggil IAM atau. GetClusterCredentialsWith GetClusterCredentials 

Untuk prinsipal (biasanya pengguna dengan peran IAM yang ditetapkan) untuk mengaktifkan kemampuan di halaman **Pengaturan akun** untuk orang lain di akun ke **set hasil Ekspor**, mereka memerlukan `sqlworkbench:UpdateAccountExportSettings` izin yang dilampirkan peran tersebut. Izin ini termasuk dalam kebijakan `AmazonRedshiftQueryEditorV2FullAccess` AWS terkelola.

Karena fitur baru ditambahkan ke editor kueri v2, kebijakan AWS terkelola diperbarui sesuai kebutuhan. Jika Anda membuat kebijakan sendiri berdasarkan izin yang diizinkan dan ditolak dalam kebijakan terkelola yang disediakan, edit kebijakan Anda agar tetap up to date dengan perubahan pada kebijakan terkelola. Untuk informasi selengkapnya tentang kebijakan terkelola di Amazon Redshift, lihat. [AWS kebijakan terkelola untuk Amazon Redshift](redshift-iam-access-control-identity-based.md#redshift-policy-resources.managed-policies)

Untuk memberikan akses dan menambahkan izin bagi pengguna, grup, atau peran Anda:
+ Pengguna dan grup di AWS IAM Identity Center:

  Buat rangkaian izin. Ikuti instruksi di [Buat rangkaian izin](https://docs.aws.amazon.com//singlesignon/latest/userguide/howtocreatepermissionset.html) dalam *Panduan Pengguna AWS IAM Identity Center *.
+ Pengguna yang dikelola di IAM melalui penyedia identitas:

  Buat peran untuk federasi identitas. Ikuti instruksi dalam [Buat peran untuk penyedia identitas pihak ketiga (federasi)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-idp.html) dalam *Panduan Pengguna IAM*.
+ Pengguna IAM:
  + Buat peran yang dapat diambil pengguna Anda. Ikuti instruksi dalam [Buat peran untuk pengguna IAM](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-user.html) dalam *Panduan Pengguna IAM*.
  + (Tidak disarankan) Lampirkan kebijakan langsung ke pengguna atau tambahkan pengguna ke grup pengguna. Ikuti petunjuk dalam [Menambahkan izin ke pengguna (konsol)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) dalam *Panduan Pengguna IAM*.

**catatan**  
Jika AWS IAM Identity Center administrator menghapus semua asosiasi set izin untuk set izin tertentu di seluruh akun, akses ke sumber daya editor kueri yang awalnya terkait dengan kumpulan izin yang dihapus tidak lagi dapat diakses. Jika nanti izin yang sama dibuat ulang, pengenal internal baru dibuat. Karena pengenal internal telah berubah, akses ke sumber daya editor kueri yang sebelumnya dimiliki oleh pengguna tidak dapat diakses. Sebaiknya sebelum administrator menghapus set izin, pengguna izin tersebut menetapkan sumber daya editor kueri ekspor seperti buku catatan dan kueri sebagai cadangan.

## Menyiapkan tag utama untuk menghubungkan cluster atau workgroup dari editor kueri v2
<a name="query-editor-v2-principal-tags-iam"></a>

Untuk terhubung ke klaster atau grup kerja menggunakan opsi pengguna federasi, siapkan peran IAM Anda atau pengguna dengan tag utama. Atau, atur penyedia identitas Anda (iDP) untuk masuk `RedshiftDbUser` dan (opsional). `RedshiftDbGroups` Untuk informasi selengkapnya tentang menggunakan IAM untuk mengelola tag, lihat [Melewati tag sesi AWS Security Token Service di](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html) *Panduan Pengguna IAM*. Untuk mengatur akses menggunakan AWS Identity and Access Management, administrator dapat menambahkan tag menggunakan konsol IAM ([https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)). 

**Untuk menambahkan tag utama ke peran IAM**

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

1. Pilih **Peran** di panel navigasi.

1. Pilih peran yang memerlukan akses ke editor kueri v2 menggunakan pengguna federasi.

1. Pilih tab **Tanda**.

1. Pilih **tag Kelola**.

1. Pilih **Tambah tag** dan masukkan **Kunci** sebagai `RedshiftDbUser` dan masukkan **Nilai** nama pengguna federasi.

1. Secara opsional pilih **Tambah tag** dan masukkan **Kunci** sebagai `RedshiftDbGroups` dan masukkan **Nilai** nama grup untuk dikaitkan dengan pengguna.

1. Pilih **Simpan perubahan** untuk melihat daftar tag yang terkait dengan peran IAM yang Anda pilih. Menyebarkan perubahan mungkin memakan waktu beberapa detik.

1. Untuk menggunakan pengguna federasi, segarkan halaman v2 editor kueri Anda setelah perubahan disebarkan.

**Siapkan penyedia identitas Anda (iDP) untuk meneruskan tag utama**  
Prosedur untuk mengatur tag menggunakan penyedia identitas (iDP) bervariasi menurut IDP. Lihat dokumentasi IDP Anda untuk petunjuk tentang cara meneruskan informasi pengguna dan grup ke atribut SAMP. Ketika dikonfigurasi dengan benar, atribut berikut muncul dalam respons SAMP Anda yang digunakan oleh AWS Security Token Service untuk mengisi tag utama untuk `RedshiftDbUser` dan. `RedshiftDbGroups` 

```
<Attribute Name="https://aws.amazon.com/SAML/Attributes/PrincipalTag:RedshiftDbUser">
    <AttributeValue>db-user-name</AttributeValue>
</Attribute>
<Attribute Name="https://aws.amazon.com/SAML/Attributes/PrincipalTag:RedshiftDbGroups">
    <AttributeValue>db-groups</AttributeValue>
</Attribute>
```

 Opsional *db\$1groups* harus berupa daftar yang dipisahkan titik dua seperti. `group1:group2:group3`

Selain itu, Anda dapat mengatur `TransitiveTagKeys` atribut untuk mempertahankan tag selama rantai peran.

```
<Attribute Name="https://aws.amazon.com/SAML/Attributes/TransitiveTagKeys">
  <AttributeValue>RedshiftDbUser</AttributeValue>
  <AttributeValue>RedshiftDbGroups</AttributeValue>
</Attribute>
```

Untuk informasi selengkapnya tentang menyiapkan editor kueri v2, lihat[Izin yang diperlukan untuk menggunakan editor kueri v2](redshift-iam-access-control-identity-based.md#redshift-policy-resources.required-permissions.query-editor-v2).

Untuk informasi tentang cara mengatur Layanan Federasi Direktori Aktif (AD FS), lihat posting blog: [Akses federasi ke editor kueri Amazon Redshift v2 dengan Layanan Federasi Direktori Aktif (AD](https://aws.amazon.com/blogs//big-data/federate-access-to-amazon-redshift-query-editor-v2-with-active-directory-federation-services-ad-fs-part-3/) FS). 

Untuk informasi tentang cara mengatur Okta, lihat posting blog: Akses [masuk tunggal federasi ke editor kueri Amazon Redshift v2](https://aws.amazon.com/blogs//big-data/federate-single-sign-on-access-to-amazon-redshift-query-editor-v2-with-okta/) dengan Okta. 

**catatan**  
Saat Anda terhubung ke klaster atau grup kerja menggunakan opsi koneksi **pengguna Federasi** dari editor kueri v2, Penyedia Identitas (iDP) dapat menyediakan tag utama khusus untuk dan. `RedshiftDbUser` `RedshiftDbGroups` Saat ini, AWS IAM Identity Center dosesn tidak mendukung tag utama khusus yang diteruskan langsung ke editor kueri v2.

# Membuka editor kueri v2
<a name="query-editor-v2-open"></a>

Dengan Amazon Redshift, Anda dapat menjalankan kueri SQL terhadap klaster gudang data menggunakan editor kueri v2 di konsol Amazon Redshift. Editor kueri v2 adalah alat berbasis web yang menyediakan antarmuka yang ramah pengguna untuk menjalankan kueri ad-hoc, menjelajahi data, dan melakukan tugas analisis data. Bagian berikut memandu Anda melalui proses membuka editor kueri v2 di konsol dan memanfaatkan fungsinya secara efektif.

**Untuk membuka editor kueri v2**

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

1. Dari menu navigator, pilih **Editor**, lalu **Query editor V2**. Editor kueri v2 terbuka di tab browser baru.

Halaman editor kueri memiliki menu navigator tempat Anda memilih tampilan sebagai berikut:

**Penyunting ![\[Horizontal lines representing redacted or censored text.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-align-left.png)**  
Anda mengelola dan menanyakan data Anda diatur sebagai tabel dan terkandung dalam database. Basis data dapat berisi data yang disimpan atau berisi referensi ke data yang disimpan di tempat lain, seperti Amazon S3. Anda terhubung ke database yang terdapat dalam kluster atau grup kerja tanpa server.  
Saat bekerja di tampilan **Editor**, Anda memiliki kontrol berikut:   
+ Bidang **Cluster** atau **Workgroup** menampilkan nama yang saat ini Anda sambungkan. Bidang **Database** menampilkan database dalam cluster atau workgroup. Tindakan yang Anda lakukan dalam tampilan **Database** default untuk bertindak pada database yang telah Anda pilih. 
+ Tampilan hierarkis tampilan pohon dari cluster atau kelompok kerja, database, dan skema Anda. Di bawah skema, Anda dapat bekerja dengan tabel, tampilan, fungsi, dan prosedur tersimpan. Setiap objek dalam tampilan pohon mendukung menu konteks untuk melakukan tindakan terkait, seperti **Refresh** atau **Drop**, untuk objek. 
+ Tindakan ![\[The create icon used in the AWS Console.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-add.png) **Buat** untuk membuat database, skema, tabel, dan fungsi.
+ Tindakan ![\[The upload icon used in the AWS Console.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-upload.png) **Muat data** untuk memuat data dari Amazon S3 atau dari file lokal ke database Anda.
+ Ikon ![\[The floppy disk icon used in the AWS Console.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-floppy-disk.png) **Simpan** untuk menyimpan kueri Anda. 
+ Ikon ![\[The shortcut icon used in the AWS Console.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-key-command.png) **Pintasan** untuk menampilkan pintasan keyboard untuk editor. 
+ Ikon ![\[The more actions icon used in the AWS Console.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-more.png) **Lainnya** untuk menampilkan lebih banyak tindakan di editor. Seperti: 
  + **Bagikan dengan tim saya** untuk membagikan kueri atau buku catatan dengan tim Anda. Untuk informasi selengkapnya, lihat [Berkolaborasi dan berbagi sebagai sebuah tim](query-editor-v2-team.md).
  + **Pintasan** untuk menampilkan pintasan keyboard untuk editor.
  + **Riwayat tab** untuk menampilkan riwayat tab tab di editor.
  + **Segarkan pelengkapan otomatis** untuk menyegarkan saran yang ditampilkan saat membuat SQL.
+ Area ![\[The editor icon in the AWS Console where can enter and run queries.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/add-plus.png) **Editor** tempat Anda dapat memasukkan dan menjalankan kueri Anda. 

  Setelah Anda menjalankan kueri, tab **Hasil** muncul dengan hasil. Di sinilah Anda dapat mengaktifkan **Bagan** untuk memvisualisasikan hasil Anda. Anda juga dapat **mengekspor** hasil Anda.
+ Area ![\[The icon in the AWS Console where you can add sections to enter and run SQL or add Markdown.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/add-plus.png) **Notebook** tempat Anda dapat menambahkan bagian untuk masuk dan menjalankan SQL atau menambahkan Markdown. 

  Setelah Anda menjalankan kueri, tab **Hasil** muncul dengan hasil. Di sinilah Anda dapat **Mengekspor** hasil Anda.

**Pertanyaan ![\[A folder icon used in the AWS Console used to query databases.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-folder-close.png)**  
Kueri berisi perintah SQL untuk mengelola dan menanyakan data Anda dalam database. Saat Anda menggunakan editor kueri v2 untuk memuat data sampel, itu juga membuat dan menyimpan kueri sampel untuk Anda.  
 Ketika Anda memilih kueri yang disimpan, Anda dapat membuka, mengganti nama, dan menghapusnya menggunakan menu konteks (klik kanan). Anda dapat melihat atribut seperti **ARN Kueri** dari kueri yang disimpan dengan memilih Detail **kueri**. Anda juga dapat melihat riwayat versinya, mengedit tag yang dilampirkan ke kueri, dan membagikannya dengan tim Anda.

**Notebook ![\[A book icon used in the AWS Console used as SQL notebook.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-manual.png)**  
Notebook SQL berisi sel SQL dan Markdown. Gunakan buku catatan untuk mengatur, membubuhi keterangan, dan berbagi beberapa perintah SQL dalam satu dokumen.  
 Ketika Anda memilih buku catatan yang disimpan, Anda dapat membuka, mengganti nama, menggandakan, dan menghapusnya menggunakan menu konteks (klik kanan). Anda dapat melihat atribut seperti **ARN Notebook buku catatan** yang disimpan dengan memilih detail **Notebook**. Anda juga dapat melihat riwayat versinya, mengedit tag yang dilampirkan ke buku catatan, mengekspornya, dan membagikannya dengan tim Anda. Untuk informasi selengkapnya, lihat [Notebook di Amazon RedshiftNotebook](query-editor-v2-notebooks.md).

**Grafik ![\[Icon of a chart used in the AWS Console as visual representation of data.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-chart.png)**  
Bagan adalah representasi visual dari data Anda. Editor kueri v2 menyediakan alat untuk membuat banyak jenis bagan dan menyimpannya.   
 Saat Anda memilih bagan yang disimpan, Anda dapat membuka, mengganti nama, dan menghapusnya menggunakan menu konteks (klik kanan). Anda dapat melihat atribut seperti **Bagan ARN dari bagan** yang disimpan dengan memilih Detail **bagan**. Anda juga dapat mengedit tag yang dilampirkan pada bagan dan mengekspornya. Untuk informasi selengkapnya, lihat [Memvisualisasikan hasil kueri](query-editor-v2-charts.md). 

**Sejarah ![\[Icon of a clock used in the AWS Console for query history.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-clock.png)**  
Riwayat kueri adalah daftar kueri yang Anda jalankan menggunakan editor kueri Amazon Redshift v2. Kueri ini berjalan sebagai kueri individual atau sebagai bagian dari notebook SQL. Untuk informasi selengkapnya, lihat [Melihat kueri dan riwayat tab](query-editor-v2-history.md). 

**Pertanyaan terjadwal ![\[Icon of a calendar used in the AWS Console for scheduled queries.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-calendar.png)**  
Kueri terjadwal adalah kueri yang diatur untuk memulai pada waktu tertentu.

 Semua tampilan editor kueri v2 memiliki ikon berikut:
+ Ikon **mode ![\[Icon of a quarter moon used in the AWS Console to switch between light and dark modes.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-moon.png) Visual** untuk beralih antara mode terang dan mode gelap.
+ Ikon ![\[Icon of a gear used in the AWS Console to show settings.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-cog.png) **Pengaturan** untuk menampilkan menu layar pengaturan yang berbeda.
  + Ikon **preferensi ![\[Icon used in the AWS Console to show editor preferences.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-properties.png) Editor** untuk mengedit preferensi Anda saat Anda menggunakan editor kueri v2. Di sini Anda dapat **Mengedit pengaturan ruang kerja** untuk mengubah ukuran font, ukuran tab, dan pengaturan tampilan lainnya. Anda juga dapat mengaktifkan (atau menonaktifkan) **Pelengkapan Otomatis** untuk menampilkan saran saat Anda memasukkan SQL Anda.
  + Ikon ![\[Icon used in the AWS Console to view connections used in the editor tab.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-connection.png) **Connections** untuk melihat koneksi yang digunakan oleh tab editor Anda.

    Koneksi digunakan untuk mengambil data dari database. Koneksi dibuat untuk database tertentu. Dengan koneksi terisolasi, hasil perintah SQL yang mengubah database, seperti membuat tabel sementara, dalam satu tab editor, tidak terlihat di tab editor lain. Saat Anda membuka tab editor di editor kueri v2, defaultnya adalah koneksi terisolasi. Saat Anda membuat koneksi bersama, yaitu mematikan sakelar **sesi terisolasi**, maka hasil koneksi bersama lainnya ke database yang sama akan terlihat satu sama lain. Namun, tab editor yang menggunakan koneksi bersama ke database tidak berjalan secara paralel. Pertanyaan yang menggunakan koneksi yang sama harus menunggu hingga koneksi tersedia. Koneksi ke satu database tidak dapat dibagikan dengan database lain, dan dengan demikian hasil SQL tidak terlihat di seluruh koneksi database yang berbeda.

    Jumlah koneksi yang dapat diaktifkan oleh pengguna di akun dikendalikan oleh administrator editor kueri v2.
  + Ikon **Pengaturan ![\[Icon used in the AWS Console used by administrators to change settings of user accounts.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-settings.png) akun** yang digunakan oleh administrator untuk mengubah pengaturan tertentu dari semua pengguna di akun. Untuk informasi selengkapnya, lihat [Pengaturan akun](#query-editor-v2-settings).

## Pertimbangan saat bekerja dengan editor kueri v2
<a name="query-editor-v2-considerations"></a>

Pertimbangkan hal berikut saat bekerja dengan editor kueri v2.
+ Durasi maksimum kueri adalah 24 jam.
+ Ukuran hasil kueri maksimum adalah 100 MB. Jika panggilan mengembalikan lebih dari 100 MB data respons, 100 MB pertama dikembalikan dengan peringatan.
+ Anda dapat menjalankan kueri hingga 300.000 karakter. 
+ Anda dapat menyimpan kueri hingga 30.000 karakter. 
+ Secara default, editor kueri v2 secara otomatis melakukan setiap perintah SQL individual yang berjalan. Ketika pernyataan BEGIN disediakan, pernyataan dalam blok BEGIN-COMMIT atau BEGIN-ROLLBACK dijalankan sebagai satu transaksi. Untuk informasi selengkapnya tentang transaksi, lihat [MULAI](https://docs.aws.amazon.com/redshift/latest/dg/r_BEGIN.html) di Panduan *Pengembang Database Amazon Redshift*.
+ Jumlah maksimum peringatan yang ditampilkan oleh editor kueri v2 saat menjalankan pernyataan SQL adalah. `10` Misalnya, ketika prosedur tersimpan dijalankan, tidak lebih dari 10 pernyataan RAISE ditampilkan.
+ Editor kueri v2 tidak mendukung IAM `RoleSessionName` yang berisi koma (,). Anda mungkin melihat kesalahan yang mirip dengan berikut ini: Pesan Kesalahan: “'AROA123456789Example:MyText, yourtext' bukan nilai yang valid untuk TagValue - ini berisi karakter ilegal” Masalah ini muncul saat Anda mendefinisikan IAM `RoleSessionName` yang menyertakan koma dan kemudian menggunakan editor kueri v2 dengan peran IAM itu.

  Untuk informasi selengkapnya tentang IAM`RoleSessionName`, lihat [atribut RoleSessionName SAMP](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml_assertions.html#saml_role-session-attribute) di Panduan Pengguna *IAM*. 

## Pengaturan akun
<a name="query-editor-v2-settings"></a>

Pengguna dengan izin IAM yang tepat dapat melihat dan mengubah **pengaturan Akun** untuk pengguna lain dalam hal yang sama. Akun AWS Administrator ini dapat melihat atau mengatur hal-hal berikut:
+ Koneksi database bersamaan maksimum per pengguna di akun. Ini termasuk koneksi untuk **sesi Terisolasi**. Saat Anda mengubah nilai ini, perlu waktu 10 menit agar perubahan diterapkan.
+ Izinkan pengguna di akun untuk mengekspor seluruh hasil yang ditetapkan dari perintah SQL ke file.
+ Muat dan tampilkan database sampel dengan beberapa kueri tersimpan terkait.
+ Tentukan jalur Amazon S3 yang digunakan oleh pengguna akun untuk memuat data dari file lokal.
+ Lihat ARN kunci KMS yang digunakan untuk mengenkripsi sumber daya editor kueri v2.

# Menghubungkan ke database Amazon Redshift
<a name="query-editor-v2-connecting"></a>

Untuk menyambung ke database, pilih nama cluster atau workgroup di panel tampilan pohon. Jika diminta, masukkan parameter koneksi.

Ketika Anda terhubung ke cluster atau workgroup dan database-nya, Anda biasanya memberikan nama **Database**. Anda juga menyediakan parameter yang diperlukan untuk salah satu metode otentikasi berikut:

**Pusat Identitas IAM**  
Dengan metode ini, sambungkan ke gudang data Amazon Redshift Anda dengan kredensi masuk tunggal Anda dari penyedia identitas (iDP) Anda. Cluster atau workgroup Anda harus diaktifkan untuk IAM Identity Center di konsol Amazon Redshift. Untuk bantuan menyiapkan koneksi ke Pusat Identitas IAM, lihat[Hubungkan Redshift dengan AWS IAM Identity Center untuk pengalaman masuk tunggal](redshift-iam-access-control-idp-connect.md).

**Pengguna federasi**  
Dengan metode ini, tag utama peran IAM atau pengguna Anda harus memberikan detail koneksi. Anda mengonfigurasi tag ini di AWS Identity and Access Management atau penyedia identitas Anda (iDP). Editor kueri v2 bergantung pada tag berikut.  
+ `RedshiftDbUser`Tag ini mendefinisikan pengguna database yang digunakan oleh query editor v2. Tag ini diperlukan.
+ `RedshiftDbGroups`— Tag ini mendefinisikan grup database yang bergabung saat menghubungkan ke editor kueri v2. Tag ini opsional dan nilainya harus berupa daftar yang dipisahkan titik dua seperti. `group1:group2:group3` Nilai kosong diabaikan, yaitu, `group1::::group2` ditafsirkan sebagai`group1:group2`. 
Tag ini diteruskan ke `redshift:GetClusterCredentials` API untuk mendapatkan kredensil untuk klaster Anda. Untuk informasi selengkapnya, lihat [Menyiapkan tag utama untuk menghubungkan cluster atau workgroup dari editor kueri v2](query-editor-v2-getting-started.md#query-editor-v2-principal-tags-iam).

**Kredensi sementara menggunakan nama pengguna database**  
Opsi ini hanya tersedia saat menghubungkan ke cluster. Dengan metode ini, query editor v2, memberikan **nama pengguna** untuk database. Editor kueri v2 menghasilkan kata sandi sementara untuk terhubung ke database sebagai nama pengguna database Anda. Seorang pengguna yang menggunakan metode ini untuk terhubung harus diizinkan izin IAM untuk`redshift:GetClusterCredentials`. Untuk mencegah pengguna menggunakan metode ini, ubah pengguna atau peran IAM mereka untuk menolak izin ini. 

**Kredensi sementara menggunakan identitas IAM Anda**  
Opsi ini hanya tersedia saat menghubungkan ke cluster. Dengan metode ini, editor kueri v2 memetakan nama pengguna ke identitas IAM Anda dan menghasilkan kata sandi sementara untuk terhubung ke database sebagai identitas IAM Anda. Seorang pengguna yang menggunakan metode ini untuk terhubung harus diizinkan izin IAM untuk`redshift:GetClusterCredentialsWithIAM`. Untuk mencegah pengguna menggunakan metode ini, ubah pengguna atau peran IAM mereka untuk menolak izin ini. 

**Nama pengguna dan kata sandi basis data**  
Dengan metode ini, berikan juga **nama Pengguna** dan **Kata Sandi** untuk database yang Anda sambungkan. Editor kueri v2 membuat rahasia atas nama Anda yang disimpan di AWS Secrets Manager. Rahasia ini berisi kredensil untuk terhubung ke database Anda. 

**AWS Secrets Manager**  
 Dengan metode ini, alih-alih nama database, Anda memberikan **Rahasia** yang disimpan di Secrets Manager yang berisi database dan kredensi login Anda. Untuk informasi tentang membuat rahasia, lihat[Membuat rahasia untuk kredensi koneksi database](redshift-secrets-manager-integration-create.md). 

Ketika Anda memilih klaster atau workgroup dengan editor kueri v2, tergantung pada konteksnya, Anda dapat membuat, mengedit, dan menghapus koneksi menggunakan menu konteks (klik kanan). Anda dapat melihat atribut seperti **ARN Koneksi koneksi** dengan memilih Detail **koneksi**. Anda juga dapat mengedit tag yang dilampirkan ke koneksi.

# Menjelajahi database Amazon Redshift
<a name="query-editor-v2-object-browse"></a>

Dalam database, Anda dapat mengelola skema, tabel, tampilan, fungsi, dan prosedur tersimpan di panel tampilan pohon. Setiap objek dalam tampilan memiliki tindakan yang terkait dengannya dalam menu konteks (klik kanan).

Panel tampilan pohon hierarkis menampilkan objek database. Untuk me-refresh panel tampilan pohon untuk menampilkan objek database yang mungkin telah dibuat setelah tampilan pohon terakhir ditampilkan, pilih ikon. ![\[Circular arrow icon representing a refresh or reload action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-refresh.png) Buka menu konteks (klik kanan) untuk objek untuk melihat tindakan apa yang dapat Anda lakukan.

![\[Tree-view icons\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/sqlworkbench-tree-view.png)

Setelah Anda memilih tabel, Anda dapat melakukan hal berikut:
+ Untuk memulai kueri di editor dengan pernyataan SELECT yang menanyakan semua kolom dalam tabel, gunakan **Pilih tabel**.
+ Untuk melihat atribut atau tabel, gunakan **Tampilkan definisi tabel**. Gunakan ini untuk melihat nama kolom, jenis kolom, pengkodean, kunci distribusi, kunci pengurutan, dan apakah kolom dapat berisi nilai nol. Untuk informasi selengkapnya tentang atribut tabel, lihat [MEMBUAT TABEL](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_TABLE_NEW.html) di Panduan *Pengembang Database Amazon Redshift*.
+ Untuk menghapus tabel, gunakan **Hapus**. Anda dapat menggunakan **tabel Truncate** untuk menghapus semua baris dari tabel atau **Drop table** untuk menghapus tabel dari database. Untuk informasi selengkapnya, lihat [TRUNCATE](https://docs.aws.amazon.com/redshift/latest/dg/r_TRUNCATE.html) dan [DROP TABLE di Panduan](https://docs.aws.amazon.com/redshift/latest/dg/r_DROP_TABLE.html) Pengembang *Database Amazon Redshift*. 

Pilih skema untuk **Refresh** atau **Drop schema**. 

Pilih tampilan untuk **Tampilkan definisi tampilan atau Tampilan** **Jatuhkan**. 

Pilih fungsi untuk **Tampilkan definisi fungsi** atau **fungsi Drop**. 

Pilih prosedur tersimpan untuk **Tampilkan definisi prosedur** atau **prosedur Drop**. 

# Membuat objek database
<a name="query-editor-v2-object-create"></a>

Anda dapat membuat objek database, termasuk database, skema, tabel, dan fungsi yang ditentukan pengguna (). UDFs Anda harus terhubung ke cluster atau workgroup dan database untuk membuat objek database.

## Membuat database
<a name="query-editor-v2-object-create-database"></a>

Anda dapat menggunakan query editor v2 untuk membuat database di cluster atau workgroup Anda.

**Untuk membuat basis data**

Untuk informasi tentang database, lihat [MEMBUAT DATABASE di Panduan Pengembang Database](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_DATABASE.html) *Amazon Redshift*. 

1. Pilih ![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-add.png) **Buat**, lalu pilih **Database**.

1. Masukkan **nama Database**.

1. (Opsional) Pilih **Pengguna dan grup**, dan pilih **pengguna Database**.

1. (Opsional) Anda dapat membuat database dari datashare atau file. AWS Glue Data Catalog Untuk informasi lebih lanjut tentang AWS Glue, lihat [Apa itu AWS Glue?](https://docs.aws.amazon.com/glue/latest/dg/what-is-glue.html) di *Panduan AWS Glue Pengembang*.
   + **(Opsional) Pilih **Buat menggunakan datashare**, dan pilih Pilih datashare.** Daftar ini mencakup datashares produsen yang dapat digunakan untuk membuat datashare konsumen di cluster atau workgroup saat ini.
   + (Opsional) Pilih **Buat menggunakan AWS Glue Data Catalog**, dan pilih **database Choose an AWS Glue**. Dalam **skema katalog Data**, masukkan nama yang akan digunakan untuk skema saat mereferensikan data dalam nama tiga bagian (database.schema.table). 

1. Pilih **Buat basis data**.

   Database baru ditampilkan di panel tampilan pohon.

   **Bila Anda memilih langkah opsional untuk menanyakan database yang dibuat dari datashare, sambungkan ke database Amazon Redshift di cluster atau workgroup (misalnya, database default`dev`), dan gunakan notasi tiga bagian (database.schema.table) yang mereferensikan nama database yang Anda buat saat memilih Buat menggunakan datashare.** Database datasharing tercantum di tab editor editor kueri v2, tetapi tidak diaktifkan untuk koneksi langsung.

   **Bila Anda memilih langkah opsional untuk menanyakan database yang dibuat dari AWS Glue Data Catalog, sambungkan ke database Amazon Redshift Anda di cluster atau grup kerja (misalnya, database default`dev`), dan gunakan notasi tiga bagian (database.schema.table) yang mereferensikan nama database yang Anda buat saat Anda memilih **Buat menggunakan AWS Glue Data Catalog**, skema yang Anda beri nama dalam skema katalog Data, dan tabel di.** AWS Glue Data Catalog Mirip dengan:

   ```
   SELECT * FROM glue-database.glue-schema.glue-table
   ```
**catatan**  
Konfirmasikan bahwa Anda tersambung ke database default menggunakan metode koneksi **Kredensil sementara menggunakan identitas IAM Anda**, dan bahwa kredenal IAM Anda telah diberikan hak istimewa penggunaan ke database. AWS Glue   

   ```
   GRANT USAGE ON DATABASE glue-database to "IAM:MyIAMUser"
   ```

    AWS Glue Basis data tercantum di tab editor kueri v2 editor, tetapi tidak diaktifkan untuk koneksi langsung.

   *Untuk informasi selengkapnya tentang kueri AWS Glue Data Catalog, lihat [Bekerja dengan rangkaian data yang dikelola Lake Formation sebagai konsumen dan Bekerja dengan rangkaian data yang dikelola Lake Formation sebagai](https://docs.aws.amazon.com/redshift/latest/dg/lake-formation-getting-started-consumer.html) [produsen di Panduan Pengembang Basis Data Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/lake-formation-getting-started-producer.html).*

**Contoh membuat database sebagai konsumen datashare**

Contoh berikut menjelaskan skenario tertentu yang digunakan untuk membuat database dari datashare menggunakan query editor v2. Tinjau skenario ini untuk mempelajari cara membuat database dari datashare di lingkungan Anda. Skenario ini menggunakan dua cluster, `cluster-base` (cluster produsen) dan `cluster-view` (cluster konsumen).

1. Gunakan konsol Amazon Redshift untuk membuat datashare untuk tabel di cluster. `category2` `cluster-base` Datashare produser diberi nama. `datashare_base`

   Untuk informasi tentang membuat rangkaian data, lihat [Berbagi data di seluruh klaster di Amazon Redshift di Panduan Pengembang Database](https://docs.aws.amazon.com/redshift/latest/dg/datashare-overview.html) Amazon *Redshift*.

1. Gunakan konsol Amazon Redshift untuk menerima datashare `datashare_base` sebagai konsumen untuk tabel di cluster. `category2` `cluster-view`

1. Lihat panel tampilan pohon di editor kueri v2 yang menunjukkan hierarki sebagai: `cluster-base`
   + Kluster: `cluster-base`
     + Database: `dev`
       + Skema: `public`
         + Tabel: `category2`

1. Pilih ![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-add.png) **Buat**, lalu pilih **Database**.

1. Masukkan `see_datashare_base` **nama Database**.

1. **Pilih **Buat menggunakan datashare**, dan pilih Pilih datashare.** Pilih `datashare_base` untuk digunakan sebagai sumber database yang Anda buat.

   Panel tampilan pohon di editor kueri v2 menunjukkan hierarki sebagai: `cluster-view`
   + Kluster: `cluster-view`
     + Database: `see_datashare_base`
       + Skema: `public`
         + Tabel: `category2`

1. Saat Anda menanyakan data, sambungkan ke database default cluster `cluster-view` (biasanya bernama`dev`), tetapi referensi database datashare `see_datashare_base` di SQL Anda.
**catatan**  
Dalam tampilan editor editor kueri v2, cluster yang dipilih adalah`cluster-view`. Database yang dipilih adalah`dev`. Database `see_datashare_base` terdaftar tetapi tidak diaktifkan untuk koneksi langsung. Anda memilih `dev` database dan referensi `see_datashare_base` di SQL yang Anda jalankan.

   ```
   SELECT * FROM "see_datashare_base"."public"."category2";
   ```

   Query mengambil data dari datashare `datashare_base` di cluster. `cluster_base`

**Contoh membuat database dari sebuah AWS Glue Data Catalog**

Contoh berikut menjelaskan skenario tertentu yang digunakan untuk membuat database dari AWS Glue Data Catalog menggunakan editor query v2. Tinjau skenario ini untuk mempelajari cara membuat database dari AWS Glue Data Catalog lingkungan Anda. Skenario ini menggunakan satu cluster, `cluster-view` untuk memuat database yang Anda buat.

1. Pilih ![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-add.png) **Buat**, lalu pilih **Database**.

1. Masukkan `data_catalog_database` **nama Database**.

1. Pilih **Buat menggunakan AWS Glue Data Catalog**, dan pilih **Pilih AWS Glue database**. Pilih `glue_db` untuk digunakan sebagai sumber database yang Anda buat.

   Pilih **Skema katalog data** dan masukkan `myschema` sebagai nama skema yang akan digunakan dalam notasi tiga bagian.

   Panel tampilan pohon di editor kueri v2 menunjukkan hierarki sebagai: `cluster-view`
   + Kluster: `cluster-view`
     + Database: `data_catalog_database`
       + Skema: `myschema`
         + Tabel: `category3`

1. Saat Anda menanyakan data, sambungkan ke database default cluster `cluster-view` (biasanya bernama`dev`), tetapi referensi database `data_catalog_database` di SQL Anda. 
**catatan**  
Dalam tampilan editor editor kueri v2, cluster yang dipilih adalah`cluster-view`. Database yang dipilih adalah`dev`. Database `data_catalog_database` terdaftar tetapi tidak diaktifkan untuk koneksi langsung. Anda memilih `dev` database dan referensi `data_catalog_database` di SQL yang Anda jalankan.

   ```
   SELECT * FROM "data_catalog_database"."myschema"."category3";
   ```

   Kueri mengambil data yang dikatalogkan oleh. AWS Glue Data Catalog

## Membuat skema
<a name="query-editor-v2-object-create-schema"></a>

Anda dapat menggunakan editor kueri v2 untuk membuat skema di klaster atau grup kerja Anda.

**Untuk membuat skema**

Untuk informasi tentang skema, lihat [Skema](https://docs.aws.amazon.com/redshift/latest/dg/r_Schemas_and_tables.html) di Panduan Pengembang *Database Amazon Redshift*. 

1. Pilih ![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-add.png) **Buat**, lalu pilih **Skema**.

1. Masukkan **nama Skema**.

1. Pilih **Lokal** atau **Eksternal** sebagai **tipe Skema**.

   Untuk informasi selengkapnya tentang skema lokal, lihat [MEMBUAT SKEMA di Panduan Pengembang](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_SCHEMA.html) *Database Amazon Redshift*. Untuk informasi selengkapnya tentang skema eksternal, lihat [MEMBUAT SKEMA EKSTERNAL di Panduan](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_EXTERNAL_SCHEMA.html) Pengembang *Database Amazon Redshift*.

1. Jika Anda memilih **Eksternal**, maka Anda memiliki pilihan skema eksternal berikut.
   + **Glue Data Catalog** — untuk membuat skema eksternal di Amazon Redshift yang mereferensikan tabel. AWS Glue Selain memilih AWS Glue database, pilih peran IAM yang terkait dengan cluster dan peran IAM yang terkait dengan Katalog Data.
   + **PostgreSQL** — untuk membuat skema eksternal di Amazon Redshift yang mereferensikan database Amazon RDS for PostgreSQL atau Amazon Aurora PostgreSQL. Juga berikan informasi koneksi ke database. *Untuk informasi selengkapnya tentang kueri federasi, lihat [Mengkueri data dengan kueri gabungan di Panduan Pengembang](https://docs.aws.amazon.com/redshift/latest/dg/federated-overview.html) Database Amazon Redshift.*
   + **MySQL** — untuk membuat skema eksternal di Amazon Redshift yang mereferensikan Amazon RDS untuk MySQL atau dan database Amazon Aurora MySQL Edisi yang kompatibel. Juga berikan informasi koneksi ke database. *Untuk informasi selengkapnya tentang kueri federasi, lihat [Mengkueri data dengan kueri gabungan di Panduan Pengembang](https://docs.aws.amazon.com/redshift/latest/dg/federated-overview.html) Database Amazon Redshift.*

1. Pilih **Buat skema**.

   Skema baru muncul di panel tampilan pohon.

## Membuat tabel
<a name="query-editor-v2-object-create-table"></a>

Anda dapat menggunakan editor kueri v2 untuk membuat tabel di cluster atau workgroup Anda.

**Untuk membuat tabel**

Anda dapat membuat tabel berdasarkan file nilai dipisahkan koma (CSV) yang Anda tentukan atau tentukan setiap kolom tabel. Untuk informasi tentang tabel, lihat [Merancang tabel](https://docs.aws.amazon.com/redshift/latest/dg/c_designing-tables-best-practices.html) dan [MEMBUAT TABEL](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_TABLE_NEW.html) di Panduan *Pengembang Database Amazon Redshift*. 

Pilih **Buka kueri di editor** untuk melihat dan mengedit pernyataan CREATE TABLE sebelum Anda menjalankan kueri untuk membuat tabel. 

1. Pilih ![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-add.png) **Buat**, dan pilih **Tabel**.

1. Pilih skema.

1. Masukkan nama tabel.

1. Pilih ![\[Plus sign icon representing an addition or new item action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/add-plus.png) **Tambahkan bidang** untuk menambahkan kolom. 

1. Gunakan file CSV sebagai templat untuk definisi tabel:

   1. Pilih **Load dari CSV**.

   1. Jelajahi lokasi file.

      Jika Anda menggunakan file CSV, pastikan baris pertama file berisi judul kolom.

   1. Pilih file dan pilih **Buka**. Konfirmasikan bahwa nama kolom dan tipe data adalah apa yang Anda inginkan.

1. Untuk setiap kolom, pilih kolom dan pilih opsi yang Anda inginkan:
   + Pilih nilai untuk **Encoding**.
   + Pilih **nilai Default**.
   + **Aktifkan Kenaikan secara otomatis** jika Anda ingin nilai kolom bertambah. Kemudian tentukan nilai untuk **benih kenaikan Otomatis** dan **langkah kenaikan Otomatis**.
   + Aktifkan **Not NULL** jika kolom harus selalu berisi nilai.
   + Masukkan nilai **Ukuran** untuk kolom.
   + Aktifkan **kunci utama** jika Anda ingin kolom menjadi kunci utama.
   + Aktifkan **tombol Unik** jika Anda ingin kolom menjadi kunci unik.

1. (Opsional) Pilih **detail Tabel** dan pilih salah satu opsi berikut:
   + Kolom dan gaya kunci distribusi.
   + Urutkan kolom kunci dan jenis sortir.
   + Aktifkan **Backup** untuk menyertakan tabel dalam snapshot.
   + Nyalakan **Tabel sementara** untuk membuat tabel sebagai tabel sementara.

1. Pilih **Buka kueri di editor** untuk melanjutkan menentukan opsi untuk menentukan tabel atau pilih **Buat tabel** untuk membuat tabel.

## Membuat fungsi
<a name="query-editor-v2-object-create-function"></a>

Anda dapat menggunakan query editor v2 untuk membuat fungsi di cluster atau workgroup Anda.

**Untuk membuat fungsi**

1. Pilih ![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-add.png) **Create**, dan pilih **Function**.

1. Untuk **Type**, pilih **SQL** atau **Python**.

1. Pilih nilai untuk **Skema**.

1. Masukkan nilai untuk **Nama** untuk fungsi tersebut.

1. Masukkan nilai **Volatilitas** untuk fungsi tersebut.

1. Pilih **Parameter** berdasarkan tipe datanya sesuai urutan parameter input.

1. Untuk **Pengembalian**, pilih tipe data.

1. Masukkan program **SQL atau kode program** **Python** untuk fungsi tersebut.

1. Pilih **Buat**.

*Untuk informasi selengkapnya tentang fungsi yang ditentukan pengguna (UDFs), lihat [Membuat fungsi yang ditentukan pengguna di Panduan Pengembang Database](https://docs.aws.amazon.com/redshift/latest/dg/user-defined-functions.html) Amazon Redshift.* 

# Melihat kueri dan riwayat tab
<a name="query-editor-v2-history"></a>

Anda dapat melihat riwayat kueri Anda dengan editor kueri v2. Hanya kueri yang Anda jalankan menggunakan editor kueri v2 yang muncul di riwayat kueri. Kedua kueri yang dijalankan dari menggunakan tab **Editor** atau tab **Notebook** ditampilkan. Anda dapat memfilter daftar yang ditampilkan berdasarkan periode waktu, seperti`This week`, di mana seminggu didefinisikan sebagai Senin-Minggu. Daftar kueri mengambil 25 baris kueri yang cocok dengan filter Anda sekaligus. Pilih **Muat lebih banyak** untuk melihat set berikutnya. Pilih kueri dan dari menu **Tindakan**. Tindakan yang tersedia tergantung pada apakah kueri yang dipilih telah disimpan. Anda dapat memilih operasi berikut:
+ **Lihat detail kueri** - Menampilkan halaman detail kueri dengan informasi lebih lanjut tentang kueri yang dijalankan.
+ **Buka kueri di tab baru** — Membuka tab editor baru dan memasangnya dengan kueri yang dipilih. Jika masih terhubung, cluster atau workgroup dan database dipilih secara otomatis. Untuk menjalankan kueri, pertama-tama konfirmasikan bahwa cluster atau workgroup dan database yang benar dipilih.
+ **Tab sumber terbuka** — Jika masih terbuka, navigasikan ke tab editor atau buku catatan yang berisi kueri saat dijalankan. Isi editor atau buku catatan mungkin telah berubah setelah kueri dijalankan.
+ **Buka kueri tersimpan** — Menavigasi ke tab editor atau buku catatan dan membuka kueri.

Anda juga dapat melihat riwayat kueri yang dijalankan di tab **Editor** atau riwayat kueri yang dijalankan di tab **Notebook**. Untuk melihat riwayat kueri di tab, pilih **Riwayat tab**. Dalam riwayat tab, Anda dapat melakukan operasi berikut:
+ **Salin kueri** - Menyalin konten SQL versi kueri ke clipboard.
+ **Buka kueri di tab baru** — Membuka tab editor baru dan memasangnya dengan kueri yang dipilih. Untuk menjalankan query, Anda harus memilih cluster atau workgroup dan database.
+ **Lihat detail kueri** - Menampilkan halaman detail kueri dengan informasi lebih lanjut tentang kueri yang dijalankan.

# Berinteraksi dengan SQL generatif Amazon Q
<a name="query-editor-v2-generative-ai"></a>

**catatan**  
Dukungan SQL generatif Amazon Q hanya tersedia dalam hal berikut: Wilayah AWS  
Wilayah AS Timur (Virginia N.) (us-east-1)
Wilayah AS Timur (Ohio) (us-east-2)
Wilayah AS Barat (Oregon) (us-west-2)
Wilayah Asia Pasifik (Mumbai) (ap-south-1)
Wilayah Asia Pasifik (Seoul) (ap-northeast-2)
Wilayah Asia Pasifik (Singapura) (ap-southeast-1)
Wilayah Asia Pasifik (Sydney) (ap-southeast-2)
Wilayah Asia Pasifik (Tokyo) (ap-northeast-1)
Wilayah Kanada (Tengah) (ca-central-1)
Wilayah Eropa (Frankfurt) (eu-central-1)
Wilayah Eropa (Irlandia) (eu-west-1)
Wilayah Eropa (London) (eu-west-2)
Wilayah Eropa (Paris) (eu-west-3)
Wilayah Amerika Selatan (São Paulo) (sa-east-1)
Untuk informasi tentang tempat data Anda diproses, lihat [Inferensi lintas wilayah di Amazon Q Developer](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/cross-region-inference.html) di *Panduan Pengguna Pengembang Amazon Q*.

Anda dapat berinteraksi dengan kemampuan SQL generatif Amazon Q di editor kueri Amazon Redshift v2. Ini adalah asisten pengkodean yang menghasilkan pernyataan SQL berdasarkan prompt dan skema database Anda. Asisten pengkodean ini tersedia saat Anda membuat buku catatan di editor kueri v2. SQL yang dihasilkan adalah untuk database yang terhubung dengan notebook Anda.

Saat berinteraksi dengan SQL generatif Amazon Q, ajukan pertanyaan spesifik, ulangi ketika Anda memiliki permintaan yang rumit, dan verifikasi jawaban untuk akurasi. 

Saat memberikan permintaan analisis dalam bahasa alami, sespesifik mungkin untuk membantu asisten pengkodean memahami dengan tepat apa yang Anda butuhkan. Alih-alih bertanya “temukan tempat teratas yang menjual tiket terbanyak,” berikan detail lebih lanjut seperti “temukan names/ids tiga tempat teratas yang menjual tiket terbanyak pada tahun 2008.” Gunakan nama objek yang konsisten dan spesifik dalam database Anda saat Anda mengetahuinya. Seperti skema, tabel, dan nama kolom seperti yang didefinisikan dalam database Anda alih-alih merujuk ke objek yang sama dengan cara yang berbeda, yang dapat membingungkan asisten.

Memecah permintaan kompleks menjadi beberapa pernyataan sederhana yang lebih mudah bagi asisten untuk menafsirkan. Ajukan pertanyaan tindak lanjut secara berulang untuk mendapatkan analisis yang lebih rinci dari asisten. Misalnya, tanyakan dulu “negara bagian mana yang memiliki tempat paling banyak?” Kemudian berdasarkan tanggapan, tanyakan “tempat mana yang paling populer dari negara bagian ini?”. 

Tinjau SQL yang dihasilkan sebelum menjalankannya untuk memastikan akurasi. Jika kueri SQL yang dihasilkan memiliki kesalahan atau tidak cocok dengan maksud Anda, berikan instruksi kepada asisten tentang cara memperbaikinya alih-alih mengulangi seluruh permintaan. Misalnya, jika kueri tidak memiliki klausa predikat pada tahun, tanyakan “Sediakan tempat dari tahun 2008.”

Kirim teks kesalahan yang Anda terima dari menjalankan SQL yang dihasilkan sebagai petunjuk kembali ke SQL generatif Amazon Q. Ia belajar dari kesalahan ini untuk menghasilkan SQL yang lebih baik.

Tambahkan skema Anda ke jalur pencarian SQL untuk memberi sinyal bahwa skema harus digunakan. Misalnya, tambahkan skema tickit saat data berada dalam skema tickit daripada skema publik.

```
set search_path to '$user', tickit;
```

## Pertimbangan saat berinteraksi dengan SQL generatif Amazon Q
<a name="query-editor-v2-generative-ai-considerations"></a>

Pertimbangkan hal berikut saat bekerja di panel obrolan.
+ Administrator editor kueri v2 untuk akun Anda harus mengaktifkan kemampuan obrolan di halaman **pengaturan SQL Generatif**.
+ Untuk menggunakan SQL generatif Amazon Q, Anda memerlukan izin `sqlworkbench:GetQSqlRecommendations` dalam kebijakan IAM, selain izin lain yang ditentukan dalam kebijakan AWS terkelola untuk editor kueri v2. Untuk informasi selengkapnya tentang kebijakan AWS terkelola, lihat[Mengakses editor kueri v2](query-editor-v2-getting-started.md#query-editor-v2-configure).
+ Pertanyaan Anda harus ditulis dalam bahasa Inggris.
+ Pertanyaan Anda harus mengacu pada database yang terhubung di cluster atau workgroup Anda. Untuk menghindari kesalahan status kosong, harus ada setidaknya satu tabel dan beberapa data dalam database.
+ Pertanyaan Anda harus mengacu pada data yang disimpan dalam database yang terhubung. Itu tidak dapat merujuk skema eksternal. Untuk informasi selengkapnya tentang skema yang didukung, lihat [Membuat skema](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_EXTERNAL_SCHEMA.html) di Panduan Pengembang *Database Amazon Redshift*.
+ Setiap pertanyaan yang menghasilkan SQL yang mengubah database yang terhubung dapat menghasilkan peringatan.
+ Teknologi AI generatif adalah hal baru dan mungkin ada kesalahan, kadang-kadang disebut halusinasi, dalam tanggapannya. Uji dan tinjau semua kode untuk kesalahan dan kerentanan sebelum menggunakannya di lingkungan atau beban kerja Anda.
+ Anda dapat meningkatkan rekomendasi dengan membagikan kueri SQL yang dijalankan oleh pengguna lain di akun Anda. Administrator akun Anda dapat menjalankan perintah SQL berikut untuk memungkinkan akses ke riwayat kueri akun.

  ```
  GRANT ROLE SYS:MONITOR to "IAMR:role-name";
  GRANT ROLE SYS:MONITOR to "IAM:user-name";
  GRANT ROLE SYS:MONITOR to "database-username";
  ```

  *Untuk informasi selengkapnya`SYS:MONITOR`, lihat [peran yang ditentukan sistem Amazon Redshift di Panduan](https://docs.aws.amazon.com/redshift/latest/dg/r_roles-default.html) Pengembang Database Amazon Redshift.*
+ Data Anda aman dan pribadi. Data Anda tidak dibagikan di seluruh akun. Kueri, data, dan skema basis data Anda tidak digunakan untuk melatih model fondasi AI generatif (FM). Masukan Anda digunakan sebagai petunjuk kontekstual ke FM untuk menjawab hanya pertanyaan Anda.

# Menggunakan SQL generatif
<a name="query-editor-v2-generative-ai-interact"></a>

Setelah izin yang benar dikonfigurasi, saat bekerja dengan buku catatan di editor kueri v2, Anda dapat memilih ikon untuk memulai percakapan.

**Untuk berinteraksi dengan obrolan SQL generatif Amazon Q untuk menghasilkan SQL**

1. Di tab **Editor** dari editor kueri v2, buka buku catatan.

1. Pilih ikon ![\[Generative SQL panel\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-amazon-q.png) Generative SQL, lalu ikuti petunjuk untuk mengajukan pertanyaan Anda tentang SQL generatif Amazon Redshift editor v2 generatif di panel obrolan.

   Anda memberikan pertanyaan di bidang prompt dan SQL generatif Amazon Q merespons dengan SQL yang disarankan. Setiap kesalahan yang ditemui dikembalikan kepada Anda di panel obrolan.

1. Pilih **Tambahkan ke buku catatan** untuk menambahkan sel Markdown dengan prompt Anda dan sel SQL dengan SQL yang disarankan ke buku catatan Anda.

1. (Opsional) Berikan umpan balik mengenai SQL yang dihasilkan dengan memilih ikon umpan balik yang ![\[Helpful feedback\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-thumbs-up.png) bermanfaat atau ikon umpan balik yang ![\[Not helpful feedback\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-thumbs-down.png) tidak membantu. Anda dapat mengkategorikan umpan balik yang tidak membantu sebagai`Incorrect tables/columns`,, `Incorrect predicates/literals/group bys``Incorrect SQL structure`, atau. `Other` Selain itu, Anda dapat memberikan beberapa teks bentuk bebas dengan umpan balik Anda tentang keakuratan SQL.

1. (Opsional) Pilih **Regenerate SQL** untuk menghasilkan respons lain untuk prompt yang sama. Anda dapat memilih untuk **Regenerasi SQL** satu kali untuk prompt saat ini.

1. (Opsional) Di panel obrolan SQL generatif, pilih ikon ![\[More\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-vmore.png) **Lainnya**, lalu pilih **Refresh database** untuk menyegarkan metadata yang menjelaskan database Anda yang terhubung. Metadata ini mencakup definisi skema, tabel, dan kolom dalam database Anda.

# Memperbarui pengaturan SQL generatif sebagai administrator
<a name="query-editor-v2-generative-ai-settings"></a>

Pengguna dengan izin IAM yang tepat dapat melihat dan mengubah **pengaturan SQL Generatif** untuk pengguna lain dalam hal yang sama. Akun AWS Administrator ini harus memiliki izin `sqlworkbench:UpdateAccountQSqlSettings` dalam kebijakan IAM mereka, selain izin lain yang ditentukan dalam kebijakan AWS terkelola untuk editor kueri v2. Untuk informasi selengkapnya tentang kebijakan terkelola, lihat [Izin yang diperlukan untuk menggunakan editor kueri v2](redshift-iam-access-control-identity-based.md#redshift-policy-resources.required-permissions.query-editor-v2).

**Agar administrator mengaktifkan obrolan SQL generatif untuk semua pengguna di akun**

1. Pilih ikon ![\[Settings\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-cog.png) **Pengaturan** untuk menampilkan menu layar pengaturan yang berbeda.

1. Kemudian pilih ikon Pengaturan SQL ![\[Generative SQL settings\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-amazon-q.png) Generatif untuk menampilkan halaman pengaturan **SQL generatif Q**.

1. Pilih **pengaturan SQL generatif Q** untuk mengaktifkan kemampuan SQL generatif bagi pengguna di akun.

   Setelah mengaktifkan SQL generatif Amazon Q, Anda dapat melihat jumlah permintaan yang tersisa di alokasi Anda. Administrator editor kueri v2 dapat memungkinkan pengguna di akun untuk menggunakan Amazon Q Developer Pro tier. Untuk menggunakan tingkat Pro, siapkan pengguna Anda dengan IAM Identity Center dan berlangganan setiap pengguna ke Amazon Q Developer Pro tier. Untuk informasi tentang menyiapkan Pusat Identitas IAM dengan Amazon Redshift, lihat. [Hubungkan Redshift dengan AWS IAM Identity Center untuk pengalaman masuk tunggal](redshift-iam-access-control-idp-connect.md) Untuk informasi tentang harga Pengembang Amazon Q, lihat [harga Pengembang Amazon Q](https://aws.amazon.com/q/developer/pricing/).

   Saat menggunakan Amazon Q Developer Free tier, jumlah total permintaan dari semua pengguna Akun AWS dibatasi hingga 1.000 dalam sebulan. Saat menggunakan Amazon Q Developer Pro tier, jumlah total permintaan yang dapat dikirimkan oleh setiap pengguna dibatasi hingga 1.000 dalam sebulan. Anda dapat melihat jumlah prompt yang tersedia di halaman **Pengaturan**. Untuk informasi tentang harga Pengembang Amazon Q, lihat [harga Pengembang Amazon Q](https://aws.amazon.com/q/developer/pricing/).

## Konteks khusus
<a name="query-editor-v2-generative-custom-context"></a>

Administrator editor kueri v2 dapat menentukan *konteks khusus* untuk menyesuaikan SQL yang dihasilkan dengan lingkungan Anda. Konteks kustom memberikan pengetahuan dan preferensi domain untuk memberikan kontrol halus atas pembuatan SQL. Konteks kustom didefinisikan dalam file JSON yang dapat diunggah oleh administrator editor kueri v2 ke SQL generatif Amazon Q.

Kunci JSON yang digunakan untuk mempersonalisasi SQL yang dihasilkan untuk gudang data adalah berikut.

Semua referensi tabel harus mengikuti `database.schema.table` notasi tiga bagian.

**Sumber daya**  
Sumber daya menentukan ruang lingkup atau bagian dari aset data yang konteks kustom diterapkan.

**ResourceId**  
Menentukan identifier unik dari sumber daya. Untuk cluster Amazon Redshift, tentukan. `cluster id` Untuk grup kerja Redshift Tanpa Server, tentukan. `workgroup name`

**ResourceType**  
Nilai valid: `REDSHIFT_WAREHOUSE`.

**TablesToInclude**  
Menentukan satu set tabel yang dipertimbangkan untuk generasi SQL. Bidang ini sangat penting ketika Anda ingin membatasi ruang lingkup kueri SQL ke subset yang ditentukan dari tabel yang tersedia. Ini dapat membantu mengoptimalkan proses pembuatan dengan mengurangi referensi tabel yang tidak perlu. Anda dapat memasangkan bidang ini dengan kontrol `TablesToExclude` yang lebih baik atas pembuatan kueri.

**TablesToExclude**  
Menentukan set tabel yang dikecualikan dari generasi SQL. Gunakan ini ketika tabel tertentu tidak relevan atau tidak boleh dipertimbangkan dalam proses pembuatan kueri. 

**TableAnnotations**  
Menyediakan metadata atau informasi tambahan tentang tabel yang digunakan. Anotasi ini dapat mencakup deskripsi tabel, catatan penggunaan, atau atribut tambahan apa pun yang membantu SQL generatif Amazon Q lebih memahami konteks atau struktur tabel. Ini berharga untuk meningkatkan akurasi pembuatan SQL dengan menambahkan kejelasan pada definisi tabel.

**ColumnsToInclude**  
Mendefinisikan kolom mana dari tabel yang ditentukan disertakan saat menghasilkan kueri SQL. Bidang ini membantu Amazon Q generatif SQL fokus pada kolom yang relevan dan meningkatkan kinerja dengan mempersempit ruang lingkup pengambilan data. Ini memastikan SQL generatif Amazon Q hanya menarik data yang diperlukan untuk konteks kueri yang diberikan.

**ColumnsToExclude**  
Menentukan kolom yang dihilangkan dari pertimbangan dalam generasi SQL. Ini dapat digunakan ketika kolom tertentu berisi data yang tidak relevan atau berlebihan yang tidak boleh dipertimbangkan oleh SQL generatif Amazon Q. Dengan mengelola penyertaan dan pengecualian kolom, Anda dapat memperbaiki hasil dan mempertahankan kontrol atas data yang diambil.

**ColumnAnnotations**  
Mirip dengan`TableAnnotations`, bidang ini menyediakan metadata atau anotasi khusus untuk masing-masing kolom. Anotasi ini dapat menawarkan wawasan tentang definisi kolom atau instruksi penanganan khusus. Informasi ini bermanfaat dalam memandu proses pembuatan SQL dan memastikan bahwa kolom digunakan dengan tepat dalam kueri.

**CuratedQueries**  
Satu set contoh pertanyaan dan jawaban yang telah ditentukan, di mana pertanyaan ditulis dalam bahasa alami (NLQ) dan jawabannya adalah kueri SQL yang sesuai. Contoh-contoh ini membantu SQL generatif Amazon Q memahami jenis kueri yang diharapkan akan dihasilkan. Mereka berfungsi sebagai titik referensi untuk meningkatkan akurasi dan relevansi output SQL generatif Amazon Q.

**CustomDocuments**  
Potongan informasi atau petunjuk tambahan yang diberikan kepada SQL generatif Amazon Q, seperti definisi, pengetahuan khusus domain, atau penjelasan. Misalnya, jika unit bisnis Anda menggunakan cara unik untuk menghitung nilai, misalnya “di divisi manufaktur total penjualan adalah harga\$1 pendapatan” ini dapat didokumentasikan di sini. Dokumen-dokumen ini meningkatkan kemampuan SQL generatif Amazon Q untuk menafsirkan input bahasa alami dengan memberikan konteks tambahan.

**AdditionalTables**  
Menentukan setiap tabel tambahan yang harus dipertimbangkan untuk generasi SQL tetapi bukan bagian dari data yang disimpan dalam gudang data. Hal ini memungkinkan SQL generatif Amazon Q untuk mengintegrasikan sumber data eksternal ke dalam logika generasi SQL, memperluas kapasitasnya untuk menangani lingkungan data yang kompleks.

**AppendToPrompt**  
Petunjuk atau pedoman tambahan yang diberikan kepada SQL generatif Amazon Q untuk memandu proses pembuatan SQL. Ini dapat mencakup arahan khusus tentang cara menyusun kueri, preferensi untuk konstruksi SQL tertentu, atau instruksi tingkat tinggi lainnya yang meningkatkan kualitas keluaran SQL generatif Amazon Q.

Contoh konteks kustom berikut menunjukkan format file JSON dan mendefinisikan yang berikut:
+ Mendefinisikan konteks kustom untuk gudang data Amazon Redshift untuk klaster. `mycluster`
+ Mendefinisikan tabel dan kolom tertentu untuk disertakan dan dikecualikan untuk membantu mengoptimalkan proses pembuatan SQL.
+ Mendefinisikan anotasi untuk tabel dan kolom yang dipanggil untuk disertakan.
+ Mendefinisikan contoh kueri yang dikuratori untuk SQL generatif Amazon Q untuk digunakan.
+ Mendefinisikan dokumen kustom dan pagar untuk digunakan saat membuat SQL.
+ Mendefinisikan DDL untuk tabel tambahan untuk digunakan saat menghasilkan SQL.

```
{
    "resources": [
        {
            "ResourceId": "mycluster",
            "ResourceType": "REDSHIFT_WAREHOUSE",
            "TablesToInclude": [
                "database.schema.table1",
                "database.schema.table2"
            ],
            "TablesToExclude": [
                "database.schema.table3",
                "database.schema.table4"
            ],
            "ColumnsToInclude": {
                "database.schema.table1": [
                    "col1",
                    "col2"
                ],
                "database.schema.table2": [
                    "col1",
                    "col2"
                ]
            },
            "ColumnsToExclude": {
                "database.schema.table5": [
                    "col1",
                    "col2"
                ],
                "database.schema.table6": [
                    "col1",
                    "col2"
                ]
            },
            "TableAnnotations": {
                "database.schema.table1": "table1 refers to Q3 sales",
                "database.schema.table2": "table2 refers to Q4 sales"
            },
            "ColumnAnnotations": {
                "database.schema.table1": {
                    "col1": "col1 refers to Q3 sale total",
                    "col2": "col2 refers to sale location"
                },
                "database.schema.table2": {
                    "col1": "col2 refers to Q4 sale total",
                    "col2": "col2 refers to sale location"
                }
            },
            "CuratedQueries": [
                {
                    "Question": "what is the sales data for Q3",
                    "Answer": "SELECT * FROM table1"
                },
                {
                    "Question": "what is the sales data for Q4",
                    "Answer": "SELECT * FROM table2"
                }
            ],
            "CustomDocuments": [
                "in manufacturing division total sales is price * revenue",
                "in research division total sales is price * revenue"
            ],
            "AdditionalTables": {
                "database.schema.table8": "create table database.schema.table8(col1 int)",
                "database.schema.table9": "create table database.schema.table9(col1 int)"
            },
            "AppendToPrompt": "Apply these guardrails: Queries should never return the secretId field of a user."
        }
    ]
}
```

# Tutorial: Menggunakan kemampuan SQL generatif Amazon Q dengan data TICKIT
<a name="query-editor-v2-generative-ai-example"></a>

Untuk membuat prompt yang efisien untuk menghasilkan SQL, Anda harus belajar tentang skema database dan data Anda. Data TICKIT terdiri dari tujuh tabel: dua tabel fakta dan lima dimensi. Data sampel berisi catatan tentang penjualan kepada petugas acara hiburan yang terjadi pada tahun 2008. Untuk informasi selengkapnya tentang skema data TICKIT, lihat [Contoh database](https://docs.aws.amazon.com/redshift/latest/dg/c_sampledb.html) di Panduan Pengembang Database *Amazon Redshift*. Anda dapat memuat data TICKIT ke dalam database dengan berbagai metode di konsol Amazon Redshift dan editor kueri v2. Query editor v2 menyediakan metode untuk memuat data TICKIT ke dalam database`sample_data_dev`. Untuk informasi, lihat [Memuat data ke dalam database](query-editor-v2-loading.md). Editor kueri v2 juga menyediakan contoh prompt untuk data TICKIT. Skenario berikut menjelaskan percakapan dengan SQL generatif untuk menghasilkan SQL tentang data sampel TICKIT. Dalam skenario ini, data sampel TICKIT sudah dibuat dalam `dev` database di cluster Amazon Redshift. 

**catatan**  
Contoh ini adalah untuk menggambarkan percakapan. Tanggapan dari SQL generatif mungkin tidak cocok dengan hasil Anda menggunakan prompt yang sama.

**Contoh percakapan dengan SQL generatif Amazon Q**

1. Di **Editor**, sambungkan ke cluster atau workgroup yang berisi data sampel TICKIT.

1. Buat buku catatan kosong dan pilih ikon ![\[Generative SQL\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-amazon-q.png) Generative SQL untuk membuka panel obrolan.

1. Masukkan prompt berikut untuk menghasilkan SQL untuk memverifikasi jumlah catatan dalam `VENUE` tabel:

   ```
   How many venues are there?
   ```

   ```
   SELECT
     COUNT(*) AS num_venues
   FROM
     tickit.venue
   ```

   Pilih **Tambahkan ke buku catatan** untuk menambahkan dua sel ke buku catatan yang terbuka. Satu sel Markdown “Ada berapa tempat?” dan satu berisi SQL yang dihasilkan.

   Di sel SQL, pilih **Jalankan** untuk menerima hasilnya:

   ```
   count
   ------
   202
   ```

1. Untuk meminta versi SQL lain, pilih **Regenerate SQL** dan terima jawaban berikut:

   ```
   SELECT
     venuestate,
     COUNT(*) AS num_venues
   FROM
     tickit.venue
   GROUP BY
     venuestate
   ```

   Pilih **Tambahkan ke buku catatan** untuk menambahkan dua sel lagi ke buku catatan yang terbuka. Satu sel Markdown “Ada berapa tempat?” dan satu berisi SQL yang dihasilkan.

   Di sel SQL, pilih **Jalankan** untuk menerima status tempat daftar hasil berdasarkan nomor:

   ```
   venuestate num_venues
   ----------------------
   MA         4	
   OH         8	
   MI         5	
   ...
   ```

1. Asisten SQL generatif dapat membuat asumsi tentang apa yang Anda tanyakan. Meskipun tidak ada widget dalam database, Anda masih bisa bertanya. Dalam hal ini, ini memberi Anda pesan bahwa itu tidak dapat menghasilkan SQL.

   ```
   How many widgets are there?
   ```

   ```
   I was not able to generate any SQL
   ```

1. Saat Anda mempelajari lebih lanjut tentang database Anda, Anda dapat mengajukan pertanyaan yang lebih spesifik untuk menghasilkan SQL. Misalnya, Anda menyadari bahwa database berisi data penjualan selama beberapa bulan di tahun 2008. Masukkan prompt berikut untuk menghasilkan SQL untuk menemukan jumlah penjualan pada bulan November 2008:

   ```
   How many sales were there in November 2008?
   ```

   ```
   SELECT
     COUNT(*) AS num_sales
   FROM
     tickit.sales s
     JOIN tickit.date d ON s.dateid = d.dateid
   WHERE
     d.month = 'November'
     AND d.year = 2008
   ```

   Pilih **Tambahkan ke buku catatan** untuk menambahkan dua sel ke buku catatan yang terbuka. Satu sel penurunan harga “Berapa banyak penjualan yang ada pada November 2008?” dan satu berisi SQL yang dihasilkan.

   Di sel SQL, pilih **Jalankan** untuk menerima hasilnya:

   ```
   num_sales
   -----
   0
   ```

   Anda menyadari ini bukan hasil yang Anda harapkan.

1. Anda melihat bahwa predikat `date.month='November'` mengharapkan bulan dalam tabel DATE diwakili oleh singkatan dari nama bulan. Anda mengubah predikat ke `d.month='NOV'` dan menjalankan kembali SQL.

   ```
   SELECT
     COUNT(*)
   FROM
     sales
     JOIN date ON sales.dateid = date.dateid
   WHERE
     date.month = 'NOV'
     AND date.year = 2008
   ```

   Di sel SQL, pilih **Jalankan** untuk mendapatkan hasil baru.

   ```
   count
   -----
   14261
   ```

1. Jika Anda mengajukan pertanyaan yang mencoba mengubah database yang terhubung, pesan peringatan dikembalikan bersama dengan SQL yang direkomendasikan. Masukkan prompt berikut untuk menghasilkan SQL untuk memasukkan data ke dalam tabel:

   ```
   Insert 1 into the venue table.
   ```

   ```
   INSERT
   ,
   UPDATE
     OR delete data
   FROM
     the database AS that could potentially change the data.Please provide a query that ONLY selects data
   ```

   ```
   I was not able to generate the correct SQL code. I generated SQL, but you'll have to edit it to work with your database.
   ```

   Jika Anda memilih **Tambahkan ke notebook** untuk menambahkan dua sel ke notebook yang terbuka dan menjalankan SQL, maka SQL gagal.

   ```
   ERROR: syntax error at or near "," Position: 132 [ErrorId: 1-6546764a-011df2691778846219ce6ec2]
   ```

Skenario ini hanya menggambarkan beberapa cara dasar untuk berinteraksi dengan SQL generatif Amazon Q. Anda dapat bereksperimen lebih banyak lagi dengan teknologi AI generatif ini untuk membantu Anda mulai membuat SQL untuk menanyakan database Anda.

# Memuat data ke dalam database
<a name="query-editor-v2-loading"></a>

Anda dapat menggunakan editor kueri v2 untuk memuat data ke dalam database di klaster atau grup kerja Amazon Redshift. Bagian ini mencakup cara memuat data sampel, data dari S3, dan data dari pengaturan file lokal dan alur kerja.

## Data sampel
<a name="query-editor-v2-loading-sample-data"></a>

Editor kueri v2 dilengkapi dengan data sampel dan buku catatan yang tersedia untuk dimuat ke dalam database sampel dan skema yang sesuai. 

Untuk memuat data sampel, pilih ![\[External\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/external.png) ikon yang terkait dengan data sampel yang ingin Anda muat. Editor kueri v2 kemudian memuat data ke dalam skema dalam database `sample_data_dev` dan membuat folder notebook yang disimpan. 

Kumpulan data sampel berikut tersedia.

**tickit**  
Sebagian besar contoh dalam dokumentasi Amazon Redshift menggunakan data sampel yang disebut. `tickit` Data ini terdiri dari tujuh tabel: dua tabel fakta dan lima dimensi. Saat Anda memuat data ini, skema `tickit` diperbarui dengan data sampel. Untuk informasi selengkapnya tentang `tickit` data, lihat [Contoh database](https://docs.aws.amazon.com/redshift/latest/dg/c_sampledb.html) di Panduan *Pengembang Database Amazon Redshift*. 

**tpch**  
Data ini digunakan untuk tolok ukur dukungan keputusan. Saat Anda memuat data ini, skema `tpch` diperbarui dengan data sampel. Untuk informasi lebih lanjut tentang `tpch` data, lihat [TPC-H](http://www.tpc.org/tpch/). 

**tpcds**  
Data ini digunakan untuk tolok ukur dukungan keputusan. Saat Anda memuat data ini, skema `tpcds` diperbarui dengan data sampel. Untuk informasi lebih lanjut tentang `tpcds` data, lihat [TPC-DS](http://www.tpc.org/tpcds/). 

# Memuat data dari Amazon S3
<a name="query-editor-v2-loading-data"></a>

Anda dapat memuat data Amazon S3 ke tabel yang sudah ada atau yang baru.

**Untuk memuat data ke dalam tabel yang ada**

Perintah COPY digunakan oleh editor kueri v2 untuk memuat data dari Amazon S3. Perintah COPY yang dihasilkan dan digunakan dalam wizard memuat data editor kueri v2 mendukung banyak parameter yang tersedia untuk sintaks perintah COPY untuk disalin dari Amazon S3. Untuk informasi tentang perintah COPY dan opsinya yang digunakan untuk memuat data dari Amazon S3, lihat [COPY dari Amazon Simple Storage Service](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-source-s3.html) di Panduan Pengembang *Database Amazon Redshift*. 

1. Konfirmasikan bahwa tabel sudah dibuat di database tempat Anda ingin memuat data. 

1. Konfirmasikan bahwa Anda terhubung ke database target di panel tampilan pohon editor kueri v2 sebelum melanjutkan. Anda dapat membuat koneksi menggunakan menu konteks (klik kanan) ke cluster atau workgroup tempat data akan dimuat.

   Pilih ![\[Load\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-upload.png) **Muat data**.

1. Untuk **sumber Data**, pilih **Muat dari bucket S3**.

1. Di **S3 URIs**, pilih **Browse S3** untuk mencari bucket Amazon S3 yang berisi data yang akan dimuat. 

1. Jika bucket Amazon S3 yang ditentukan tidak Wilayah AWS sama dengan tabel target, pilih **lokasi file S3 untuk lokasi** data tersebut Wilayah AWS berada.

1. Pilih **File ini adalah file manifes jika file** Amazon S3 sebenarnya adalah manifes yang berisi beberapa bucket Amazon S3. URIs

1. Pilih **format File** untuk file yang akan diunggah. Format data yang didukung adalah CSV, JSON, DELIMITER, FIXEDWIDTH, SHAPEFILE, AVRO, PARQUET, dan ORC. Tergantung pada format file yang ditentukan, Anda dapat memilih **opsi File** masing-masing. Anda juga dapat memilih **Data dienkripsi** jika data dienkripsi dan masukkan Nama Sumber Daya Amazon (ARN) dari kunci KMS yang digunakan untuk mengenkripsi data.

   Jika Anda memilih CSV atau DELIMITER, Anda juga dapat memilih **karakter Delimiter** dan apakah akan **Abaikan baris header jika jumlah baris** yang ditentukan sebenarnya adalah nama kolom dan bukan data yang akan dimuat.

1. Pilih metode kompresi untuk mengompres file Anda. Defaultnya adalah tidak ada kompresi.

1. (Opsional) **Pengaturan lanjutan** mendukung berbagai **parameter konversi Data** dan **operasi Beban**. Masukkan informasi ini sesuai kebutuhan untuk file Anda.

   Untuk informasi selengkapnya tentang konversi data dan parameter pemuatan data, lihat [Parameter konversi data](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-conversion.html) dan [Operasi pemuatan data](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-load.html) di Panduan *Pengembang Database Amazon Redshift*.

1. Pilih **Berikutnya**.

1. Pilih **Muat tabel yang ada**.

1. Konfirmasikan atau pilih lokasi **tabel Target** termasuk **Cluster atau kelompok kerja**, **Database**, **Skema**, dan nama **Tabel** tempat data dimuat.

1. Pilih **peran IAM** yang memiliki izin yang diperlukan untuk memuat data dari Amazon S3.

1. (Opsional) Pilih nama kolom untuk memasukkannya **Pemetaan kolom untuk memetakan** kolom dalam urutan file data input.

1. Pilih **Muat data** untuk memulai pemuatan data.

   Saat beban selesai, editor kueri ditampilkan dengan perintah COPY yang dihasilkan yang digunakan untuk memuat data Anda. **Hasil** COPY ditampilkan. Jika berhasil, Anda sekarang dapat menggunakan SQL untuk memilih data dari tabel yang dimuat. Ketika ada kesalahan, kueri tampilan sistem STL\$1LOAD\$1ERRORS untuk mendapatkan detail lebih lanjut. *Untuk informasi tentang kesalahan perintah COPY, lihat [STL\$1LOAD\$1ERRORS di Panduan Pengembang Database](https://docs.aws.amazon.com/redshift/latest/dg/r_STL_LOAD_ERRORS.html) Amazon Redshift.*

Saat Anda memuat data ke dalam tabel baru, editor kueri v2 pertama-tama membuat tabel di database, lalu memuat data sebagai tindakan terpisah dalam alur kerja yang sama.

**Untuk memuat data ke dalam tabel baru**

Perintah COPY digunakan oleh editor kueri v2 untuk memuat data dari Amazon S3. Perintah COPY yang dihasilkan dan digunakan dalam wizard memuat data editor kueri v2 mendukung banyak parameter yang tersedia untuk sintaks perintah COPY untuk disalin dari Amazon S3. Untuk informasi tentang perintah COPY dan opsinya yang digunakan untuk memuat data dari Amazon S3, lihat [COPY dari Amazon Simple Storage Service](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-source-s3.html) di Panduan Pengembang *Database Amazon Redshift*. 

1. Konfirmasikan bahwa Anda terhubung ke database target di panel tampilan pohon editor kueri v2 sebelum melanjutkan. Anda dapat membuat koneksi menggunakan menu konteks (klik kanan) ke cluster atau workgroup tempat data akan dimuat.

   Pilih ![\[Load\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-upload.png) **Muat data**.

1. Untuk **sumber Data**, pilih **Muat dari bucket S3**.

1. Di **S3 URIs**, pilih **Browse S3** untuk mencari bucket Amazon S3 yang berisi data yang akan dimuat. 

1. Jika bucket Amazon S3 yang ditentukan tidak Wilayah AWS sama dengan tabel target, pilih **lokasi file S3 untuk lokasi** data tersebut Wilayah AWS berada.

1. Pilih **File ini adalah file manifes jika file** Amazon S3 sebenarnya adalah manifes yang berisi beberapa bucket Amazon S3. URIs

1. Pilih **format File** untuk file yang akan diunggah. Format data yang didukung adalah CSV, JSON, DELIMITER, FIXEDWIDTH, SHAPEFILE, AVRO, PARQUET, dan ORC. Tergantung pada format file yang ditentukan, Anda dapat memilih **opsi File** masing-masing. Anda juga dapat memilih **Data dienkripsi** jika data dienkripsi dan masukkan Nama Sumber Daya Amazon (ARN) dari kunci KMS yang digunakan untuk mengenkripsi data.

   Jika Anda memilih CSV atau DELIMITER, Anda juga dapat memilih **karakter Delimiter** dan apakah akan **Abaikan baris header jika jumlah baris** yang ditentukan sebenarnya adalah nama kolom dan bukan data yang akan dimuat.

1. Pilih metode kompresi untuk mengompres file Anda. Defaultnya adalah tidak ada kompresi.

1. (Opsional) **Pengaturan lanjutan** mendukung berbagai **parameter konversi Data** dan **operasi Beban**. Masukkan informasi ini sesuai kebutuhan untuk file Anda.

   Untuk informasi selengkapnya tentang konversi data dan parameter pemuatan data, lihat [Parameter konversi data](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-conversion.html) dan [Operasi pemuatan data](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-load.html) di Panduan *Pengembang Database Amazon Redshift*.

1. Pilih **Berikutnya**.

1. Pilih **Muat tabel baru**.

   Kolom tabel disimpulkan dari data input. Anda dapat memodifikasi definisi skema tabel dengan menambahkan kolom dan detail tabel. Untuk kembali ke skema tabel yang disimpulkan editor kueri v2, pilih **Pulihkan** ke default.

1. Konfirmasikan atau pilih lokasi **tabel Target** termasuk **Cluster atau workgroup**, **Database**, dan **Skema** tempat data dimuat. Masukkan nama **Tabel** yang akan dibuat.

1. Pilih **peran IAM** yang memiliki izin yang diperlukan untuk memuat data dari Amazon S3.

1. Pilih **Buat tabel** untuk membuat tabel menggunakan definisi yang ditampilkan.

   Ringkasan tinjauan definisi tabel ditampilkan. Tabel dibuat dalam database. Untuk kemudian menghapus tabel, jalankan perintah DROP TABLE SQL. Untuk informasi selengkapnya, lihat [DROP TABLE](https://docs.aws.amazon.com/redshift/latest/dg/r_DROP_TABLE) di Panduan *Pengembang Database Amazon Redshift*.

1. Pilih **Muat data** untuk memulai pemuatan data.

   Saat beban selesai, editor kueri ditampilkan dengan perintah COPY yang dihasilkan yang digunakan untuk memuat data Anda. **Hasil** COPY ditampilkan. Jika berhasil, Anda sekarang dapat menggunakan SQL untuk memilih data dari tabel yang dimuat. Ketika ada kesalahan, kueri tampilan sistem STL\$1LOAD\$1ERRORS untuk mendapatkan detail lebih lanjut. *Untuk informasi tentang kesalahan perintah COPY, lihat [STL\$1LOAD\$1ERRORS di Panduan Pengembang Database](https://docs.aws.amazon.com/redshift/latest/dg/r_STL_LOAD_ERRORS.html) Amazon Redshift.*

# Memuat data dari pengaturan file lokal dan alur kerja
<a name="query-editor-v2-loading-data-local"></a>

Anda dapat memuat data dari file lokal ke tabel yang sudah ada atau yang baru.

## Pengaturan administrator untuk memuat data dari file lokal
<a name="query-editor-v2-loading-data-local-setup"></a>

Administrator editor kueri v2 Anda harus menentukan bucket Amazon S3 umum di jendela **Pengaturan akun**. Pengguna akun harus dikonfigurasi dengan izin yang tepat.
+ Izin IAM yang diperlukan — pengguna pemuatan dari file lokal harus memiliki`s3:ListBucket`,,`s3:GetBucketLocation`, `s3:putObject``s3:getObject`, dan `s3:deleteObject` izin. *optional-prefix*Dapat ditentukan untuk membatasi penggunaan terkait editor kueri v2 dari bucket ini ke objek dengan awalan ini. Anda dapat menggunakan opsi ini saat menggunakan bucket Amazon S3 yang sama ini untuk penggunaan selain editor kueri v2. Untuk informasi selengkapnya tentang bucket dan awalan, lihat [Mengelola akses pengguna ke folder tertentu](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html#example-bucket-policies-folders) di Panduan Pengguna *Layanan Penyimpanan Sederhana Amazon*. Untuk memastikan bahwa akses data lintas pengguna tidak diizinkan, sebaiknya administrator editor kueri v2 menggunakan kebijakan bucket Amazon S3 untuk membatasi akses objek berdasarkan. `aws:userid` Contoh berikut memungkinkan izin Amazon S3 ke a *<staging-bucket-name>* dengan akses baca/tulis hanya ke objek Amazon S3 dengan awalan sebagai. `aws:userid`

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
                  "s3:ListBucket",
                  "s3:GetBucketLocation"
              ],
              "Resource": [
                  "arn:aws:s3:::<staging-bucket-name>"
              ]
          },
          {
              "Effect": "Allow",
              "Action": [
                  "s3:PutObject",
                  "s3:GetObject",
                  "s3:DeleteObject"
              ],
              "Resource": [
                  "arn:aws:s3:::<staging-bucket-name>[/<optional-prefix>]/${aws:userid}/*"
              ]
          }
      ]
  }
  ```

------
+ Pemisahan data — kami menyarankan agar pengguna tidak memiliki akses ke data satu sama lain (bahkan sebentar). Memuat dari file lokal menggunakan bucket Amazon S3 pementasan yang disiapkan oleh administrator editor kueri v2. Konfigurasikan kebijakan bucket untuk bucket staging untuk menyediakan pemisahan data antar pengguna. Contoh berikut menunjukkan kebijakan bucket yang memisahkan data antara pengguna. *<staging-bucket-name>*

------
#### [ JSON ]

****  

  ```
  {
   "Version":"2012-10-17",		 	 	 
      "Statement": [
          {"Sid": "userIdPolicy",
              "Effect": "Deny",
              "Principal": "*",
              "Action": ["s3:PutObject",
                         "s3:GetObject",
                         "s3:DeleteObject"],
              "NotResource": [
                  "arn:aws:s3:::<staging-bucket-name>[/<optional-prefix>]/${aws:userid}/*"
              ]
           }
      ]
  }
  ```

------

## Memuat data dari file lokal
<a name="query-editor-v2-loading-data-local-procedure"></a>

**Untuk memuat data file lokal ke dalam tabel yang ada**

Administrator editor kueri v2 Anda harus menentukan bucket Amazon S3 umum di jendela **Pengaturan akun.** editor kueri v2 secara otomatis mengunggah file lokal ke bucket Amazon S3 umum yang digunakan oleh akun Anda, lalu menggunakan perintah COPY untuk memuat data. Perintah COPY yang dihasilkan dan dijalankan oleh editor kueri v2 memuat jendela file lokal mendukung banyak parameter yang tersedia untuk sintaks perintah COPY untuk disalin dari Amazon S3. Untuk informasi tentang perintah COPY dan opsinya yang digunakan untuk memuat data dari Amazon S3, lihat [COPY dari Amazon S3](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-source-s3.html) di Panduan Pengembang *Database Amazon Redshift*. 

1. Konfirmasikan bahwa tabel sudah dibuat di database tempat Anda ingin memuat data. 

1. Konfirmasikan bahwa Anda terhubung ke database target di panel tampilan pohon editor kueri v2. Anda dapat membuat koneksi menggunakan menu konteks (klik kanan) ke cluster atau workgroup tempat data akan dimuat. 

1. Pilih ![\[Load\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-upload.png) **Muat data**.

1. Untuk **Sumber data**, pilih **Muat dari file lokal**.

1. Pilih **Browse** untuk menemukan file yang berisi data untuk **Memuat file**. Secara default, file dengan ekstensi`.csv`, `.avro``.parquet`, dan `.orc` ditampilkan, tetapi Anda dapat memilih jenis file lainnya. Ukuran file maksimum adalah 100 MB.

1. Pilih **format File** untuk file yang akan diunggah. Format data yang didukung adalah CSV, JSON, DELIMITER, FIXEDWIDTH, SHAPEFILE, AVRO, PARQUET, dan ORC. Tergantung pada format file yang ditentukan, Anda dapat memilih **opsi File** masing-masing. Anda juga dapat memilih **Data dienkripsi** jika data dienkripsi dan masukkan Nama Sumber Daya Amazon (ARN) dari kunci KMS yang digunakan untuk mengenkripsi data.

   Jika Anda memilih CSV atau DELIMITER, Anda juga dapat memilih **karakter Delimiter** dan apakah akan **Abaikan baris header jika jumlah baris** yang ditentukan sebenarnya adalah nama kolom dan bukan data yang akan dimuat.

1. (Opsional) **Pengaturan lanjutan** mendukung berbagai **parameter konversi Data** dan **operasi Beban**. Masukkan informasi ini sesuai kebutuhan untuk file Anda.

   Untuk informasi selengkapnya tentang konversi data dan parameter pemuatan data, lihat [Parameter konversi data](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-conversion.html) dan [Operasi pemuatan data](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-load.html) di Panduan *Pengembang Database Amazon Redshift*.

1. Pilih **Berikutnya**.

1. Pilih **Muat tabel yang ada**.

1. Konfirmasikan atau pilih lokasi **tabel Target** termasuk **Cluster atau kelompok kerja**, **Database**, **Skema**, dan nama **Tabel** tempat data dimuat.

1. (Opsional) Anda dapat memilih nama kolom untuk dimasukkan **Pemetaan kolom untuk memetakan** kolom dalam urutan file data input.

1. Pilih **Muat data** untuk memulai pemuatan data.

   Ketika beban selesai, pesan ditampilkan apakah beban berhasil atau tidak. Jika berhasil, Anda sekarang dapat menggunakan SQL untuk memilih data dari tabel yang dimuat. Ketika ada kesalahan, kueri tampilan sistem STL\$1LOAD\$1ERRORS untuk mendapatkan detail lebih lanjut. *Untuk informasi tentang kesalahan perintah COPY, lihat [STL\$1LOAD\$1ERRORS di Panduan Pengembang Database](https://docs.aws.amazon.com/redshift/latest/dg/r_STL_LOAD_ERRORS.html) Amazon Redshift.*

   Template perintah COPY yang digunakan untuk memuat data muncul di **riwayat Query** Anda. Template perintah COPY ini menunjukkan beberapa parameter yang digunakan, tetapi tidak dapat dijalankan langsung di tab editor. Untuk informasi selengkapnya tentang riwayat kueri, lihat[Melihat kueri dan riwayat tab](query-editor-v2-history.md).

Saat Anda memuat data ke dalam tabel baru, editor kueri v2 pertama-tama membuat tabel di database, lalu memuat data sebagai tindakan terpisah dalam alur kerja yang sama.

**Untuk memuat data file lokal ke dalam tabel baru**

Administrator editor kueri v2 Anda harus menentukan bucket Amazon S3 umum di jendela **Pengaturan akun**. File lokal secara otomatis diunggah ke bucket Amazon S3 umum yang digunakan oleh akun Anda, dan kemudian perintah COPY digunakan oleh editor kueri v2 untuk memuat data. Perintah COPY yang dihasilkan dan dijalankan oleh editor kueri v2 memuat jendela file lokal mendukung banyak parameter yang tersedia untuk sintaks perintah COPY untuk disalin dari Amazon S3. Untuk informasi tentang perintah COPY dan opsinya yang digunakan untuk memuat data dari Amazon S3, lihat [COPY dari Amazon S3](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-source-s3.html) di Panduan Pengembang *Database Amazon Redshift*. 

1. Konfirmasikan bahwa Anda terhubung ke database target di panel tampilan pohon editor kueri v2. Anda dapat membuat koneksi menggunakan menu konteks (klik kanan) ke cluster atau workgroup tempat data akan dimuat. 

1. Pilih ![\[Load\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-upload.png) **Muat data**.

1. Untuk **Sumber data**, pilih **Muat dari file lokal**.

1. Pilih **Browse** untuk menemukan file yang berisi data untuk **Memuat file**. Secara default, file dengan ekstensi`.csv`, `.avro``.parquet`, dan `.orc` ditampilkan, tetapi Anda dapat memilih jenis file lainnya. Ukuran file maksimum adalah 100 MB.

1. Pilih **format File** untuk file yang akan diunggah. Format data yang didukung adalah CSV, JSON, DELIMITER, FIXEDWIDTH, SHAPEFILE, AVRO, PARQUET, dan ORC. Tergantung pada format file yang ditentukan, Anda dapat memilih **opsi File** masing-masing. Anda juga dapat memilih **Data dienkripsi** jika data dienkripsi dan masukkan Nama Sumber Daya Amazon (ARN) dari kunci KMS yang digunakan untuk mengenkripsi data.

   Jika Anda memilih CSV atau DELIMITER, Anda juga dapat memilih **karakter Delimiter** dan apakah akan **Abaikan baris header jika jumlah baris** yang ditentukan sebenarnya adalah nama kolom dan bukan data yang akan dimuat.

1. (Opsional) **Pengaturan lanjutan** mendukung berbagai **parameter konversi Data** dan **operasi Beban**. Masukkan informasi ini sesuai kebutuhan untuk file Anda.

   Untuk informasi selengkapnya tentang konversi data dan parameter pemuatan data, lihat [Parameter konversi data](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-conversion.html) dan [Operasi pemuatan data](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-load.html) di Panduan *Pengembang Database Amazon Redshift*.

1. Pilih **Berikutnya**.

1. Pilih **Muat tabel baru**.

1. Konfirmasikan atau pilih lokasi **tabel Target** termasuk **Cluster atau workgroup**, **Database**, dan **Skema** tempat data dimuat. Masukkan nama **Tabel** yang akan dibuat.

1. Pilih **Buat tabel** untuk membuat tabel menggunakan definisi yang ditampilkan.

   Ringkasan tinjauan definisi tabel ditampilkan. Tabel dibuat dalam database. Untuk kemudian menghapus tabel, jalankan perintah DROP TABLE SQL. Untuk informasi selengkapnya, lihat [DROP TABLE](https://docs.aws.amazon.com/redshift/latest/dg/r_DROP_TABLE) di Panduan *Pengembang Database Amazon Redshift*.

1. Pilih **Muat data** untuk memulai pemuatan data.

   Ketika beban selesai, pesan ditampilkan yang menunjukkan apakah beban berhasil atau tidak. Jika berhasil, Anda sekarang dapat menggunakan SQL untuk memilih data dari tabel yang dimuat. Ketika ada kesalahan, kueri tampilan sistem STL\$1LOAD\$1ERRORS untuk mendapatkan detail lebih lanjut. *Untuk informasi tentang kesalahan perintah COPY, lihat [STL\$1LOAD\$1ERRORS di Panduan Pengembang Database](https://docs.aws.amazon.com/redshift/latest/dg/r_STL_LOAD_ERRORS.html) Amazon Redshift.*

   Template perintah COPY yang digunakan untuk memuat data muncul di **riwayat Query** Anda. Template perintah COPY ini menunjukkan beberapa parameter yang digunakan, tetapi tidak dapat dijalankan langsung di tab editor. Untuk informasi selengkapnya tentang riwayat kueri, lihat[Melihat kueri dan riwayat tab](query-editor-v2-history.md).

# Membuat kueri dengan Amazon Redshift
<a name="query-editor-v2-query-run"></a>

Anda dapat memasukkan kueri di editor atau memilih kueri yang disimpan dari daftar **Kueri** dan memilih **Jalankan**.

Secara default, **Batas 100** diatur untuk membatasi hasil hingga 100 baris. Anda dapat mematikan opsi ini untuk mengembalikan set hasil yang lebih besar. Jika Anda mematikan opsi ini, Anda dapat menyertakan opsi LIMIT dalam pernyataan SQL Anda jika Anda ingin menghindari set hasil yang sangat besar. Untuk informasi selengkapnya, lihat [klausa ORDER BY](https://docs.aws.amazon.com/redshift/latest/dg/r_ORDER_BY_clause.html) di Panduan Pengembang *Database Amazon Redshift*.

Untuk menampilkan rencana kueri di area hasil, aktifkan **Jelaskan**. Aktifkan **grafik Jelaskan** untuk hasil untuk juga menampilkan representasi grafis dari rencana penjelasan.

Untuk menyimpan kueri ke folder **Kueri**, pilih **Simpan**.

Untuk kueri yang berhasil, pesan sukses muncul. Jika kueri mengembalikan informasi, hasilnya akan ditampilkan di bagian **Hasil**. Jika jumlah hasil melebihi area tampilan, angka muncul di bagian atas area hasil. Anda dapat memilih angka untuk menampilkan halaman hasil yang berurutan.

Anda dapat memfilter dan mengurutkan **Hasil** untuk setiap kolom. Untuk memasukkan kriteria filter di header kolom hasil, arahkan kursor ke kolom untuk melihat menu (![\[Filter menu\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/menu.png)) di mana Anda dapat memasukkan kriteria untuk memfilter kolom.

Jika kueri berisi kesalahan, editor kueri v2 menampilkan pesan kesalahan di area hasil. Pesan tersebut memberikan informasi tentang cara memperbaiki kueri.

Anda dapat mengekspor atau menyalin hasil kueri Anda dengan menggunakan menu konteks (klik kanan) di area hasil sebagai berikut:
+ Pilih **Salin ke** dan **JSON** atau **CSV** untuk mengunduh baris yang dipilih ke file.
+ Pilih **Salin baris** untuk menyalin baris yang dipilih ke clipboard.
+ Pilih **Salin baris dengan header** untuk menyalin baris yang dipilih dengan header kolom ke clipboard.

Anda juga dapat memilih **Ekspor** di area hasil, lalu pilih **JSON** atau **CSV** untuk mengunduh seluruh rangkaian hasil baris ke file. Jumlah baris dalam kumpulan hasil mungkin dibatasi oleh opsi **Limit** atau `limit` klausa SQL dalam kueri. Ukuran maksimum dari set hasil yang diunduh adalah 5 MB.

Anda juga dapat menggunakan pintasan Ctrl\$1C di Windows atau Cmd\$1C di macOS untuk menyalin data dari halaman hasil saat ini ke clipboard. Jika tidak ada baris yang dipilih, maka sel dengan fokus disalin ke clipboard. Jika baris dipilih, maka baris yang dipilih disalin ke clipboard.

Untuk menambahkan tab kueri baru, pilih ![\[New query tab\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/add-plus.png) ikon, lalu **Editor**, yang muncul di baris dengan tab kueri. Tab kueri menggunakan `Isolated session` atau tidak. Dengan sesi terisolasi, hasil perintah SQL, seperti membuat tabel sementara di satu tab editor, tidak terlihat di tab editor lain. Saat Anda membuka tab editor di editor kueri v2, defaultnya adalah sesi terisolasi. 

**Untuk menjalankan kueri**

1. Di area kueri, lakukan salah satu hal berikut:
   + Masukkan kueri.
   + Tempelkan kueri yang Anda salin.
   + Pilih folder **Kueri**, buka menu konteks (klik kanan) kueri yang disimpan, dan pilih **Buka** kueri.

1. Konfirmasikan bahwa Anda memilih **Cluster** atau **Workgroup** yang benar, dan nilai **Database** untuk SQL yang Anda rencanakan untuk dijalankan. 

   Awalnya, Anda dapat memilih **Cluster** atau **Workgroup** Anda di tampilan pohon. Pilih **Database** Anda di tampilan pohon juga.

   Anda dapat mengubah **Cluster** atau **Workgroup**, dan **Database** dalam setiap tab editor dengan kontrol drop-down yang terletak di dekat header **sesi Terisolasi** dari setiap tab editor.

   Untuk setiap tab editor, Anda memilih apakah akan menjalankan SQL dalam **sesi Terisolasi**. Sesi terisolasi memiliki koneksi sendiri ke database. Gunakan untuk menjalankan SQL yang terisolasi dari sesi editor kueri lainnya. Untuk informasi selengkapnya tentang koneksi, lihat[Membuka editor kueri v2](query-editor-v2-open.md).

1. Pilih **Jalankan**.

   Area **Hasil** membuka dan menampilkan hasil kueri.

**Untuk menampilkan rencana penjelasan untuk kueri**

1. Pilih kueri.

1. Aktifkan **Jelaskan**.

   Secara default, **grafik Jelaskan** juga aktif.

1. Pilih **Jalankan**.

   Kueri berjalan dan rencana penjelasan ditampilkan di area **Hasil** kueri.

Editor kueri v2 mendukung fitur-fitur berikut:
+ Anda dapat membuat kueri dengan beberapa pernyataan SQL dalam satu tab kueri. Kueri dijalankan secara serial dan beberapa tab hasil terbuka untuk setiap kueri. 
+ Anda dapat membuat kueri dengan variabel sesi dan tabel sementara.
+ Anda dapat membuat kueri dengan parameter yang dapat diganti yang ditunjuk oleh. `${parameter}` Anda dapat membuat kueri SQL Anda dengan beberapa parameter yang dapat diganti dan menggunakan parameter yang sama di beberapa tempat dalam pernyataan SQL Anda. 

  Saat kueri berjalan, sebuah jendela disajikan untuk memasukkan nilai parameter. Setiap kali Anda menjalankan kueri, jendela disajikan untuk memasukkan nilai parameter Anda. 

  Sebagai contoh, lihat [Contoh: Penjualan lebih besar dari parameter tertentu](#query-editor-v2-example-sales-qtysold-greater-than-parameter). 
+ Kueri diversi secara otomatis. Anda dapat memilih versi kueri yang lebih lama untuk dijalankan.
+ Anda tidak perlu menunggu kueri selesai sebelum melanjutkan alur kerja Anda. Kueri Anda terus berjalan bahkan jika Anda menutup editor kueri.
+ Saat membuat kueri, penyelesaian otomatis nama skema, tabel, dan kolom didukung.

Editor SQL mendukung fitur-fitur berikut:
+ Tanda kurung awal dan akhir yang digunakan dalam SQL memiliki warna yang cocok. Garis vertikal ditampilkan di editor untuk membantu Anda mencocokkan tanda kurung.
+ Anda dapat menciutkan dan memperluas bagian SQL Anda. 
+ Anda dapat mencari dan mengganti teks di SQL Anda.
+ Anda dapat menggunakan tombol pintas untuk beberapa tugas pengeditan umum.
+ Kesalahan SQL disorot di editor untuk lokasi area masalah yang nyaman.

Untuk demo fitur editor, tonton video berikut. 

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/9JAq0yDs0YE/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/9JAq0yDs0YE)


## Contoh kueri
<a name="query-editor-v2-examples"></a>

Berikut ini, Anda dapat menemukan deskripsi dari berbagai jenis kueri yang dapat Anda jalankan. 

Data yang digunakan dalam banyak kueri ini berasal dari skema `tickit` sampel. Untuk informasi selengkapnya tentang memuat `tickit` data sampel, lihat[Memuat data ke dalam database](query-editor-v2-loading.md). Untuk informasi selengkapnya tentang data `tickit` sampel, lihat [Contoh database](https://docs.aws.amazon.com/redshift/latest/dg/c_sampledb.html) di Panduan *Pengembang Database Amazon Redshift*.

Saat Anda menjalankan contoh kueri ini, konfirmasikan bahwa Anda memilih database yang benar di editor, seperti`sample_data_dev`.

**Topics**
+ [Contoh: Mengatur variabel sesi](#query-editor-v2-example-set-session-variable)
+ [Contoh: Acara teratas berdasarkan total penjualan](#query-editor-v2-example-top-event-sales)
+ [Contoh: Penjualan lebih besar dari parameter tertentu](#query-editor-v2-example-sales-qtysold-greater-than-parameter)
+ [Contoh: Buat tabel sementara](#query-editor-v2-example-create-temporary-table)
+ [Contoh: Memilih dari tabel sementara](#query-editor-v2-example-select-from-temporary-table)

### Contoh: Mengatur variabel sesi
<a name="query-editor-v2-example-set-session-variable"></a>

Perintah berikut menetapkan parameter konfigurasi `search_path` server ke *publik* untuk sesi tersebut. Untuk informasi selengkapnya, lihat [SET](https://docs.aws.amazon.com/redshift/latest/dg/r_SET.html) dan [search\$1path](https://docs.aws.amazon.com/redshift/latest/dg/r_search_path.html) di Panduan Pengembang Database *Amazon Redshift*. 

```
set search_path to public;
```

### Contoh: Acara teratas berdasarkan total penjualan
<a name="query-editor-v2-example-top-event-sales"></a>

Kueri berikut menemukan acara dengan penjualan terbanyak. 

```
select eventname, count(salesid) totalorders, sum(pricepaid) totalsales
from sales, event
where sales.eventid=event.eventid
group by eventname
order by 3;
```

Berikut ini adalah sebagian daftar hasil.

```
eventname           totalorders       totalsales
White Christmas         20              9352
Joshua Radin            38             23469
Beach Boys              58             30383
Linda Ronstadt          56             35043
Rascal Flatts           76             38214
Billy Idol              67             40101
Stephenie Meyer         72             41509
Indigo Girls            57             45399
...
```

### Contoh: Penjualan lebih besar dari parameter tertentu
<a name="query-editor-v2-example-sales-qtysold-greater-than-parameter"></a>

Kueri berikut menemukan penjualan di mana jumlah yang terjual lebih besar dari parameter yang ditentukan oleh`${numberoforders}`. Ketika nilai parameternya`7`, hasilnya adalah 60 baris. Saat Anda menjalankan kueri, editor kueri v2 menampilkan jendela **formulir kueri Jalankan** untuk mengumpulkan nilai parameter dalam pernyataan SQL. 

```
select salesid, qtysold
from sales 
where qtysold > ${numberoforders}
order by 2;
```

Berikut ini adalah sebagian daftar hasil.

```
salesid	qtysold
20005	8
21279	8
130232	8
42737	8
74681	8
67103	8
105533	8
91620	8
121552	8
...
```

### Contoh: Buat tabel sementara
<a name="query-editor-v2-example-create-temporary-table"></a>

**Pernyataan berikut menciptakan tabel *eventsalestemp* sementara dengan memilih informasi dari tabel penjualan dan acara.** 

```
create temporary table eventsalestemp as
select eventname, count(salesid) totalorders, sum(pricepaid) totalsales
from sales, event
where sales.eventid=event.eventid
group by eventname;
```

### Contoh: Memilih dari tabel sementara
<a name="query-editor-v2-example-select-from-temporary-table"></a>

Pernyataan berikut memilih acara, total pesanan, dan total penjualan dari *eventsalestemp* tabel sementara, dipesan berdasarkan total pesanan. 

```
select eventname,  totalorders,  totalsales
from eventsalestemp
order by 2;
```

Berikut ini adalah sebagian daftar hasil.

```
eventname          totalorders   totalsales
White Christmas        20          9352
Joshua Radin           38         23469
Martina McBride        50         52932
Linda Ronstadt         56         35043
Indigo Girls           57         45399
Beach Boys             58         30383
...
```

# Notebook di Amazon Redshift
<a name="query-editor-v2-notebooks"></a>

Anda dapat menggunakan buku catatan untuk mengatur, membuat anotasi, dan berbagi beberapa kueri SQL dalam satu dokumen. Anda dapat menambahkan beberapa kueri SQL dan sel Markdown ke buku catatan. Notebook menyediakan cara untuk mengelompokkan kueri dan penjelasan yang terkait dengan analisis data dalam satu dokumen dengan menggunakan beberapa kueri dan sel Markdown. Anda dapat menambahkan teks dan memformat tampilan menggunakan sintaks Markdown untuk memberikan konteks dan informasi tambahan untuk tugas analisis data Anda. Anda dapat membagikan buku catatan Anda dengan anggota tim.

Untuk menggunakan buku catatan, Anda harus menambahkan izin untuk buku catatan ke kepala IAM Anda (pengguna IAM atau peran IAM). Sebagai praktik terbaik, kami merekomendasikan untuk melampirkan kebijakan izin ke peran IAM dan kemudian menetapkannya ke pengguna dan grup sesuai kebutuhan. Untuk informasi selengkapnya, lihat [Identitas dan manajemen akses di Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-authentication-access-control.html). Anda dapat menambahkan izin ke salah satu kebijakan terkelola editor kueri v2. Untuk informasi selengkapnya, lihat [Mengakses editor kueri v2](query-editor-v2-getting-started.md#query-editor-v2-configure).

Anda dapat menjalankan semua sel notebook secara berurutan. Sel kueri SQL notebook memiliki sebagian besar kemampuan yang sama dengan tab editor kueri. Untuk informasi selengkapnya, lihat [Membuat kueri dengan Amazon Redshift](query-editor-v2-query-run.md). Berikut ini adalah perbedaan antara tab query editor dan sel SQL di notebook.
+ Tidak ada kontrol untuk dijalankan `Explain` pada pernyataan SQL di notebook.
+ Anda hanya dapat membuat satu bagan per sel SQL di buku catatan.

Anda dapat mengekspor dan mengimpor buku catatan ke file yang dibuat dengan editor kueri v2. Ekstensi file adalah `.ipynb` dan ukuran file bisa maksimal 5 MB. Sel SQL dan Markdown disimpan dalam file. Cluster atau workgroup dan database tidak disimpan di notebook yang diekspor. Saat Anda membuka buku catatan yang diimpor, Anda memilih cluster atau workgroup dan database tempat menjalankannya. Setelah menjalankan sel SQL, Anda kemudian dapat memilih di tab hasil apakah akan menampilkan halaman hasil saat ini sebagai bagan. Kumpulan hasil kueri tidak disimpan di buku catatan.

# Membuat buku catatan
<a name="query-editor-v2-notebooks-create"></a>

Anda dapat membuat buku catatan untuk mengatur, membuat anotasi, dan berbagi beberapa kueri SQL dalam satu dokumen. 

**Untuk membuat buku catatan**

1. Dari menu navigator, pilih ikon Editor (![\[Horizontal lines representing redacted or censored text.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-align-left.png)).

1. Pilih ikon plus (![\[Plus sign icon representing an addition or new item action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/add-plus.png)), lalu pilih **Notebook**.

   Secara default, sel kueri SQL muncul di buku catatan.

1. Di sel kueri SQL, lakukan salah satu hal berikut:
   + Masukkan kueri.
   + Tempelkan kueri yang Anda salin.

1. (Opsional) Pilih ikon plus (![\[Plus sign icon representing an addition or new item action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/add-plus.png)), lalu pilih **Markdown untuk menambahkan sel Markdown** di mana Anda dapat memberikan teks deskriptif atau penjelasan menggunakan sintaks Markdown standar. 

1. (Opsional) Pilih ikon plus (![\[Plus sign icon representing an addition or new item action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/add-plus.png)), lalu pilih **SQL untuk menyisipkan sel SQL**. 

Anda dapat mengganti nama notebook menggunakan ikon pensil ()![\[Pencil icon representing an editing or writing function.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-edit.png).

Dari ikon menu (![\[Three dots arranged horizontally, representing an ellipsis or "more" menu icon.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-more.png)), Anda juga dapat melakukan operasi berikut pada buku catatan:
+ ![\[Share\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-share.png)**Bagikan dengan tim saya** — Untuk berbagi buku catatan dengan tim Anda seperti yang ditentukan oleh tag. Untuk berbagi buku catatan dengan tim Anda, pastikan bahwa Anda memiliki tag utama yang `sqlworkbench-team` disetel ke nilai yang sama dengan anggota tim lainnya di akun Anda. Misalnya, administrator mungkin menetapkan nilai `accounting-team` untuk semua orang di departemen akuntansi. Sebagai contoh, lihat [Izin yang diperlukan untuk menggunakan editor kueri v2](redshift-iam-access-control-identity-based.md#redshift-policy-resources.required-permissions.query-editor-v2).
+ ![\[Export\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-export.png)**Ekspor** - Untuk mengekspor buku catatan ke file lokal dengan `.ipynb` ekstensi.
+ ![\[Import query\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-import.png)**Kueri impor** - Untuk mengimpor kueri dari file lokal ke sel di buku catatan. Anda dapat mengimpor file dengan `.sql` dan `.txt` ekstensi.
+  ![\[Save\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-floppy-disk.png)**Simpan versi** — Untuk membuat versi notebook. Untuk melihat versi buku catatan, navigasikan ke buku catatan yang disimpan dan buka **Riwayat versi**.
+  ![\[Duplicate\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-duplicate.png)**Duplikat** — Untuk membuat salinan buku catatan dan membukanya di tab notebook baru. 
+  ![\[Shortcuts\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-key-command.png)**Pintasan** - Untuk menampilkan pintasan yang tersedia saat membuat buku catatan. 

# Mengimpor ke notebook
<a name="query-editor-v2-notebooks-import"></a>

Anda dapat mengimpor seluruh notebook atau sel SQL individual ke dalam notebook editor kueri v2.

Untuk mengimpor seluruh buku catatan dari file lokal ke **buku catatan saya**, pilih ![\[Import\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-import.png) **Impor, lalu pilih Impor** **buku catatan**. Arahkan ke `.ipynb` file yang berisi buku catatan Anda. Notebook diimpor ke folder notebook yang sedang terbuka. Anda kemudian dapat membuka notebook di editor notebook.

Untuk mengimpor kueri dari file lokal ke sel SQL di buku catatan, pilih ![\[Import\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-import.png) **Impor, lalu pilih Impor** **kueri**. Pada jendela **kueri impor**, ikuti petunjuk di layar untuk memilih file dan folder yang dapat diimpor sebagai kueri ke buku catatan baru atau buku catatan yang sudah ada. File harus memiliki ekstensi `.sql` atau`.txt`. Setiap kueri dapat mencapai 10.000 karakter. Saat menambahkan ke buku catatan yang ada, Anda memilih buku catatan mana dari semua buku catatan dalam daftar **buku catatan tersimpan**. Kueri yang diimpor ditambahkan sebagai sel SQL di akhir notebook. Ketika Anda memilih notebook baru, Anda memilih nama notebook dan itu dibuat di folder notebook yang disimpan saat ini terbuka. 

**catatan**  
Saat membuat `.sql` file di macOS menggunakan TextEdit aplikasi, Anda mungkin mengalami masalah saat ekstensi tersembunyi tambahan ditambahkan ke file. Misalnya, file bernama `Test.sql` dibuat TextEdit mungkin akan disimpan sebagai file`Test.sql.rtf`. Editor kueri v2 tidak mendukung file dengan `.rtf` ekstensi. Namun, jika Anda membuat `.sql` file menggunakan TextEdit, dan menyimpannya sebagai file teks biasa, file tersebut memiliki `.txt` ekstensi tersembunyi tambahan. Misalnya, file bernama `Text.sql` mungkin disimpan sebagai`Text.sql.txt`. Tidak seperti `.rtf` ekstensi, editor kueri v2 mendukung file dengan `.txt` ekstensi, sehingga `Text.sql.txt` didukung saat mengimpor kueri ke notebook.

Untuk demo notebook, tonton video berikut. 

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/GNahyu7j98M/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/GNahyu7j98M)


# Menanyakan AWS Glue Data Catalog
<a name="query-editor-v2-glue"></a>

Anda dapat menggunakan editor kueri v2 untuk menanyakan data yang dikatalogkan di katalog Anda AWS Glue Data Catalog dengan menggunakan perintah SQL tertentu dan memberikan izin yang diuraikan di bagian ini. Secara default, terdaftar sebagai editor kueri v2 database bernama`awsdatacatalog`. AWS Glue Data Catalog Menanyakan tidak AWS Glue Data Catalog tersedia di semua Amazon Wilayah AWS Redshift. Gunakan perintah SHOW untuk menentukan apakah kemampuan ini tersedia. Untuk informasi lebih lanjut tentang AWS Glue, lihat [Apa itu AWS Glue?](https://docs.aws.amazon.com/glue/latest/dg/what-is-glue.html) di *Panduan AWS Glue Pengembang*.

**catatan**  
Query hanya AWS Glue Data Catalog didukung di cluster tipe node Amazon RA3 Redshift dan Amazon Redshift Serverless.

Anda dapat mengonfigurasi gudang data dan melihat objek AWS Glue database yang dikatalogkan menggunakan perintah SQL berikut:
+ SHOW - untuk menampilkan `awsdatacatalog` apakah dipasang untuk gudang data yang saat ini terhubung. Misalnya, untuk menampilkan nilai `data_catalog_auto_mount` parameter, jalankan:

  ```
  SHOW data_catalog_auto_mount;
  ```

  Untuk informasi selengkapnya, lihat [TAMPILKAN](https://docs.aws.amazon.com/redshift/latest/dg/r_SHOW.html) di Panduan *Pengembang Database Amazon Redshift*.
+ ALTER SYSTEM — untuk mengubah konfigurasi tingkat sistem. `data_catalog_auto_mount` Misalnya, untuk mengubah nilai `data_catalog_auto_mount` parameter menjadi`on`, jalankan:

  ```
  ALTER SYSTEM SET data_catalog_auto_mount = on;
  ```

  Perubahan akan berlaku ketika klaster yang disediakan di-boot ulang atau grup kerja tanpa server secara otomatis dijeda dan dilanjutkan. Untuk informasi selengkapnya, lihat [MENGUBAH SISTEM di Panduan](https://docs.aws.amazon.com/redshift/latest/dg/r_ALTER_SYSTEM.html) Pengembang *Database Amazon Redshift*.
+ TAMPILKAN SKEMA - menunjukkan daftar skema. Skema dalam database bernama `awsdatacatalog` mewakili database yang dikatalogkan AWS Glue dalam. AWS Glue Data Catalog Misalnya, untuk menampilkan skema ini, jalankan:

  ```
  SHOW SCHEMAS FROM DATABASE awsdatacatalog;
  ```

  Untuk informasi selengkapnya, lihat [TAMPILKAN SKEMA](https://docs.aws.amazon.com/redshift/latest/dg/r_SHOW_SCHEMAS.html) di Panduan Pengembang *Database Amazon Redshift*.
+ TAMPILKAN TABEL - menunjukkan daftar tabel dalam skema. Misalnya, untuk menampilkan tabel dalam AWS Glue Data Catalog database bernama `awsdatacatalog` yang sedang `myglue` dijalankan skema:

  ```
  SHOW TABLES FROM SCHEMA awsdatacatalog.myschema;
  ```

  Untuk informasi selengkapnya, lihat [TAMPILKAN TABEL](https://docs.aws.amazon.com/redshift/latest/dg/r_SHOW_TABLES.html) di Panduan *Pengembang Database Amazon Redshift*.
+ TAMPILKAN KOLOM - menunjukkan daftar kolom dalam tabel. Misalnya, untuk menampilkan kolom dalam AWS Glue Data Catalog database bernama `awsdatacatalog` yang berada dalam skema `myglue` dan tabel `mytable` berjalan:

  ```
  SHOW COLUMNS FROM TABLE awsdatacatalog.myglue.mytable;
  ```

  Untuk informasi selengkapnya, lihat [TAMPILKAN KOLOM](https://docs.aws.amazon.com/redshift/latest/dg/r_SHOW_COLUMNS.html) di Panduan *Pengembang Database Amazon Redshift*.

**Untuk memberikan izin kepada pengguna atau peran IAM Anda untuk menanyakan, AWS Glue Data Catalog**

1. **Di panel tampilan pohon, sambungkan ke database awal di klaster yang disediakan atau grup kerja tanpa server menggunakan metode autentikasi nama pengguna dan kata sandi Database.** Misalnya, sambungkan ke `dev` database menggunakan pengguna admin dan kata sandi yang Anda gunakan saat membuat klaster atau grup kerja.

1. Di tab editor, jalankan pernyataan SQL berikut untuk memberikan akses pengguna IAM ke file. AWS Glue Data Catalog

   ```
   GRANT USAGE ON DATABASE awsdatacatalog to "IAM:myIAMUser"
   ```

   Di *IAM:myIAMUser* mana pengguna IAM yang ingin Anda berikan hak istimewa penggunaan ke. AWS Glue Data Catalog Atau, Anda dapat memberikan hak istimewa penggunaan *IAMR:myIAMRole* untuk peran IAM.

1. Di panel tampilan pohon, edit atau hapus sambungan ke klaster atau grup kerja yang sebelumnya Anda buat. Connect ke cluster atau workgroup Anda dengan salah satu cara berikut:
   + Untuk mengakses `awsdatacatalog` database dari cluster, Anda harus menggunakan metode otentikasi **Kredensial sementara menggunakan identitas IAM Anda**. Untuk informasi selengkapnya tentang metode otentikasi ini, lihat[Menghubungkan ke database Amazon Redshift](query-editor-v2-connecting.md). Administrator editor kueri v2 Anda mungkin perlu mengonfigurasi **pengaturan Akun** untuk akun untuk menampilkan metode otentikasi ini di jendela koneksi.
   + Untuk mengakses `awsdatacatalog` database dari workgroup, Anda harus menggunakan metode otentikasi Pengguna **Federasi**. Untuk informasi selengkapnya tentang metode otentikasi ini, lihat[Menghubungkan ke database Amazon Redshift](query-editor-v2-connecting.md).

1. Dengan hak istimewa yang diberikan, Anda dapat menggunakan identitas IAM Anda untuk menjalankan SQL terhadap Anda. AWS Glue Data Catalog

Setelah menghubungkan, Anda dapat menggunakan editor kueri v2 untuk menanyakan data yang dikatalogkan. AWS Glue Data Catalog Pada panel tampilan pohon editor kueri v2, pilih cluster atau workgroup dan database. `awsdatacatalog` Di panel editor atau buku catatan, konfirmasikan klaster atau grup kerja yang benar dipilih. Basis data yang dipilih harus menjadi basis data Amazon Redshift awal seperti. `dev` Untuk informasi tentang membuat kueri, lihat [Membuat kueri dengan Amazon Redshift](query-editor-v2-query-run.md) dan. [Notebook di Amazon RedshiftNotebook](query-editor-v2-notebooks.md) Nama database `awsdatacatalog` dicadangkan untuk referensi database Katalog Data eksternal di akun Anda. Query terhadap `awsdatacatalog` database hanya bisa read-only. Gunakan notasi tiga bagian untuk mereferensikan tabel dalam pernyataan SELECT Anda. Di mana bagian pertama adalah nama database, bagian kedua adalah nama AWS Glue database, dan bagian ketiga adalah nama AWS Glue tabel.

```
SELECT * FROM awsdatacatalog.<aws-glue-db-name>.<aws-glue-table-name>;
```

Anda dapat melakukan berbagai skenario yang membaca AWS Glue Data Catalog data dan mengisi tabel Amazon Redshift.

Contoh SQL berikut bergabung dengan dua tabel yang didefinisikan dalam. AWS Glue

```
SELECT pn.emp_id, alias, role, project_name 
FROM "awsdatacatalog"."empl_db"."project_name_table" pn, 
"awsdatacatalog"."empl_db"."project_alias_table" pa
WHERE pn.emp_id = pa.emp_id;
```

Contoh SQL berikut membuat tabel Amazon Redshift dan mengisinya dengan data dari gabungan dua tabel. AWS Glue 

```
CREATE TABLE dev.public.glue AS
SELECT pn.emp_id, alias, role, project_name 
FROM "awsdatacatalog"."empl_db"."project_name_table" pn, 
"awsdatacatalog"."empl_db"."project_alias_table" pa
WHERE pn.emp_id = pa.emp_id;
```

## Menanyakan tabel Amazon S3 (pratinjau)
<a name="query-editor-v2-glue-s3-tables"></a>

Anda dapat menggunakan editor kueri v2 untuk menanyakan data yang disimpan di katalog Amazon S3table yang dipasang ke file. AWS Glue Data Catalog Katalog tabel Amazon S3 dipasang ke saat pembuatan, dan secara otomatis muncul sebagai database eksternal AWS Glue Data Catalog pada semua cluster yang disediakan dan grup kerja tanpa server yang sama di bawah akun yang sama. Wilayah AWS Untuk informasi selengkapnya tentang mengakses tabel Amazon S3 menggunakan Amazon Redshift, lihat Mengakses tabel [Amazon S3 dengan Amazon Redshift di Panduan Pengguna Layanan Penyimpanan Sederhana Amazon](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-integrating-redshift.html).

# Meminta data lake
<a name="query-editor-v2-querying-data-lake"></a>

Anda dapat meminta data di danau data Amazon S3 dengan mengikuti serangkaian tugas dalam tutorial ini. Pertama, Anda membuat skema eksternal untuk referensi database eksternal di. [AWS Glue Data Catalog](https://docs.aws.amazon.com/glue/latest/dg/components-overview.html#data-catalog-intro) Kemudian, Anda dapat meminta data di danau data Amazon S3.

## Demo: Kueri danau data
<a name="query-editor-v2-example-data-lake-demo"></a>

Untuk mempelajari cara menanyakan data lake, tonton video berikut.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/-pyy0qNmEKo/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/-pyy0qNmEKo)


## Prasyarat
<a name="query-editor-v2-querying-data-lake-prerequisites"></a>

Sebelum Anda bekerja dengan data lake Anda di editor kueri v2, konfirmasikan bahwa hal berikut telah disiapkan di lingkungan Amazon Redshift Anda:
+ Merayapi data Amazon S3 Anda AWS Glue menggunakan dan mengaktifkan Katalog Data Anda. AWS Lake Formation
+ Buat peran IAM untuk Amazon Redshift menggunakan Katalog Data AWS Glue yang diaktifkan untuk. AWS Lake Formation Untuk detail tentang prosedur ini, lihat [Untuk membuat peran IAM untuk Amazon Redshift menggunakan AWS Glue Data Catalog enabled](https://docs.aws.amazon.com/redshift/latest/dg/c-getting-started-using-spectrum-create-role.html#spectrum-get-stared-create-role-lake-formation) for. AWS Lake Formation Untuk informasi lebih lanjut tentang penggunaan Redshift Spectrum dan Lake Formation, lihat Menggunakan [Redshift](https://docs.aws.amazon.com/redshift/latest/dg/spectrum-lake-formation.html) Spectrum dengan. AWS Lake Formation
+ Berikan izin SELECT pada tabel untuk kueri di database Lake Formation. Untuk detail tentang prosedur ini, lihat [Untuk memberikan izin SELECT pada tabel untuk kueri di database Lake Formation](https://docs.aws.amazon.com/redshift/latest/dg/c-getting-started-using-spectrum-create-role.html#spectrum-get-started-grant-lake-formation-table).

  Anda dapat memverifikasi di konsol Lake Formation (https://console.aws.amazon.com/lakeformation/), bagian **Izin**, halaman **izin data lake**, bahwa peran IAM, AWS Glue database, dan tabel memiliki izin yang tepat.
+ Konfirmasikan bahwa pengguna Anda yang terhubung memiliki izin untuk membuat skema di database Amazon Redshift dan mengakses data di danau data Anda. Saat Anda terhubung ke database di editor kueri v2, Anda memilih metode otentikasi yang menyertakan kredensil, yang dapat berupa pengguna database atau pengguna IAM. Pengguna yang terhubung harus memiliki izin dan hak istimewa database yang tepat, seperti file. `superuser` `admin`Pengguna Amazon Redshift yang membuat cluster atau workgroup memiliki `superuser` hak istimewa dan dapat membuat skema dan mengelola database Redshift. Untuk informasi selengkapnya tentang menghubungkan ke database dengan editor kueri v2, lihat[Menghubungkan ke database Amazon Redshift](query-editor-v2-connecting.md).

## Membuat skema eksternal
<a name="query-editor-v2-create-external-schema"></a>

Untuk melakukan kueri data di danau data Amazon S3, buat skema eksternal terlebih dahulu. Skema eksternal mereferensikan database eksternal di file. [AWS Glue Data Catalog](https://docs.aws.amazon.com/glue/latest/dg/components-overview.html#data-catalog-intro)

1. Dalam tampilan **Editor editor** kueri v2, pilih ![\[Create\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-add.png) **Buat**, lalu pilih **Skema**.

1. Masukkan nama **Skema**.

1. Untuk **tipe Skema**, pilih **Eksternal**.

1. Dalam detail **Katalog Data**, **Wilayah** default ke tempat database Redshift Wilayah AWS Anda berada.

1. Pilih **AWS Glue database** yang akan dipetakan skema eksternal dan yang berisi referensi ke AWS Glue tabel.

1. Pilih **peran IAM** untuk Amazon Redshift yang memiliki izin yang diperlukan untuk menanyakan data di Amazon S3.

1. Secara opsional, pilih **peran IAM** yang memiliki izin ke Katalog Data.

1. Pilih **Buat skema**.

   Skema muncul di bawah database Anda di panel tampilan pohon.

Saat membuat skema, jika Anda menerima kesalahan izin ditolak untuk database Anda, periksa apakah pengguna yang terhubung memiliki hak istimewa database untuk membuat skema.

## Menanyakan data di danau data Amazon S3 Anda
<a name="query-editor-v2-query-data-lake"></a>

Anda menggunakan skema yang Anda buat dalam prosedur sebelumnya. 

1. Di panel tampilan pohon, pilih skema.

1. Untuk melihat definisi tabel, pilih tabel. Kolom tabel dan tipe data ditampilkan.

1. Untuk menanyakan tabel, pilih tabel dan di menu konteks (klik kanan), **pilih Pilih tabel** untuk menghasilkan kueri.

1. Jalankan kueri di **Editor**.

   Contoh SQL berikut dihasilkan oleh query editor v2 untuk query semua baris dalam AWS Glue tabel bernama`flightscsv`. Kolom dan baris yang ditunjukkan dalam output dipotong untuk kesederhanaan.

   ```
   SELECT * FROM "dev"."mydatalake_schema"."flightscsv";
                           
   year    quarter   month   dom  day_of_week   fl_date    unique_carrier  airline_id   carrier   tail_num   fl_num		
   2016    4         10      19   3             10/19/16   OO              20304        OO         N753SK    3086	 
   2016    4         10      19   3             10/19/16   OO              20304        OO         N753SK    3086	
   2016    4         10      19   3             10/19/16   OO              20304        OO         N778SK    3087		
   2016	4         10      19   3             10/19/16   OO              20304        OO         N778SK    3087	
   ...
   ```

# Datashares
<a name="query-editor-v2-datashare-using"></a>

Anda dapat membuat datashare sehingga pengguna di cluster lain dapat melakukan query data. Cluster yang berisi data yang ingin Anda bagikan disebut cluster *produser*. Anda membuat datashare di cluster produser untuk objek database yang ingin Anda bagikan. Anda dapat berbagi skema, tabel, tampilan, dan fungsi yang ditentukan pengguna SQL (). UDFs Cluster yang ingin Anda bagikan datanya disebut cluster *konsumen*. Pada cluster konsumen, Anda membuat database dari datashare. Kemudian, pengguna di cluster konsumen dapat melakukan query data. Untuk informasi selengkapnya, lihat [Memulai berbagi data](https://docs.aws.amazon.com/redshift/latest/dg/getting-started-datasharing.html) di Panduan *Pengembang Database Amazon Redshift*.

# Membuat datashares
<a name="query-editor-v2-create-datashare"></a>

Anda membuat datashare pada cluster yang ingin Anda gunakan sebagai cluster produser. Untuk mempelajari lebih lanjut tentang pertimbangan data, lihat [Pertimbangan berbagi data di Amazon Redshift di](https://docs.aws.amazon.com/redshift/latest/dg/datashare-considerations.html) Panduan Pengembang Database Amazon *Redshift*. 

1. Pilih database pada cluster produser yang ingin Anda gunakan.

1. Buat datashare. Contoh:

   ```
   create datashare mysource;
   ```

1. Tetapkan izin pada datashare. Contoh:

   ```
   grant alter, share on datashare mysource to admin;
   ```

1. Tetapkan izin pada objek database yang ingin Anda bagikan. Contoh:

   ```
   alter datashare mysource add schema public;
   ```

   ```
   alter datashare mysource add table public.event;
   ```

1. Tetapkan izin pada namespace cluster konsumen untuk mengakses datashare. Contoh:

   ```
   grant usage on datashare mysource to namespace '2b12345-1234-5678-9012-bb1234567890';
   ```

# Menampilkan datashares
<a name="query-editor-v2-show-datashare"></a>

Anda dapat menampilkan datashares yang telah Anda buat di cluster produser. 

1. Pilih cluster produser.

1. Tampilkan datashares. Contoh:

   ```
   show datashares;
   ```

   ```
   share_name	share_owner	source_database		consumer_database	share_type	createdate	is_publicaccessible	share_acl	producer_account	producer_namespace
   test_datashare	100		db_producer		NULL			OUTBOUND	2/15/2022		FALSE		admin		123456789012		p1234567-8765-4321-p10987654321
   ```

# Membuat database konsumen
<a name="query-editor-v2-datashare-consumer"></a>

Pada cluster konsumen, Anda membuat database dari datashare. Langkah-langkah ini menjelaskan cara berbagi data antara dua cluster di akun yang sama. Untuk informasi tentang berbagi data di seluruh AWS akun, lihat [Berbagi data di seluruh AWS akun](https://docs.aws.amazon.com/redshift/latest/dg/across-account.html) di Panduan *Pengembang Database Amazon Redshift*.

Anda dapat menggunakan perintah SQL atau panel tampilan pohon editor kueri v2 untuk membuat database.

**Untuk menggunakan SQL**

1. Buat database dari datashare untuk akun Anda dan namespace klaster produser. Contoh:

   ```
   create database share_db from datashare mysource of account '123456789012' namespace 'p1234567-8765-4321-p10987654321'; 
   ```

1. Tetapkan izin sehingga pengguna dapat mengakses database dan skema. Contoh:

   ```
   grant usage on database share_db to usernames;
   ```

   ```
   grant usage on schema public to usernames;
   ```

**Untuk menggunakan panel tampilan pohon editor kueri v2**

1. Pilih ![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-add.png) **Buat**, lalu pilih **Database**.

1. Masukkan **nama Database**.

1. (Opsional) Pilih **Pengguna dan grup**, dan pilih **pengguna Database**.

1. Pilih **Buat menggunakan datashare**.

1. Pilih datashare.

1. Pilih **Buat basis data**.

   Database ![\[datashare\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-datashare.png) **datashare** baru ditampilkan di panel tampilan pohon editor kueri v2.

1. Tetapkan izin sehingga pengguna dapat mengakses database dan skema. Contoh:

   ```
   grant usage on database share_db to usernames;
   ```

   ```
   grant usage on schema public to usernames;
   ```

# Menanyakan objek datashare
<a name="query-editor-v2-query-datashare"></a>

Pada cluster konsumen, Anda dapat menanyakan objek datashare menggunakan nama objek yang sepenuhnya memenuhi syarat yang diekspresikan dengan notasi tiga bagian: database, skema, dan nama objek. 

1. Di panel tampilan pohon editor kueri v2, pilih skema.

1. Untuk melihat definisi tabel, pilih tabel.

   Kolom tabel dan tipe data ditampilkan.

1. Untuk menanyakan tabel, pilih tabel dan gunakan menu konteks (klik kanan) untuk memilih **Pilih tabel**.

1. Tabel kueri menggunakan perintah SELECT. Contoh:

   ```
   select top 10 * from test_db.public.event;
   ```

# Kueri terjadwal dengan editor kueri v2
<a name="query-editor-v2-schedule-query"></a>

Dengan editor kueri Amazon Redshift v2, Anda dapat mengotomatiskan kueri SQL agar berjalan sesuai jadwal. Kueri terjadwal adalah pernyataan SQL yang berjalan secara otomatis pada waktu atau interval tertentu, memungkinkan Anda mengelola operasi data berulang dan tugas analitik secara efisien. Anda mungkin ingin menjadwalkan kueri jika ingin merampingkan pemrosesan batch, membuat laporan rutin, atau memelihara jalur data dalam lingkungan Amazon Redshift mereka. 

Kueri terjadwal memfasilitasi otomatisasi alur kerja ekstrak, transformasi, dan pemuatan (ETL), menyegarkan dasbor dengan up-to-date wawasan, dan mengoperasionalkan berbagai rutinitas manajemen data. Halaman-halaman berikut merinci proses pembuatan, konfigurasi, dan pengelolaan kueri terjadwal untuk mengoptimalkan beban kerja Amazon Redshift Anda.

# Membuat jadwal kueri dengan editor kueri v2
<a name="query-editor-v2-schedule-query-create"></a>

Anda dapat membuat jadwal untuk menjalankan pernyataan SQL dengan editor kueri Amazon Redshift v2. Anda membuat jadwal untuk menjalankan pernyataan SQL Anda pada interval waktu yang sesuai dengan kebutuhan bisnis Anda. Saat kueri terjadwal berjalan, kueri dimulai oleh Amazon EventBridge dan menggunakan Amazon Redshift Data API.

**Untuk membuat jadwal untuk menjalankan pernyataan SQL**

1. Pada ![\[Editor\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-align-left.png) tampilan **Editor**, pilih ![\[Schedule\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-calendar.png) **Jadwal** untuk membuat jadwal untuk menjalankan pernyataan SQL.

1. Ketika Anda menentukan jadwal, Anda memberikan informasi berikut.
   + Peran IAM yang mengasumsikan izin yang diperlukan untuk menjalankan kueri. Peran IAM ini juga dilampirkan ke cluster atau workgroup Anda.
   + Nilai otentikasi untuk salah satu AWS Secrets Manager atau kredensi sementara untuk mengotorisasi akses klaster atau grup kerja Anda. Metode otentikasi ini didukung oleh API Data. Untuk informasi selengkapnya, lihat [Mengautentikasi kueri terjadwal](query-editor-v2-schedule-query-authentication.md).
   + Cluster atau workgroup tempat database Anda berada.
   + Nama database yang berisi data yang akan ditanyakan.
   + Nama kueri terjadwal dan deskripsinya. Editor kueri v2 mengawali nama kueri terjadwal yang Anda berikan dengan "QS2-”. Editor kueri v1 mengawali nama kueri terjadwal dengan “QS-”.
   + Pernyataan SQL yang akan dijalankan pada jadwal.
   + Frekuensi jadwal dan opsi pengulangan atau nilai diformat cron yang menentukan jadwal. Untuk informasi selengkapnya, lihat [Ekspresi Cron di](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html#CronExpressions) *Panduan Pengguna CloudWatch Acara Amazon*.
   + Secara opsional, Anda dapat mengaktifkan notifikasi Amazon SNS standar untuk memantau kueri terjadwal. Anda mungkin perlu mengonfirmasi alamat email yang Anda berikan ke notifikasi Amazon SNS. Periksa email Anda untuk tautan untuk mengonfirmasi alamat email untuk notifikasi Amazon SNS. Untuk informasi selengkapnya, lihat [Pemberitahuan email](https://docs.aws.amazon.com/sns/latest/dg/sns-email-notifications.html) di *Panduan Pengembang Layanan Pemberitahuan Sederhana Amazon*. Jika kueri Anda sedang dijalankan tetapi Anda tidak melihat pesan yang dipublikasikan di topik SNS Anda, lihat [Aturan saya berjalan, tetapi saya tidak melihat pesan apa pun yang dipublikasikan ke topik Amazon SNS saya](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-troubleshooting.html#eb-no-messages-published-sns) di Panduan Pengguna * EventBridge Amazon*.

1. Pilih **Jadwalkan kueri** untuk menyimpan dan mengaktifkan jadwal dan menambahkan jadwal ke daftar kueri dalam tampilan **Kueri terjadwal**.

![\[Scheduled queries\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/qev2-calendar.png)Tampilan **kueri terjadwal** mencantumkan semua kueri terjadwal untuk klaster dan grup kerja Anda. Dengan tampilan ini, Anda dapat menampilkan detail kueri jadwal, mengaktifkan atau menonaktifkan jadwal, mengedit jadwal, dan menghapus kueri terjadwal. Saat melihat detail kueri, Anda juga dapat melihat riwayat menjalankan kueri dengan jadwal.

**catatan**  
Proses kueri jadwal hanya tersedia di daftar **riwayat Jadwal** selama 24 jam. Kueri yang berjalan pada jadwal tidak muncul di tampilan **riwayat Kueri** editor kueri v2.

## Demo penjadwalan kueri
<a name="query-editor-v2-schedule-query-demo"></a>

Untuk demo penjadwalan kueri, tonton video berikut. 

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/gTw0XUpO8sw/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/gTw0XUpO8sw)


# Menyiapkan izin untuk menjadwalkan kueri
<a name="query-editor-v2-schedule-query-permissions"></a>

Untuk menjadwalkan kueri, pengguna AWS Identity and Access Management (IAM) yang menentukan jadwal dan peran IAM yang terkait dengan jadwal harus dikonfigurasi dengan izin IAM untuk menggunakan Amazon dan Amazon EventBridge Redshift Data API. Untuk menerima email dari kueri terjadwal, notifikasi Amazon SNS yang Anda tentukan secara opsional harus dikonfigurasi juga.

Berikut ini menjelaskan tugas untuk menggunakan kebijakan AWS terkelola untuk memberikan izin, tetapi tergantung pada lingkungan Anda, Anda mungkin ingin mengurangi izin yang diizinkan.

Untuk pengguna IAM yang masuk ke editor kueri v2, edit pengguna IAM menggunakan konsol IAM (). [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)
+ Selain izin untuk menjalankan operasi Amazon Redshift dan editor kueri v2, lampirkan `AmazonEventBridgeFullAccess` kebijakan `AmazonRedshiftDataFullAccess` AWS dan terkelola ke pengguna IAM. 
+ Atau, tetapkan izin ke peran dan tetapkan peran tersebut kepada pengguna.

  Lampirkan kebijakan yang mengizinkan `sts:AssumeRole` izin ke ARN sumber daya peran IAM yang Anda tentukan saat Anda menentukan kueri terjadwal. Untuk informasi selengkapnya tentang mengambil peran, lihat [Memberikan izin pengguna untuk beralih peran](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_permissions-to-switch.html) di Panduan Pengguna *IAM*.

  Contoh berikut menunjukkan kebijakan izin yang mengasumsikan peran IAM `myRedshiftRole` dalam akun. `123456789012` Peran IAM juga `myRedshiftRole` merupakan peran IAM yang dilampirkan ke cluster atau workgroup tempat kueri terjadwal berjalan. 

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Sid": "AssumeIAMRole",
              "Effect": "Allow",
              "Action": "sts:AssumeRole",
              "Resource": [
                  "arn:aws:iam::123456789012:role/myRedshiftRole"
              ]
          }
      ]
  }
  ```

------

  Perbarui kebijakan kepercayaan peran IAM yang digunakan untuk menjadwalkan kueri agar pengguna IAM mengasumsikan itu.

  ```
  {
              "Sid": "AssumeRole",
              "Effect": "Allow",
              "Principal": {
                  "AWS": "arn:aws:iam::123456789012:user/myIAMusername"
              },
              "Action": "sts:AssumeRole"
          }
      ]
  }
  ```

Untuk peran IAM yang Anda tentukan agar kueri terjadwal dijalankan, edit peran IAM menggunakan konsol IAM (). [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)
+ Lampirkan kebijakan `AmazonRedshiftDataFullAccess` dan `AmazonEventBridgeFullAccess` AWS terkelola ke peran IAM. Kebijakan `AmazonRedshiftDataFullAccess` terkelola hanya mengizinkan `redshift-serverless:GetCredentials` izin untuk grup kerja Redshift Tanpa Server yang ditandai dengan kunci. `RedshiftDataFullAccess`

# Mengautentikasi kueri terjadwal
<a name="query-editor-v2-schedule-query-authentication"></a>

Saat menjadwalkan kueri, Anda menggunakan salah satu metode otentikasi berikut saat SQL berjalan. Setiap metode memerlukan kombinasi input yang berbeda pada editor kueri v2. Metode otentikasi ini didukung oleh Data API yang digunakan untuk menjalankan pernyataan SQL Anda.

Pengguna database atau peran yang digunakan untuk menjalankan query harus memiliki hak istimewa database yang diperlukan. Misalnya, untuk memberikan `IAMR:MyRedshiftQEv2Scheduler` hak istimewa ke tabel`mytable`, jalankan perintah SQL berikut.

```
GRANT all ON TABLE mytable TO "IAMR:MyRedshiftQEv2Scheduler";
```

Untuk melihat daftar pengguna database di cluster atau workgroup Anda, kueri tampilan `PG_USER_INFO` sistem.

**catatan**  
 Setiap grup kerja Redshift Tanpa Server yang Anda jadwalkan kueri akan ditandai dengan kuncinya. `RedshiftDataFullAccess` Untuk informasi selengkapnya, lihat [Mengotorisasi akses ke API Data Amazon Redshift](data-api-access.md).  
Sebagai alternatif untuk menandai workgroup, Anda dapat menambahkan kebijakan inline ke peran IAM (yang ditentukan dengan jadwal) yang memungkinkan. `redshift-serverless:GetCredentials` Contoh:  

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "UseTemporaryCredentialsForAllServerlessWorkgroups",
            "Effect": "Allow",
            "Action": "redshift-serverless:GetCredentials",
            "Resource": [
                "arn:aws:redshift-serverless:*:*:workgroup/*"
            ]
        }
    ]
}
```

**AWS Secrets Manager**  
Dengan metode ini, berikan nilai rahasia untuk **rahasia-arn yang disimpan** di. AWS Secrets Manager Rahasia ini berisi kredensil untuk terhubung ke database Anda. Anda mungkin telah membuat rahasia dengan kredensil yang tepat saat membuat klaster atau grup kerja. Rahasianya harus ditandai dengan kunci `RedshiftDataFullAccess`. Jika kunci tag belum ada, gunakan AWS Secrets Manager konsol untuk menambahkannya. Untuk informasi tentang membuat rahasia, lihat[Membuat rahasia untuk kredensi koneksi database](redshift-secrets-manager-integration-create.md).  
Untuk informasi selengkapnya tentang izin minimum, lihat [Membuat dan Mengelola Rahasia dengan AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/managing-secrets.html) di *Panduan AWS Secrets Manager Pengguna*. 

**Kredensial sementara**  
Dengan metode ini, berikan **nama Database** dan nilai **pengguna Database** Anda saat menghubungkan ke database dalam sebuah cluster. Anda hanya perlu memberikan **nama Database** Anda saat menghubungkan ke database di workgroup.  
Saat menyambung ke klaster, `AmazonRedshiftDataFullAccess` kebijakan tersebut mengizinkan `redshift_data_api_user` izin bernama pengguna database`redshift:GetClusterCredentials`. Jika Anda ingin menggunakan pengguna database yang berbeda untuk menjalankan pernyataan SQL, tambahkan kebijakan ke peran IAM yang dilampirkan ke cluster Anda untuk mengizinkan. `redshift:GetClusterCredentials` Contoh kebijakan berikut memungkinkan pengguna database `awsuser` dan`myuser`.     
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "UseTemporaryCredentialsForAllDbUsers",
            "Effect": "Allow",
            "Action": "redshift:GetClusterCredentials",
            "Resource": [
                "arn:aws:redshift:*:*:dbuser:*/awsuser",
                "arn:aws:redshift:*:*:dbuser:*/myuser"
            ]
        }
    ]
}
```

# Menyiapkan izin untuk melihat riwayat kueri jadwal
<a name="query-editor-v2-schedule-query-view-history"></a>

Untuk memungkinkan pengguna melihat riwayat kueri jadwal, edit peran IAM (yang ditentukan dengan jadwal) **Hubungan kepercayaan** untuk menambahkan izin.

Berikut ini adalah contoh kebijakan kepercayaan dalam peran IAM yang memungkinkan pengguna IAM *myIAMusername* untuk melihat riwayat kueri jadwal. Alih-alih mengizinkan `sts:AssumeRole` izin pengguna IAM, Anda dapat memilih untuk mengizinkan peran IAM izin ini.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "redshift.amazonaws.com",
                    "redshift-serverless.amazonaws.com"
                ]
            },
            "Action": "sts:AssumeRole"
        },
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "events.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        },
        {
            "Sid": "AssumeRole",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::123456789012:user/myIAMusername"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

# Memantau kueri terjadwal
<a name="query-editor-v2-schedule-query-sns"></a>

**Untuk topik Amazon SNS yang Anda tentukan untuk mengirim notifikasi email, buat topik Amazon SNS menggunakan editor kueri v2 dengan menavigasi ke bagian pemberitahuan **SNS****, Aktifkan pemantauan,** dan buat topik dengan topik Buat SNS.** Editor kueri v2 membuat topik Amazon SNS dan menambahkan prinsip layanan ke kebijakan akses untuk Amazon. EventBridge Berikut ini adalah contoh **Kebijakan akses** yang dibuat dalam topik Amazon SNS. Dalam contoh, topik Wilayah AWS *us-west-2*, Akun AWS *123456789012*, dan Amazon SNS *select-version-pdx-testunload* digunakan.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Id": "__default_policy_ID",
  "Statement": [
    {
      "Sid": "Allow_Publish_Events",
      "Effect": "Allow",
      "Principal": {
        "Service": "events.amazonaws.com"
      },
      "Action": "sns:Publish",
      "Resource": "arn:aws:sns:us-west-2:123456789012:select-version-pdx-testunload"
    }
  ]
}
```

------

Saat kueri terjadwal berjalan, Amazon SNS mengirimkan email AWS notifikasi. Contoh berikut menunjukkan email yang dikirim *myemail@example.com* untuk kueri terjadwal *QS2-may25a* yang berjalan Akun AWS *123456789012* menggunakan Wilayah AWS *eu-north-1* topik notifikasi Amazon SNS. *may25a-SNS*

```
{"version":"0","id":"8e4323ec-5258-7138-181b-91290e30ff9b","detail-type":"Scheduled Event","source":"aws.events","account":"123456789012","time":"2023-05-25T15:22:00Z",
                    "region":"eu-north-1","resources":["arn:aws:events:eu-north-1:123456789012:rule/QS2-may25a"],"detail":{}}

--
If you wish to stop receiving notifications from this topic, please click or visit the link below to unsubscribe:
https://sns.eu-north-1.amazonaws.com/unsubscribe.html?SubscriptionArn=arn:aws:sns:eu-north-1:123456789012:may25a-SNS:0c1a3d05-39c2-4507-bc3d-47250513d7b0&Endpoint=myemail@example.com

Please do not reply directly to this email. If you have any questions or comments regarding this email, please contact us at https://aws.amazon.com/support
```

# Pemecahan masalah pengaturan penjadwalan kueri
<a name="query-editor-v2-schedule-query-troubleshooting"></a>

Pertimbangkan hal berikut jika Anda memiliki masalah dalam menjadwalkan kueri.

**Kueri tidak berjalan**  
Periksa apakah peran IAM yang digunakan dalam jadwal memiliki izin untuk mendapatkan kredensil cluster sementara. Izin untuk cluster yang disediakan adalah. `redshift:GetClusterCredentialsWithIAM` Izin untuk grup kerja Redshift Serverless adalah. `redshift-serverless:GetCredentials`

**Riwayat terjadwal tidak ditampilkan**  
Pengguna IAM atau peran IAM yang digunakan untuk masuk ke AWS konsol tidak ditambahkan ke kebijakan kepercayaan peran IAM yang digunakan untuk menjadwalkan kueri.  
Saat menggunakan AWS Secrets Manager kueri terjadwal untuk terhubung, konfirmasikan rahasia ditandai dengan kunci`RedshiftDataFullAccess`.  
Jika kueri terjadwal menggunakan AWS Secrets Manager koneksi, peran IAM yang digunakan untuk menjadwalkan kueri harus memiliki kebijakan `SecretsManagerReadWrite` terkelola yang setara dengan peran tersebut.

**Status riwayat kueri adalah `Failed`**  
Lihat tampilan sistem SYS\$1QUERY\$1HISTORY untuk detail tentang mengapa kueri gagal. Masalah umum adalah bahwa pengguna database atau peran yang digunakan untuk menjalankan kueri mungkin tidak memiliki hak istimewa yang diperlukan untuk menjalankan SQL. Untuk informasi selengkapnya, lihat [Mengautentikasi kueri terjadwal](query-editor-v2-schedule-query-authentication.md).  
SQL berikut menanyakan tampilan SYS\$1QUERY\$1HISTORY untuk mengembalikan kueri yang gagal.  

```
SELECT user_id, query_id, transaction_id, session_id, database_name, query_type, status, error_message, query_text 
FROM sys_query_history
WHERE status = 'failed';
```
Untuk mengetahui detail kueri terjadwal tertentu yang gagal, lihat[Melihat hasil kueri terjadwal dengan AWS CloudShell](query-editor-v2-schedule-query-troubleshooting-cloudshell.md).

# Melihat hasil kueri terjadwal dengan AWS CloudShell
<a name="query-editor-v2-schedule-query-troubleshooting-cloudshell"></a>

Anda dapat menggunakan AWS CloudShell untuk mengetahui detail tentang kueri jadwal. Anda harus memiliki izin yang tepat untuk menjalankan AWS CLI perintah yang ditunjukkan dalam prosedur berikut.

**Untuk melihat hasil kueri terjadwal**

1. Di AWS konsol, buka prompt AWS CloudShell perintah. Untuk informasi selengkapnya AWS CloudShell, lihat [Apa yang ada AWS CloudShell](https://docs.aws.amazon.com/cloudshell/latest/userguide/welcome.html) di *Panduan AWS CloudShell Pengguna*.

1. Asumsikan peran IAM dari kueri terjadwal. Untuk mengambil peran, temukan peran IAM yang terkait dengan kueri terjadwal di editor kueri v2 dan gunakan dalam AWS CLI perintah di AWS CloudShell. Misalnya, untuk peran `scheduler` masukkan AWS STS perintah untuk mengambil peran yang digunakan oleh kueri terjadwal.

   ```
   aws sts assume-role --role-arn "arn:aws:iam::123456789012:role/scheduler" --role-session-name "scheduler-test" 
   ```

   Kredensi yang dikembalikan mirip dengan yang berikut ini.

   ```
   "Credentials": {
   "AccessKeyId": "AKIAIOSFODNN7EXAMPLE",
   "SecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
   "SessionToken": "je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY...",        
   "Expiration": "2023-08-18T18:19:44+00:00"
   },
   "AssumedRoleUser": {
   "AssumedRoleId": "AROA35B2NH6WBTP7ONL4E:scheduler-test",
   "Arn": "arn:aws:sts::123456789012:assumed-role/scheduler/scheduler-test"
   }
   }
   ```

1. Buat variabel lingkungan dalam AWS CLI menggunakan kredensil yang ditampilkan dari asumsi peran IAM. Anda harus menggunakan token ini sebelum waktu kedaluwarsa. Misalnya, Anda memasukkan yang berikut ini AWS CloudShell.

   ```
   export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE
   export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
   export AWS_SESSION_TOKEN=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY...
   ```

1. Untuk melihat kesalahan kueri yang gagal, jalankan AWS CLI perintah untuk mendeskripsikan pernyataan. Id pernyataan SQL berasal dari **ID** yang ditampilkan di bagian **riwayat Jadwal** dari kueri terjadwal di editor kueri v2.

   ```
   aws redshift-data describe-statement --id 130d2620-05d2-439c-b7cf-815d9767f513
   ```

   Dalam contoh ini, SQL terjadwal `select * from users limit 100` menghasilkan kesalahan SQL bahwa `users` tabel tidak ada.

   ```
   {
   "CreatedAt": "2023-08-18T17:39:15.563000+00:00",
   "Duration": -1,
   "Error": "ERROR: relation \"users\" does not exist",
   "HasResultSet": false,
   "Id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
   "QueryString": "select * from users limit 100\n—RequestID=a1b2c3d4-5678-90ab-cdef-EXAMPLE22222; TraceID=1-633c5642-4039308d03f3a0ba53dbdf6f",
   "RedshiftPid": 1073766651,
   "RedshiftQueryId": 0,
   "ResultRows": -1,
   "ResultSize": -1,
   "Status": "FAILED",
   "UpdatedAt": "2023-08-18T17:39:16.116000+00:00",
   "WorkgroupName": "default"
   }
   ```

# Memvisualisasikan hasil kueri
<a name="query-editor-v2-charts"></a>

Setelah Anda menjalankan kueri dan tampilan hasil, Anda dapat mengaktifkan **Bagan** untuk menampilkan visualisasi grafis dari halaman hasil saat ini. Anda dapat menggunakan kontrol berikut untuk menentukan konten, struktur, dan tampilan bagan Anda:

![\[Plus sign icon representing an addition or new item action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/add-plus.png)Jejak  
Merupakan satu set tanda grafis terkait dalam bagan. Anda dapat menentukan beberapa jejak dalam bagan.

Tipe  
Anda dapat menentukan jenis jejak untuk mewakili data sebagai salah satu dari berikut ini:  
+ Bagan sebar untuk plot pencar atau bagan gelembung.
+ Bagan batang untuk mewakili kategori data dengan batang vertikal atau horizontal.
+ Bagan area untuk menentukan area yang diisi.
+ Histogram yang menggunakan bar untuk mewakili distribusi frekuensi.
+ Diagram lingkaran untuk representasi melingkar data di mana setiap irisan mewakili persentase dari keseluruhan.
+ Bagan Corong atau Area Corong untuk mewakili data melalui berbagai tahap proses.
+ Grafik OHLC (open-high-low-close) sering digunakan untuk data keuangan untuk mewakili nilai terbuka, tinggi, rendah, dan dekat sepanjang sumbu x, yang biasanya mewakili interval waktu.
+ Bagan kandil untuk mewakili rentang nilai untuk kategori di atas garis waktu.
+ Bagan air terjun untuk mewakili bagaimana nilai awal meningkat atau menurun melalui serangkaian nilai menengah. Nilai dapat mewakili interval waktu atau kategori.
+ Bagan garis untuk mewakili perubahan nilai dari waktu ke waktu.

Sumbu X  
Anda menentukan kolom tabel yang berisi nilai-nilai untuk plot sepanjang sumbu X. Kolom yang berisi nilai deskriptif biasanya mewakili data dimensi. Kolom yang berisi nilai kuantitatif biasanya mewakili data faktual.

Sumbu Y  
Anda menentukan kolom tabel yang berisi nilai-nilai untuk plot sepanjang sumbu Y. Kolom yang berisi nilai deskriptif biasanya mewakili data dimensi. Kolom yang berisi nilai kuantitatif biasanya mewakili data faktual.

Subplot  
Anda dapat menentukan presentasi tambahan dari data bagan.

Mengubah  
Anda dapat menentukan transformasi untuk memfilter data jejak. Anda menggunakan transformasi terpisah untuk menampilkan beberapa jejak dari satu jejak sumber. Anda menggunakan transformasi agregat untuk menyajikan jejak sebagai rata-rata atau minimum. Anda menggunakan transformasi semacam untuk mengurutkan jejak.

Penampilan umum  
Anda dapat mengatur default untuk warna latar belakang, warna margin, skala warna untuk merancang palet, gaya dan ukuran teks, gaya dan ukuran judul, dan bilah mode. Anda dapat menentukan interaksi untuk seret, klik, dan arahkan kursor. Anda dapat menentukan teks meta. Anda dapat menentukan tampilan default untuk jejak, sumbu, legenda, dan anotasi.

**Untuk membuat bagan**

1. Jalankan kueri dan dapatkan hasil.

1. Aktifkan **Bagan**.

1. Pilih **Trace** dan mulai memvisualisasikan data Anda.

1. Pilih gaya bagan dari salah satu dari berikut ini:
   + Scatter
   + Bar
   + Bidang
   + Histogram
   + Pie
   + Corong
   + Area Corong
   + OHLC () open-high-low-close
   + Candlestick
   + Air Terjun
   + Baris

1. Pilih **Gaya** untuk menyesuaikan tampilan, termasuk warna, sumbu, legenda, dan anotasi. Anda dapat menambahkan teks, bentuk, dan gambar.

1. Pilih **Anotasi** untuk menambahkan teks, bentuk, dan gambar.

1. Pilih **Segarkan** untuk memperbarui tampilan bagan. Pilih **Layar penuh** untuk memperluas tampilan bagan.

## Contoh: Buat diagram lingkaran untuk memvisualisasikan hasil kueri
<a name="query-editor-v2-example-pie-chart"></a>

Contoh berikut menggunakan tabel *Penjualan* dari database sampel. Untuk informasi selengkapnya, lihat [Contoh database](https://docs.aws.amazon.com/redshift/latest/dg/c_sampledb.html) di Panduan *Pengembang Database Amazon Redshift*. 

Berikut ini adalah query yang Anda jalankan untuk memberikan data untuk pie chart.

```
select top 5 eventname, count(salesid) totalorders, sum(pricepaid) totalsales 
from sales, event
where sales.eventid=event.eventid group by eventname
order by 3;
```

**Untuk membuat diagram lingkaran untuk acara teratas dengan total penjualan**

1. Jalankan kueri.

1. Di area hasil kueri, nyalakan **Bagan**.

1. Pilih **Jejak**.

1. Untuk **Jenis**, pilih **Pie**.

1. Untuk **Nilai**, pilih *totalsales*.

1. Untuk **Label**, pilih *eventname*.

1. Pilih **Style** dan kemudian **General**.

1. **Di bawah **Colorscales**, pilih **Categorical** dan kemudian Pastel2.**

![\[Bagan pai\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/pie-chart.png)


## Contoh: Buat bagan kombinasi untuk membandingkan pendapatan dan penjualan
<a name="query-editor-v2-example-revenue-sales-chart"></a>

Lakukan langkah-langkah dalam contoh ini untuk membuat bagan yang menggabungkan diagram batang untuk data pendapatan dan grafik garis untuk data penjualan. Contoh berikut menggunakan tabel *Penjualan* database sampel tickit. Untuk informasi selengkapnya, lihat [Contoh database](https://docs.aws.amazon.com/redshift/latest/dg/c_sampledb.html) di Panduan *Pengembang Database Amazon Redshift*. 

Berikut ini adalah query yang Anda jalankan untuk memberikan data untuk grafik.

```
select eventname, total_price, total_qty_sold
from  (select eventid, total_price, total_qty_sold, ntile(1000) over(order by total_price desc) as percentile
       from (select eventid, sum(pricepaid) total_price, sum(qtysold) total_qty_sold
             from   tickit.sales
             group by eventid)) Q, tickit.event E
       where Q.eventid = E.eventid
       and percentile = 1
order by total_price desc;
```

**Untuk membuat bagan kombinasi untuk membandingkan pendapatan dan penjualan**

1. Jalankan kueri.

1. Di area hasil kueri, nyalakan **Bagan**.

1. Di bawah *jejak o*, untuk **Jenis**, pilih **Bar**.

1. Untuk **X**, pilih *eventname*.

1. Untuk **Y**, pilih *total\$1price*.

   Bagan batang ditampilkan dengan nama acara di sepanjang sumbu X.

1. Di bawah **Gaya**, pilih **Jejak**. 

1. Untuk **Nama**, masukkan *Pendapatan*.

1. Di bawah **Style**, pilih **Axes.** 

1. Untuk **Judul**, pilih **Y** dan masukkan *Pendapatan*.

   Label *Pendapatan* ditampilkan pada sumbu Y kiri.

1. Di bawah **Struktur**, pilih **Jejak**.

1. Pilih ![\[Plus sign icon representing an addition or new item action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/add-plus.png) **Jejak**.

   Tampilan opsi jejak 1.

1. Untuk **Type**, pilih **Line**.

1. Untuk **X**, pilih *eventname*.

1. Untuk **Y**, pilih *total\$1qty\$1sold*.

1. Di bawah **Sumbu Untuk Digunakan**, untuk **Sumbu Y** pilih![\[Plus sign icon representing an addition or new item action.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/add-plus.png). 

   **Sumbu Y** menampilkan *Y2*.

1. Di bawah **Style**, pilih **Axes.**

1. Di bawah **Judul**, pilih **Y2**.

1. Untuk **Nama**, masukkan *Penjualan*.

1. Di bawah **Garis**, pilih *Y: Penjualan*.

1. Di bawah **Garis Sumbu**, pilih **Tampilkan** dan untuk **Posisi**, pilih **Kanan**.

![\[Grafik pendapatan dan penjualan\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/chart-revenue-sales.png)


## Demo: Bangun visualisasi menggunakan editor kueri Amazon Redshift v2
<a name="query-editor-v2-demo-visualizations"></a>

Untuk demo tentang cara membangun visualisasi, tonton video berikut. 

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/-FYqTIER-6U/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/-FYqTIER-6U)


# Berkolaborasi dan berbagi sebagai sebuah tim
<a name="query-editor-v2-team"></a>

Anda dapat berbagi pertanyaan dengan tim Anda. 

Tim didefinisikan untuk sekumpulan pengguna yang berkolaborasi dan berbagi sumber daya editor kueri v2. Administrator dapat membuat tim dengan menambahkan tag ke peran IAM. Untuk informasi selengkapnya, lihat [Izin yang diperlukan untuk menggunakan editor kueri v2](redshift-iam-access-control-identity-based.md#redshift-policy-resources.required-permissions.query-editor-v2). 

# Menyimpan dan menjelajah untuk kueri
<a name="query-editor-v2-save-queries"></a>

Sebelum Anda dapat membagikan kueri Anda dengan tim Anda, simpan kueri Anda. Anda dapat melihat dan menghapus kueri yang disimpan. 

**Untuk menyimpan kueri**

1. Siapkan kueri Anda dan pilih **Simpan**.

1. Masukkan judul untuk kueri Anda.

1. Pilih **Simpan**. 

**Untuk menelusuri kueri yang disimpan**

1. Pilih **Kueri** dari panel navigasi.

1. Anda dapat melihat kueri yang merupakan **kueri Saya**, **Dibagikan oleh saya**, atau **Dibagikan ke tim saya**. Kueri ini dapat muncul sebagai kueri individual atau dalam folder yang Anda buat.

# Berbagi kueri
<a name="query-editor-v2-query-share"></a>

Anda dapat membagikan pertanyaan Anda dengan tim Anda. Anda juga dapat melihat riwayat kueri yang disimpan dan mengelola versi kueri. 

Untuk berbagi kueri dengan tim Anda, pastikan bahwa Anda memiliki tag utama yang `sqlworkbench-team` disetel ke nilai yang sama dengan anggota tim lainnya di akun Anda. Misalnya, administrator mungkin menetapkan nilai `accounting-team` untuk semua orang di departemen akuntansi. Sebagai contoh, lihat [Izin yang diperlukan untuk menggunakan editor kueri v2](redshift-iam-access-control-identity-based.md#redshift-policy-resources.required-permissions.query-editor-v2).

**Untuk berbagi kueri dengan tim**

1. Pilih **Kueri** dari panel navigasi.

1. Buka menu konteks (klik kanan) kueri yang ingin Anda bagikan dan pilih **Bagikan dengan tim saya**.

1. Pilih tim atau tim yang ingin Anda bagikan kueri, lalu pilih **opsi Simpan berbagi**. 

# Mengelola versi kueri
<a name="query-editor-v2-query-versions"></a>

Setiap kali Anda menyimpan kueri SQL, editor kueri v2 menyimpannya sebagai versi baru. Anda dapat menelusuri versi kueri sebelumnya, menyimpan salinan kueri, atau memulihkan kueri. 

**Untuk mengelola versi kueri**

1. Pilih **Kueri** dari panel navigasi.

1. Buka menu konteks (klik kanan) untuk kueri yang ingin Anda kerjakan.

1. Pilih **Riwayat versi** untuk membuka daftar versi kueri.

1. Pada halaman **Riwayat versi**, Anda dapat melakukan hal berikut:
   + **Kembalikan ke yang dipilih** - Kembalikan ke versi yang dipilih dan lanjutkan pekerjaan Anda dengan versi ini.
   + **Simpan dipilih sebagai** — Buat kueri baru di editor.

# Menanyakan database menggunakan editor kueri Amazon Redshift v1
<a name="query-editor"></a>

Menggunakan editor kueri adalah cara mudah untuk menjalankan kueri pada database yang dihosting oleh cluster Amazon Redshift Anda. Setelah membuat klaster, Anda dapat langsung menjalankan kueri dengan menggunakan editor kueri di konsol Amazon Redshift.

**catatan**  
Anda tidak dapat melakukan kueri data di Amazon Redshift Tanpa Server menggunakan editor kueri asli ini. Gunakan editor kueri Amazon Redshift v2 sebagai gantinya.

Pada Februari 2021, editor kueri yang diperbarui telah diterapkan dan izin otorisasi untuk menggunakan editor kueri diubah. Editor kueri baru menggunakan Amazon Redshift Data API untuk menjalankan kueri. `AmazonRedshiftQueryEditor`Kebijakan, yang merupakan kebijakan AWS terkelola AWS Identity and Access Management (IAM), telah diperbarui untuk menyertakan izin yang diperlukan. Jika Anda memiliki kebijakan IAM khusus, pastikan Anda memperbaruinya. Gunakan `AmazonRedshiftQueryEditor` sebagai panduan. Perubahan untuk `AmazonRedshiftQueryEditor` mencakup yang berikut: 
+ Izin untuk mengelola hasil pernyataan editor kueri memerlukan pengguna pemilik pernyataan. 
+ Izin untuk menggunakan Secrets Manager untuk terhubung ke database telah ditambahkan.

Untuk informasi selengkapnya, lihat [Izin diperlukan untuk menggunakan editor kueri konsol Amazon Redshift](redshift-iam-access-control-identity-based.md#redshift-policy-resources.required-permissions.query-editor).

Ketika Anda terhubung ke cluster Anda dari editor kueri baru, Anda dapat menggunakan salah satu dari dua metode otentikasi. 

Menggunakan editor kueri, Anda dapat melakukan hal berikut:
+ Jalankan kueri pernyataan SQL tunggal.
+ Hasil unduhan menetapkan sebesar 100 MB ke file nilai dipisahkan koma (CSV).
+ Simpan kueri untuk digunakan kembali. Anda tidak dapat menyimpan kueri di Wilayah Eropa (Paris), Wilayah Asia Pasifik (Osaka), Wilayah Asia Pasifik (Hong Kong), atau Wilayah Timur Tengah (Bahrain).
+ Lihat detail runtime kueri untuk tabel yang ditentukan pengguna.
+ Jadwalkan kueri untuk dijalankan di masa depan. 
+ Lihat riwayat kueri yang Anda buat di editor kueri. 
+ Jalankan kueri terhadap cluster menggunakan perutean VPC yang disempurnakan. 

## Pertimbangan editor kueri
<a name="query-editor-considerations"></a>

Pertimbangkan hal berikut tentang bekerja dengan kueri saat Anda menggunakan editor kueri:
+ Durasi maksimum kueri adalah 24 jam. 
+ Ukuran hasil kueri maksimum adalah 100 MB. Jika panggilan mengembalikan lebih dari 100 MB data respons, panggilan akan dihentikan. 
+ Waktu retensi maksimum untuk hasil kueri adalah 24 jam. 
+ Ukuran pernyataan kueri maksimum adalah 100 KB. 
+ Cluster harus berada di cloud pribadi virtual (VPC) berdasarkan layanan Amazon VPC. 
+ Anda tidak dapat menggunakan transaksi di editor kueri. Untuk informasi selengkapnya tentang transaksi, lihat [MULAI](https://docs.aws.amazon.com/redshift/latest/dg/r_BEGIN.html) di Panduan *Pengembang Database Amazon Redshift*.
+ Anda dapat menyimpan kueri hingga 3.000 karakter. 

# Menyambung ke gudang data Amazon Redshift menggunakan alat klien SQL
<a name="connecting-to-cluster"></a>

Anda dapat terhubung ke gudang data Amazon Redshift dari alat klien SQL melalui koneksi Java Database Connectivity (JDBC), Python, dan Open Database Connectivity (ODBC). Amazon Redshift tidak menyediakan atau menginstal alat atau pustaka klien SQL apa pun. Untuk menggunakan alat atau pustaka ini untuk bekerja dengan data di gudang data Anda, instal di komputer klien Anda atau instans Amazon EC2. Anda dapat menggunakan sebagian besar alat klien SQL yang mendukung driver JDBC, Python, atau ODBC. 

Gunakan daftar bagian di akhir topik ini untuk membantu Anda menelusuri proses mengonfigurasi komputer klien atau instans Amazon EC2 untuk menggunakan koneksi JDBC, Python, atau ODBC. Topik juga membahas opsi keamanan terkait untuk koneksi klien ke server. Selain itu, temukan informasi tentang pengaturan dan koneksi dari alat klien SQL, seperti [Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/rsql-query-tool.html) RSQL. Anda dapat mencoba alat-alat ini jika Anda belum memiliki alat intelijen bisnis untuk digunakan. Anda juga dapat menggunakan bagian ini untuk mempelajari tentang menghubungkan ke data Anda. Terakhir, jika Anda mengalami masalah saat mencoba terhubung ke gudang data Anda, Anda dapat meninjau informasi pemecahan masalah untuk mengidentifikasi solusi.

## Rekomendasi untuk menghubungkan dengan alat klien
<a name="connecting-to-cluster-recommendations"></a>

Jika Anda terhubung ke klaster Redshift Anda menggunakan alamat IP, itu dapat mengakibatkan downtime tambahan ketika ada pemadaman atau kehilangan koneksi dan cluster dibawa online di Availability Zone (AZ) baru. Namun, jika Anda masih ingin aplikasi Anda terhubung ke Redshift menggunakan alamat IP, gunakan alamat IP pribadi yang dilampirkan ke titik akhir cluster ( virtual-private-cloudVPC). Anda dapat menemukan ini di detail cluster di **Jaringan dan keamanan**, di bawah tab **Properties**. 

**catatan**  
Jika aplikasi Anda menggunakan alamat IP node pemimpin untuk mengakses kluster Redshift, praktik terbaik yang disarankan adalah mengubahnya untuk menggunakan URL titik akhir cluster. Untuk informasi selengkapnya, lihat [Mengonfigurasi koneksi di Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/configuring-connections.html).

**Topics**
+ [Rekomendasi untuk menghubungkan dengan alat klien](#connecting-to-cluster-recommendations)
+ [Mengonfigurasi koneksi di Amazon Redshift](configuring-connections.md)
+ [Mengkonfigurasi opsi keamanan untuk koneksi](connecting-ssl-support.md)
+ [Menghubungkan dari alat dan kode klien](connecting-via-client-tools.md)
+ [Menggunakan profil otentikasi untuk terhubung ke Amazon Redshift](connecting-with-authentication-profiles.md)
+ [Memecahkan masalah koneksi di Amazon Redshift](troubleshooting-connections.md)

# Mengonfigurasi koneksi di Amazon Redshift
<a name="configuring-connections"></a>

Di bagian berikut, pelajari cara mengkonfigurasi koneksi JDBC, Python, dan ODBC untuk terhubung ke cluster Anda dari alat klien SQL. Bagian ini menjelaskan cara mengatur koneksi JDBC, Python, dan ODBC. Ini juga menjelaskan cara menggunakan Secure Sockets Layer (SSL) dan sertifikat server untuk mengenkripsi komunikasi antara klien dan server. 

## Driver JDBC, Python, dan ODBC untuk Amazon Redshift
<a name="connecting-drivers"></a>

Untuk bekerja dengan data di cluster Anda, Anda harus memiliki driver JDBC, Python, atau ODBC untuk konektivitas dari komputer klien atau instance Anda. Kode aplikasi Anda untuk menggunakan operasi API akses data JDBC, Python, atau ODBC, dan gunakan alat klien SQL yang mendukung JDBC, Python, atau ODBC.

Amazon Redshift menawarkan driver JDBC, Python, dan ODBC untuk diunduh. Driver ini didukung oleh Dukungan. Driver PostgreSQL tidak diuji dan tidak didukung oleh tim Amazon Redshift. Gunakan driver khusus Amazon Redshift saat menyambungkan ke klaster Amazon Redshift. Driver Amazon Redshift memiliki keuntungan sebagai berikut:
+ Support untuk IAM, SSO, dan otentikasi federasi.
+ Support untuk tipe data Amazon Redshift baru.
+ Support untuk profil otentikasi.
+ Peningkatan kinerja dalam hubungannya dengan peningkatan Amazon Redshift.

 Untuk informasi selengkapnya tentang cara mengunduh driver JDBC dan ODBC dan mengonfigurasi koneksi ke cluster Anda, lihat[Mengonfigurasi koneksi untuk driver JDBC versi 2.x untuk Amazon Redshift](jdbc20-install.md), [Konektor Python Amazon Redshift](python-redshift-driver.md) dan. [Mengonfigurasi koneksi untuk driver ODBC versi 2.x untuk Amazon Redshift](odbc20-install.md) 

Untuk informasi selengkapnya tentang mengelola identitas IAM, termasuk praktik terbaik untuk peran IAM, lihat. [Manajemen identitas dan akses di Amazon Redshift](redshift-iam-authentication-access-control.md)

# Menemukan string koneksi cluster Anda
<a name="connecting-connection-string"></a>

Untuk terhubung ke cluster Anda dengan alat klien SQL Anda, Anda harus memiliki string koneksi cluster. Anda dapat menemukan string koneksi cluster di konsol Amazon Redshift, di halaman detail cluster.

**Untuk menemukan string koneksi untuk sebuah cluster**

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

1. Pada menu navigasi, pilih **Cluster**, lalu pilih nama cluster dari daftar untuk membuka detailnya.

1. **String koneksi **URL JDBC** **dan URL ODBC** tersedia, bersama dengan detail tambahan, di bagian Informasi umum.** Setiap string didasarkan pada AWS Wilayah tempat cluster berjalan. Klik ikon di sebelah string koneksi yang sesuai untuk menyalinnya.

Untuk menyambung ke titik akhir cluster, Anda dapat menggunakan URL titik akhir cluster dari permintaan [DescribeClusters API](https://docs.aws.amazon.com/redshift/latest/APIReference/API_DescribeClusters.html). Berikut ini adalah contoh URL endpoint cluster.

```
mycluster.cmeaswqeuae.us-east-2.redshift.amazonaws.com
```

Jika Anda telah menyiapkan nama domain khusus untuk klaster Anda, Anda juga dapat menggunakannya untuk terhubung ke klaster Anda. Untuk informasi selengkapnya tentang membuat nama domain kustom, lihat [Menyiapkan nama domain kustom](https://docs.aws.amazon.com/redshift/latest/mgmt/connecting-connection-CNAME-connect.html).

**catatan**  
Saat Anda terhubung, jangan gunakan alamat IP node cluster atau alamat IP titik akhir VPC. Selalu gunakan titik akhir Redshift untuk menghindari pemadaman yang tidak perlu. Satu-satunya pengecualian untuk menggunakan URL endpoint adalah ketika Anda menggunakan nama domain khusus. Untuk informasi selengkapnya, lihat [Menggunakan nama domain khusus untuk koneksi klien](https://docs.aws.amazon.com/redshift/latest/mgmt/connecting-connection-CNAME.html).

# Mengonfigurasi koneksi untuk driver JDBC versi 2.x untuk Amazon Redshift
<a name="jdbc20-install"></a>

Anda dapat menggunakan koneksi driver JDBC versi 2.x untuk terhubung ke cluster Amazon Redshift Anda dari banyak alat klien SQL pihak ketiga. Konektor Amazon Redshift JDBC menyediakan solusi open source. Anda dapat menelusuri kode sumber, meminta penyempurnaan, melaporkan masalah, dan memberikan kontribusi. 

Untuk informasi terbaru tentang perubahan driver JDBC, lihat log [perubahan](https://github.com/aws/amazon-redshift-jdbc-driver/blob/master/CHANGELOG.md).

Secara default, driver Amazon Redshift JDBC dikonfigurasi untuk menggunakan keepalives TCP untuk mencegah koneksi dari kehabisan waktu. Anda dapat menentukan kapan driver mulai mengirim paket keepalive atau mematikan fitur dengan mengatur properti yang relevan di URL koneksi. Untuk informasi selengkapnya tentang sintaks URL koneksi, lihat[Membangun URL koneksi](jdbc20-build-connection-url.md).


| Properti | Deskripsi | 
| --- | --- | 
|  `TCPKeepAlive`  |  Untuk mematikan keepalives TCP, setel properti ini ke. `FALSE`  | 

**Topics**
+ [Unduh driver Amazon Redshift JDBC, versi 2.1](jdbc20-download-driver.md)
+ [Menginstal driver Amazon Redshift JDBC, versi 2.2](jdbc20-install-driver.md)
+ [Mendapatkan URL JDBC](jdbc20-obtain-url.md)
+ [Membangun URL koneksi](jdbc20-build-connection-url.md)
+ [Mengkonfigurasi koneksi JDBC dengan Apache Maven](configure-jdbc20-connection-with-maven.md)
+ [Mengkonfigurasi otentikasi dan SSL](jdbc20-configure-authentication-ssl.md)
+ [Mengonfigurasi pencatatan log](jdbc20-configuring-logging.md)
+ [Konversi jenis data](jdbc20-data-type-mapping.md)
+ [Menggunakan dukungan pernyataan yang disiapkan](jdbc20-prepared-statement-support.md)
+ [Perbedaan antara versi 2.2 dan 1.x dari driver JDBC](jdbc20-jdbc10-driver-differences.md)
+ [Membuat file inisialisasi (.ini) untuk driver JDBC versi 2.x](jdbc20-ini-file.md)
+ [Opsi untuk konfigurasi driver JDBC versi 2.x](jdbc20-configuration-options.md)
+ [Versi sebelumnya dari JDBC driver version 2.x](jdbc20-previous-driver-version-20.md)

# Unduh driver Amazon Redshift JDBC, versi 2.1
<a name="jdbc20-download-driver"></a>

**catatan**  
Driver Amazon Redshift JDBC 2.x tidak dirancang agar aman untuk thread-safe. Dua atau lebih thread secara bersamaan mencoba menggunakan koneksi yang sama dapat menyebabkan kebuntuan, kesalahan, hasil yang salah, atau perilaku tak terduga lainnya.  
Jika Anda memiliki aplikasi multi-threaded, kami sarankan Anda menyinkronkan akses ke driver untuk menghindari akses bersamaan.

Amazon Redshift menawarkan driver untuk alat yang kompatibel dengan JDBC 4.2 API. Nama kelas untuk pengemudi ini adalah`com.amazon.redshift.Driver`.

Untuk informasi rinci tentang cara menginstal driver JDBC, referensi perpustakaan driver JDBC, dan mendaftarkan kelas driver, lihat topik berikut. 

Untuk setiap komputer tempat Anda menggunakan driver Amazon Redshift JDBC versi 2.x, pastikan Java Runtime Environment (JRE) 8.0 diinstal. 

Jika Anda menggunakan driver Amazon Redshift JDBC untuk otentikasi database, pastikan Anda memiliki AWS SDK untuk Java 1.11.118 atau yang lebih baru di jalur kelas Java Anda. Jika Anda belum AWS SDK untuk Java menginstal, unduh file ZIP dengan pustaka yang bergantung pada driver dan driver yang kompatibel dengan JDBC 4.2 untuk SDK: AWS 
+ [JDBC 4.2—driver yang kompatibel dengan versi 2.x dan pustaka yang bergantung pada driver AWS SDK Di Wilayah Tiongkok (Beijing), gunakan tautan berikut: JDBC 4.2 — driver yang kompatibel dengan versi 2.x dan pustaka](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.5/redshift-jdbc42-2.2.5.zip) [driver SDK AWS](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.2.5/redshift-jdbc42-2.2.5.zip)

  File ZIP ini berisi driver yang kompatibel dengan JDBC 4.2 versi 2.x dan SDK for AWS Java 1.x file pustaka yang bergantung pada driver. Buka zip file jar dependen ke lokasi yang sama dengan driver JDBC. Hanya driver JDBC yang perlu berada di CLASSPATH.

  File ZIP ini tidak menyertakan AWS SDK for Java 1.x lengkap. Namun, ini mencakup pustaka yang bergantung pada driver AWS SDK for Java 1.x yang diperlukan AWS Identity and Access Management untuk otentikasi database (IAM).

  Gunakan driver Amazon Redshift JDBC ini dengan AWS SDK yang diperlukan untuk autentikasi database IAM.

  *Untuk menginstal AWS SDK for Java 1.x lengkap, [AWS lihat SDK for Java](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/welcome.html)AWS SDK untuk Java 1.x di Panduan Pengembang.* 
+ [Driver yang kompatibel dengan JDBC 4.2 versi 2.x (tanpa SDK AWS ) Di Wilayah Tiongkok (Beijing), gunakan tautan berikut: [JDBC](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.2.5/redshift-jdbc42-2.2.5.jar) 4.2—driver](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.5/redshift-jdbc42-2.2.5.jar) versi 2.x (tanpa SDK) AWS 

Tinjau lisensi perangkat lunak driver JDBC versi 2.x dan ubah file log: 
+ [Lisensi driver JDBC versi 2.x](https://github.com/aws/amazon-redshift-jdbc-driver/blob/master/LICENSE) 
+ [Driver JDBC versi 2.x perubahan log](https://github.com/aws/amazon-redshift-jdbc-driver/blob/master/CHANGELOG.md)

Driver JDBC versi 1.2.27.1051 dan yang lebih baru mendukung prosedur tersimpan Amazon Redshift. Untuk informasi selengkapnya, lihat [Membuat prosedur tersimpan di Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/stored-procedure-overview.html) di Panduan Pengembang *Database Amazon Redshift*. 

# Menginstal driver Amazon Redshift JDBC, versi 2.2
<a name="jdbc20-install-driver"></a>

Untuk menginstal Amazon Redshift JDBC 4.2—driver versi 2.x yang kompatibel dengan driver dan library yang bergantung pada driver untuk AWS SDK, ekstrak file dari arsip ZIP ke direktori pilihan Anda. 

Untuk menginstal driver yang kompatibel dengan Amazon Redshift JDBC 4.2 versi 2.x (tanpa AWS SDK), salin file JAR ke direktori pilihan Anda.

Untuk mengakses penyimpanan data Amazon Redshift menggunakan driver Amazon Redshift JDBC, Anda perlu melakukan konfigurasi seperti yang dijelaskan berikut.

**Topics**
+ [Merujuk pustaka driver JDBC](jdbc20-driver-libraries.md)
+ [Mendaftarkan kelas pengemudi](jdbc20-register-driver-class.md)

# Merujuk pustaka driver JDBC
<a name="jdbc20-driver-libraries"></a>

Aplikasi JDBC atau kode Java yang Anda gunakan untuk terhubung ke data Anda harus mengakses file JAR driver. Dalam aplikasi atau kode, tentukan semua file JAR yang Anda ekstrak dari arsip ZIP. 

## Menggunakan driver dalam aplikasi JDBC
<a name="jdbc20-use-driver-jdbc-app"></a>

Aplikasi JDBC biasanya menyediakan serangkaian opsi konfigurasi untuk menambahkan daftar file pustaka driver. Gunakan opsi yang disediakan untuk menyertakan semua file JAR dari arsip ZIP sebagai bagian dari konfigurasi driver dalam aplikasi. Untuk informasi selengkapnya, lihat dokumentasi untuk aplikasi JDBC Anda. 

## Menggunakan driver dalam kode Java
<a name="jdbc20-use-driver-java-code"></a>

Anda harus menyertakan semua file pustaka driver di jalur kelas. Ini adalah jalur yang dicari Java Runtime Environment untuk kelas dan file sumber daya lainnya. Untuk informasi selengkapnya, lihat dokumentasi Java SE yang sesuai untuk mengatur jalur kelas untuk sistem operasi Anda. 
+ Windows: [https://docs.oracle.com/javase/7/ .html docs/technotes/tools/windows/classpath](https://docs.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html)
+ Linux dan Solaris: [https://docs.oracle.com/javase/docs/technotes/tools/solaris/classpath7/](https://docs.oracle.com/javase/7/docs/technotes/tools/solaris/classpath.html) .html
+ macOS: Jalur kelas macOS default adalah direktori tempat driver JDBC diinstal.

# Mendaftarkan kelas pengemudi
<a name="jdbc20-register-driver-class"></a>

Pastikan Anda mendaftarkan kelas yang sesuai untuk aplikasi Anda. Anda menggunakan kelas berikut untuk menghubungkan driver Amazon Redshift JDBC ke penyimpanan data Amazon Redshift:
+ `Driver`kelas diperluas`java.sql.Driver`.
+ `DataSource`kelas diperluas `javax.sql.DataSource` dan`javax.sql.ConnectionPoolDataSource`.

Driver mendukung nama kelas berkualifikasi penuh berikut yang independen dari versi JDBC:
+ `com.amazon.redshift.jdbc.Driver`
+ `com.amazon.redshift.jdbc.DataSource`

Contoh berikut menunjukkan bagaimana menggunakan DriverManager kelas untuk membuat koneksi untuk JDBC 4.2.

```
            private static Connection connectViaDM() throws Exception
{
Connection connection = null;
connection = DriverManager.getConnection(CONNECTION_URL);
return connection;
}
```

Contoh berikut menunjukkan bagaimana menggunakan `DataSource` kelas untuk membuat koneksi.

```
 private static Connection connectViaDS() throws Exception
{
Connection connection = null;
11
Amazon Redshift JDBC Driver Installation and Configuration Guide
DataSource ds = new com.amazon.redshift.jdbc.DataSource
();
ds.setURL(CONNECTION_URL);
connection = ds.getConnection();
return connection;
}
```

# Mendapatkan URL JDBC
<a name="jdbc20-obtain-url"></a>

Sebelum Anda dapat terhubung ke cluster Amazon Redshift Anda dari alat klien SQL, Anda perlu mengetahui URL JDBC klaster Anda. URL JDBC memiliki format berikut: `jdbc:redshift://endpoint:port/database`

Bidang format sebelumnya memiliki nilai berikut.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/jdbc20-obtain-url.html)

Berikut ini adalah contoh URL JDBC: `jdbc:redshift://examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com:5439/dev` 

Jika nilai URL Anda berisi salah satu karakter yang dicadangkan URI berikut, nilainya harus dikodekan URL:
+  ; 
+  \$1 
+  \$1 
+  \$1 
+  [ 
+  ] 
+  & 
+  = 
+  ? 
+  ruang kosong 

Misalnya, jika `PWD` nilai Anda`password:password`, URL koneksi yang menggunakan nilai itu akan terlihat seperti berikut:

`jdbc:redshift://redshift.company.us-west-1.redshift.amazonaws.com:9000/dev;UID=amazon;PWD=password%3Apassword`

Untuk informasi tentang cara mendapatkan koneksi JDBC Anda, lihat. [Menemukan string koneksi cluster Anda](connecting-connection-string.md) 

Jika komputer klien gagal terhubung ke database, Anda dapat memecahkan masalah yang mungkin terjadi. Untuk informasi selengkapnya, lihat [Memecahkan masalah koneksi di Amazon Redshift](troubleshooting-connections.md). 

# Membangun URL koneksi
<a name="jdbc20-build-connection-url"></a>

Gunakan URL koneksi untuk memasok informasi koneksi ke penyimpanan data yang Anda akses. Berikut ini adalah format URL koneksi untuk driver Amazon Redshift JDBC versi 2.x. Di sini, [Host] titik akhir server Amazon Redshift dan [Port] adalah jumlah port Transmission Control Protocol (TCP) yang digunakan server untuk mendengarkan permintaan klien.

```
jdbc:redshift://[Host]:[Port]
```

Berikut ini adalah format URL koneksi yang menentukan beberapa pengaturan opsional.

```
jdbc:redshift://[Host]:[Port]/[database];[Property1]=[Value];
[Property2]=[Value];
```

Jika nilai URL Anda berisi salah satu karakter yang dicadangkan URI berikut, nilainya harus dikodekan URL:
+  ; 
+  \$1 
+  \$1 
+  \$1 
+  [ 
+  ] 
+  & 
+  = 
+  ? 
+  ruang kosong 

Misalnya, jika `PWD` nilai Anda`password:password`, URL koneksi yang menggunakan nilai itu akan terlihat seperti berikut:

`jdbc:redshift://redshift.company.us-west-1.redshift.amazonaws.com:9000/dev;UID=amazon;PWD=password%3Apassword`

Misalnya, misalkan Anda ingin terhubung ke port 9000 pada cluster Amazon Redshift di Wilayah AS Barat (California Utara) aktif. AWS Anda juga ingin mengakses database bernama `dev` dan mengotentikasi koneksi menggunakan nama pengguna dan kata sandi database. Dalam hal ini, Anda menggunakan URL koneksi berikut.

```
jdbc:redshift://redshift.company.us-west-1.redshift.amazonaws.com:9000/dev;UID=amazon;PWD=amazon
```

Anda dapat menggunakan karakter berikut untuk memisahkan opsi konfigurasi dari sisa string URL:
+ ;
+ ?

Misalnya, string URL berikut setara:

```
jdbc:redshift://my_host:5439/dev;ssl=true;defaultRowFetchSize=100
```

```
jdbc:redshift://my_host:5439/dev?ssl=true;defaultRowFetchSize=100
```

Anda dapat menggunakan karakter berikut untuk memisahkan opsi konfigurasi satu sama lain dalam string URL:
+ ;
+ &

Misalnya, string URL berikut setara:

```
jdbc:redshift://my_host:5439/dev;ssl=true;defaultRowFetchSize=100
```

```
jdbc:redshift://my_host:5439/dev;ssl=true&defaultRowFetchSize=100
```

Contoh URL berikut menentukan tingkat log 6 dan jalur untuk log.

```
jdbc:redshift://redshift.amazonaws.com:5439/dev;DSILogLevel=6;LogPath=/home/user/logs;
```

Jangan duplikat properti di URL koneksi.

Untuk daftar lengkap opsi konfigurasi yang dapat Anda tentukan, lihat[Opsi untuk konfigurasi driver JDBC versi 2.x](jdbc20-configuration-options.md). 

**catatan**  
Saat Anda terhubung, jangan gunakan alamat IP node cluster atau alamat IP titik akhir VPC. Selalu gunakan titik akhir Redshift untuk menghindari pemadaman yang tidak perlu. Satu-satunya pengecualian untuk menggunakan URL endpoint adalah ketika Anda menggunakan nama domain khusus. Untuk informasi selengkapnya, lihat [Menggunakan nama domain khusus untuk koneksi klien](https://docs.aws.amazon.com/redshift/latest/mgmt/connecting-connection-CNAME.html).

# Mengkonfigurasi koneksi JDBC dengan Apache Maven
<a name="configure-jdbc20-connection-with-maven"></a>

Apache Maven adalah perangkat lunak manajemen proyek dan alat pemahaman. AWS SDK untuk Java Mendukung proyek Apache Maven. *Untuk informasi selengkapnya, lihat [Menggunakan SDK dengan Apache Maven](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/setup-project-maven.html) di Panduan Pengembang.AWS SDK untuk Java * 

Jika Anda menggunakan Apache Maven, Anda dapat mengonfigurasi dan membangun proyek Anda untuk menggunakan driver Amazon Redshift JDBC untuk terhubung ke cluster Amazon Redshift Anda. Untuk melakukan ini, tambahkan driver JDBC sebagai dependensi dalam file proyek Anda. `pom.xml` Jika Anda menggunakan Maven untuk membangun proyek Anda dan ingin menggunakan koneksi JDBC, ambil langkah-langkah di bagian berikut. 

**Untuk mengkonfigurasi driver JDBC sebagai dependensi Maven**

1. Tambahkan repositori Amazon atau repositori Maven Central ke bagian repositori file Anda. `pom.xml`
**catatan**  
URL dalam contoh kode berikut mengembalikan kesalahan jika digunakan dalam browser. Gunakan URL ini hanya dalam konteks proyek Maven.

   Untuk terhubung menggunakan Secure Sockets Layer (SSL), tambahkan repositori berikut ke file Anda. `pom.xml`

   ```
   <repositories>
       <repository>
         <id>redshift</id>
         <url>https://s3.amazonaws.com/redshift-maven-repository/release</url>
       </repository>
   </repositories>
   ```

   Untuk repositori Maven Central, tambahkan berikut ini ke file Anda. `pom.xml`

   ```
   <repositories>
       <repository>
         <id>redshift</id>
         <url>https://repo1.maven.org/maven2</url>
       </repository>
   </repositories>
   ```

1. Deklarasikan versi driver yang ingin Anda gunakan di bagian dependensi file Anda. `pom.xml`

   Amazon Redshift menawarkan driver untuk alat yang kompatibel dengan JDBC 4.2 API. Untuk informasi tentang fungsionalitas yang didukung oleh driver ini, lihat[Unduh driver Amazon Redshift JDBC, versi 2.1](jdbc20-download-driver.md). 

   Ganti `driver-version` dalam contoh berikut dengan versi driver Anda, misalnya`2.1.0.1`. Untuk driver yang kompatibel dengan JDBC 4.2, gunakan yang berikut ini. 

   ```
   <dependency>
      <groupId>com.amazon.redshift</groupId>
      <artifactId>redshift-jdbc42</artifactId>
      <version>driver-version</version>
   </dependency>
   ```

   Nama kelas untuk pengemudi ini adalah`com.amazon.redshift.Driver`.

Driver Amazon Redshift Maven memerlukan dependensi opsional berikut saat Anda menggunakan otentikasi database IAM. 

```
<dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-java-sdk-core</artifactId>
      <version>1.12.23</version>
      <scope>runtime</scope>
      <optional>true</optional>
</dependency>
    <dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-java-sdk-redshift</artifactId>
      <version>1.12.23</version>
      <scope>runtime</scope>
      <optional>true</optional>
</dependency>
<dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-java-sdk-sts</artifactId>
      <version>1.12.23</version>
      <scope>runtime</scope>
      <optional>true</optional>
</dependency>
```

Untuk memutakhirkan atau mengubah driver Amazon Redshift JDBC ke versi terbaru, pertama-tama ubah bagian versi dependensi ke versi driver terbaru. Kemudian bersihkan proyek Anda dengan Plugin Maven Clean, seperti yang ditunjukkan berikut. 

```
mvn clean
```

# Mengkonfigurasi otentikasi dan SSL
<a name="jdbc20-configure-authentication-ssl"></a>

Untuk melindungi data dari akses yang tidak sah, penyimpanan data Amazon Redshift memerlukan semua koneksi untuk diautentikasi menggunakan kredensyal pengguna. Beberapa penyimpanan data juga memerlukan koneksi yang harus dibuat melalui protokol Secure Sockets Layer (SSL), baik dengan atau tanpa otentikasi satu arah.

Driver Amazon Redshift JDBC versi 2.x memberikan dukungan penuh untuk protokol otentikasi ini. 

Versi SSL yang didukung driver tergantung pada versi JVM yang Anda gunakan. Untuk informasi tentang versi SSL yang didukung oleh setiap versi Java, lihat [Mendiagnosis TLS, SSL, dan HTTPS](https://blogs.oracle.com/java-platform-group/diagnosing-tls,-ssl,-and-https) di Blog Manajemen Produk Grup Platform Java. 

Versi SSL yang digunakan untuk koneksi adalah versi tertinggi yang didukung oleh driver dan server, yang ditentukan pada waktu koneksi.

Konfigurasikan driver Amazon Redshift JDBC versi 2.x untuk mengautentikasi koneksi Anda sesuai dengan persyaratan keamanan server Redshift yang Anda sambungkan. 

Anda harus selalu memberikan nama pengguna dan kata sandi Redshift Anda untuk mengautentikasi koneksi. Bergantung pada apakah SSL diaktifkan dan diperlukan di server, Anda mungkin juga perlu mengonfigurasi driver untuk terhubung melalui SSL. Atau Anda mungkin menggunakan otentikasi SSL satu arah sehingga klien (driver itu sendiri) memverifikasi identitas server. 

Anda memberikan informasi konfigurasi ke driver di URL koneksi. Untuk informasi selengkapnya tentang sintaks URL koneksi, lihat[Membangun URL koneksi](jdbc20-build-connection-url.md). 

*SSL* menunjukkanTLS/SSL, both Transport Layer Security and Secure Sockets Layer. The driver supports industry-standard versions of TLS/SSL. 

## Mengkonfigurasi otentikasi IAM
<a name="jdbc20-configure-iam-authentication"></a>

Jika Anda terhubung ke server Amazon Redshift menggunakan autentikasi IAM, setel properti berikut sebagai bagian dari string koneksi sumber data Anda. 

 Untuk informasi selengkapnya tentang autentikasi IAM, lihat. [Manajemen identitas dan akses di Amazon Redshift](redshift-iam-authentication-access-control.md)

Untuk menggunakan otentikasi IAM, gunakan salah satu format string koneksi berikut:


| String koneksi | Deskripsi | 
| --- | --- | 
|  `jdbc:redshift:iam:// [host]:[port]/[db]`  |  String koneksi biasa. Pengemudi menyimpulkan clusterID dan Region dari host.  | 
|  `jdbc:redshift:iam:// [cluster-id]: [region]/[db]`  |  Pengemudi mengambil informasi host, mengingat ClusterID dan Region.  | 
|  `jdbc:redshift:iam:// [host]/[db]`  |  Driver default ke port 5439, dan menyimpulkan ClusterID dan Region dari host. Bergantung pada port yang Anda pilih saat membuat, memodifikasi, atau memigrasi klaster, izinkan akses ke port yang dipilih.   | 

## Menentukan profil
<a name="jdbc20-aws-credentials-profiles"></a>

Jika Anda menggunakan otentikasi IAM, Anda dapat menentukan properti koneksi tambahan yang diperlukan atau opsional di bawah nama profil. Dengan melakukan ini, Anda dapat menghindari meletakkan informasi tertentu secara langsung di string koneksi. Anda menentukan nama profil dalam string koneksi Anda menggunakan properti Profil. 

Profil dapat ditambahkan ke file AWS kredensyal. Lokasi default untuk file ini adalah: `~/.aws/credentials` 

Anda dapat mengubah nilai default dengan mengatur jalur dalam variabel lingkungan berikut: `AWS_CREDENTIAL_PROFILES_FILE` 

 Untuk informasi selengkapnya tentang profil, lihat [Bekerja dengan AWS Kredensyal di. *AWS SDK untuk Java*](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html) 

## Menggunakan kredensial profil instance
<a name="jdbc20-instance-profile-credentials"></a>

Jika Anda menjalankan aplikasi pada instans Amazon EC2 yang dikaitkan dengan peran IAM, Anda dapat terhubung menggunakan kredenal profil instans. 

Untuk melakukan ini, gunakan salah satu format string koneksi IAM di tabel sebelumnya, dan atur properti koneksi dbuser ke nama pengguna Amazon Redshift yang Anda sambungkan sebagai. 

Untuk informasi selengkapnya tentang profil instans, lihat [Manajemen Akses](https://docs.aws.amazon.com/IAM/latest/UserGuide/access.html) di *Panduan Pengguna IAM*. 

## Menggunakan penyedia kredensi
<a name="jdbc20-aws-credentials-provider"></a>

Driver juga mendukung plugin penyedia kredenal dari layanan berikut: 
+ AWS Pusat Identitas IAM
+ Layanan Federasi Direktori Aktif (ADFS)
+ Layanan Token Web JSON (JWT)
+ Layanan Microsoft Azure Active Directory (AD) dan Layanan Browser Microsoft Azure Active Directory (AD)
+ Layanan Okta
+ PingFederate Layanan 
+ Browser SAMP untuk layanan SAMP seperti Okta, Ping, atau ADFS

Jika Anda menggunakan salah satu layanan ini, URL koneksi perlu menentukan properti berikut: 
+ **Plugin\$1Name** - Jalur kelas yang sepenuhnya memenuhi syarat untuk kelas plugin penyedia kredensil Anda.
+ **IDP\$1host:** — Host untuk layanan yang Anda gunakan untuk mengautentikasi ke Amazon Redshift.
+ **IDP\$1port** — Port tempat host untuk layanan otentikasi mendengarkan. Tidak diperlukan untuk Okta.
+ **User** — Nama pengguna untuk server idp\$1host.
+ **Kata sandi** — Kata sandi yang terkait dengan nama pengguna idp\$1host.
+ **DbUser**— Nama pengguna Amazon Redshift yang Anda sambungkan sebagai.
+ **SSL\$1insecure** - Menunjukkan apakah sertifikat server IDP harus diverifikasi.
+ **Client\$1ID — ID** klien yang terkait dengan nama pengguna di portal Azure AD. Hanya digunakan untuk Azure AD.
+ **Client\$1Secret** — Rahasia klien yang terkait dengan ID klien di portal Azure AD. Hanya digunakan untuk Azure AD.
+ **IDP\$1Tenant** - ID penyewa Azure AD untuk aplikasi Amazon Redshift Anda. Hanya digunakan untuk Azure AD.
+ **App\$1ID — ID** aplikasi Okta untuk aplikasi Amazon Redshift Anda. Hanya digunakan untuk Okta.
+ **App\$1Name — Nama** aplikasi Okta opsional untuk aplikasi Amazon Redshift Anda. Hanya digunakan untuk Okta.
+ **Partner\$1SPID** — Nilai SPID mitra opsional (ID penyedia layanan). Hanya digunakan untuk PingFederate.
+ **Idc\$1Region** — Wilayah AWS Tempat instans AWS IAM Identity Center berada. Hanya digunakan untuk AWS IAM Identity Center.
+ **Issuer\$1Url** — Titik akhir instance server AWS IAM Identity Center. Hanya digunakan untuk AWS IAM Identity Center.

Jika Anda menggunakan plugin browser untuk salah satu layanan ini, URL koneksi juga dapat mencakup: 
+ **Login\$1URL —URL** untuk sumber daya di situs web penyedia identitas saat menggunakan layanan Security Assertion Markup Language (SAMP) atau Azure AD melalui plugin browser. Parameter ini diperlukan jika Anda menggunakan plugin browser.
+ **Listen\$1Port** — Port yang digunakan driver untuk mendapatkan respons SAMP dari penyedia identitas saat menggunakan layanan SAMP, Azure AD, atau AWS IAM Identity Center melalui plugin browser.
+ **IDP\$1Response\$1Timeout** — Jumlah waktu, dalam hitungan detik, driver menunggu respons SAMP dari penyedia identitas saat menggunakan layanan SAMP, Azure AD, atau IAM Identity Center melalui plugin browser. AWS 

Untuk informasi tentang properti string koneksi tambahan, lihat[Opsi untuk konfigurasi driver JDBC versi 2.x](jdbc20-configuration-options.md). 

# Hanya menggunakan nama pengguna dan kata sandi
<a name="jdbc20-authentication-username-password"></a>

Jika server yang Anda sambungkan tidak menggunakan SSL, maka Anda hanya perlu memberikan nama pengguna dan kata sandi Redshift Anda untuk mengautentikasi koneksi. 

**Untuk mengonfigurasi otentikasi menggunakan nama pengguna dan kata sandi Redshift Anda saja**

1. Setel `UID` properti ke nama pengguna Redshift Anda untuk mengakses server Amazon Redshift.

1. Setel properti PWD ke kata sandi yang sesuai dengan nama pengguna Redshift Anda.

# Menggunakan SSL tanpa verifikasi identitas
<a name="jdbc20-use-ssl-without-identity-verification"></a>

Jika server yang Anda sambungkan menggunakan SSL tetapi tidak memerlukan verifikasi identitas, maka Anda dapat mengonfigurasi driver untuk menggunakan pabrik SSL yang tidak memvalidasi. 

**Untuk mengonfigurasi koneksi SSL tanpa verifikasi identitas**

1. Setel `UID` properti ke nama pengguna Redshift Anda untuk mengakses server Amazon Redshift.

1. Atur `PWD` properti ke kata sandi yang sesuai dengan nama pengguna Redshift Anda.

1. Atur `SSLFactory` properti ke`com.amazon.redshift.ssl.NonValidatingFactory`.

# Menggunakan otentikasi SSL satu arah
<a name="jdbc20-use-one-way-SSL-authentication"></a>

Jika server yang Anda sambungkan menggunakan SSL dan memiliki sertifikat, maka Anda dapat mengonfigurasi driver untuk memverifikasi identitas server menggunakan otentikasi satu arah. 

Otentikasi satu arah memerlukan sertifikat SSL yang ditandatangani dan tepercaya untuk memverifikasi identitas server. Anda dapat mengonfigurasi driver untuk menggunakan sertifikat tertentu atau mengakses TrustStore yang berisi sertifikat yang sesuai. Jika Anda tidak menentukan sertifikat atau TrustStore, maka driver menggunakan Java default TrustStore (biasanya salah satu `jssecacerts` atau`cacerts`). 

**Untuk mengonfigurasi otentikasi SSL satu arah**

1. Setel properti UID ke nama pengguna Redshift Anda untuk mengakses server Amazon Redshift.

1. Setel properti PWD ke kata sandi yang sesuai dengan nama pengguna Redshift Anda.

1. Setel properti SSL ke true.

1. Setel properti SSLRoot Cert ke lokasi sertifikat CA root Anda.

1. Jika Anda tidak menggunakan salah satu Java default TrustStores, lakukan salah satu hal berikut:
   + Untuk menentukan sertifikat server, setel properti SSLRoot Cert ke jalur lengkap sertifikat.
   + Untuk menentukan a TrustStore, lakukan hal berikut:

     1. Gunakan program keytool untuk menambahkan sertifikat server ke TrustStore yang ingin Anda gunakan.

     1. Tentukan TrustStore dan kata sandi yang akan digunakan saat memulai aplikasi Java menggunakan driver. Contoh:

        ```
        -Djavax.net.ssl.trustStore=[TrustStoreName]
        -Djavax.net.ssl.trustStorePassword=[TrustStorePassword]
        -Djavax.net.ssl.trustStoreType=[TrustStoreType]
        ```

1. Pilih salah satu:
   + Untuk memvalidasi sertifikat, setel SSLMode properti ke verify-ca.
   + Untuk memvalidasi sertifikat dan memverifikasi nama host dalam sertifikat, atur SSLMode properti ke verify-full.

# Mengonfigurasi pencatatan log
<a name="jdbc20-configuring-logging"></a>

Anda dapat mengaktifkan masuk ke driver untuk membantu mendiagnosis masalah.

Anda dapat mencatat informasi driver dengan menggunakan metode berikut:
+ Untuk menyimpan informasi yang dicatat dalam file.log, lihat[Menggunakan file log](jdbc20-using-log-files.md).
+ Untuk mengirim informasi yang dicatat ke LogStream atau LogWriter ditentukan dalam DriverManager, lihat[Menggunakan LogStream atau LogWriter](jdbc20-logstream-option.md). 

Anda memberikan informasi konfigurasi ke driver di URL koneksi. Untuk informasi selengkapnya tentang sintaks URL koneksi, lihat[Membangun URL koneksi](jdbc20-build-connection-url.md).

# Menggunakan file log
<a name="jdbc20-using-log-files"></a>

Aktifkan logging cukup lama untuk menangkap masalah. Logging mengurangi kinerja dan dapat mengkonsumsi sejumlah besar ruang disk. 

Atur LogLevel kunci di URL koneksi Anda untuk mengaktifkan logging dan tentukan jumlah detail yang disertakan dalam file log. Tabel berikut mencantumkan level logging yang disediakan oleh driver Amazon Redshift JDBC versi 2.x, dalam urutan dari yang paling sedikit bertele-tele hingga yang paling bertele-tele. 


| LogLevel nilai | Deskripsi | 
| --- | --- | 
|  1  |  Log peristiwa kesalahan parah yang akan menyebabkan pengemudi membatalkan.  | 
|  2  |  Peristiwa kesalahan log yang memungkinkan driver untuk terus berjalan.  | 
|  3  |  Log peristiwa yang mungkin mengakibatkan kesalahan jika tindakan tidak diambil. Tingkat logging dan tingkat logging di atas level ini juga mencatat kueri pengguna.  | 
|  4  |  Log informasi umum yang menjelaskan kemajuan pengemudi.  | 
|  5  |  Log informasi terperinci yang berguna untuk men-debug driver.  | 
|  6  |  Catat semua aktivitas pengemudi.  | 

**Untuk mengatur logging yang menggunakan file log**

1. Atur LogLevel properti ke tingkat informasi yang diinginkan untuk disertakan dalam file log.

1. Atur LogPath properti ke jalur lengkap ke folder tempat Anda ingin menyimpan file log. 

   Misalnya, URL koneksi berikut memungkinkan logging level 3 dan menyimpan file log di folder C:\$1temp: `jdbc:redshift://redshift.company.us-west- 1.redshift.amazonaws.com:9000/Default;DSILogLevel=3;LogPath=C:\temp`

1. Untuk memastikan bahwa pengaturan baru berlaku, restart aplikasi JDBC Anda dan sambungkan kembali ke server.

   Driver Amazon Redshift JDBC menghasilkan file log berikut di lokasi yang ditentukan dalam properti: LogPath 
   +  File redshift\$1jdbc.log yang mencatat aktivitas driver yang tidak spesifik untuk koneksi.
   + redshift\$1jdbc\$1connection\$1 [Number] .log file untuk setiap koneksi yang dibuat ke database, di mana [Number] adalah nomor yang mengidentifikasi setiap file log. File ini mencatat aktivitas driver yang khusus untuk koneksi.

Jika LogPath nilainya tidak valid, maka driver mengirimkan informasi yang dicatat ke aliran keluaran standar () `System.out`

# Menggunakan LogStream atau LogWriter
<a name="jdbc20-logstream-option"></a>

Aktifkan logging cukup lama untuk menangkap masalah. Logging mengurangi kinerja dan dapat mengkonsumsi sejumlah besar ruang disk. 

Atur LogLevel kunci di URL koneksi Anda untuk mengaktifkan logging dan tentukan jumlah detail yang dikirim ke LogStream atau LogWriter ditentukan dalam file DriverManager. 

**Untuk mengaktifkan logging yang menggunakan LogStream atau LogWriter:**

1. Untuk mengonfigurasi driver untuk mencatat informasi umum yang menjelaskan kemajuan driver, atur LogLevel properti ke 1 atau INFO.

1. Untuk memastikan bahwa pengaturan baru berlaku, restart aplikasi JDBC Anda dan sambungkan kembali ke server.

# Konversi jenis data
<a name="jdbc20-data-type-mapping"></a>

Driver Amazon Redshift JDBC versi 2.x mendukung banyak format data umum, mengonversi antara jenis data Amazon Redshift, SQL, dan Java.

Tabel berikut mencantumkan pemetaan tipe data yang didukung.


| Jenis Amazon Redshift | Jenis SQL | Jenis Java | 
| --- | --- | --- | 
|  BIGINT  |  SQL\$1BIGINT  |  Panjang  | 
|  BOOLEAN  |  SQL\$1BIT  |  Boolean  | 
|  CHAR  |  SQL\$1CHAR  |  String  | 
|  DATE  |  SQL\$1TYPE\$1DATE  |  java.sql.date  | 
|  DECIMAL  |  SQL\$1NUMERIK  |  BigDecimal  | 
|  DOUBLE PRECISION  |  SQL\$1GANDA  |  Ganda  | 
|  GEOMETRY  |  SQL\$1 LONGVARBINARY  |  byte []  | 
|  INTEGER  |  SQL\$1INTEGER  |  Bilangan Bulat  | 
|  OID  |  SQL\$1BIGINT  |  Panjang  | 
|  SUPER  |  SQL\$1LONGVARCHAR  |  String  | 
|  REAL  |  SQL\$1REAL  |  Desimal  | 
|  SMALLINT  |  SQL\$1SMALLINT  |  Pendek  | 
|  TEXT  |  SQL\$1VARCHAR  |  String  | 
|  TIME  |  SQL\$1TYPE\$1TIME  |  java.sql.waktu  | 
|  JADWAL  |  SQL\$1TYPE\$1TIME  |  java.sql.waktu  | 
|  TIMESTAMP  |  STEMPEL WAKTU SQL\$1TYPE\$1  |  java.sql.TimeStamp  | 
|  TIMESTAMPTZ  |  STEMPEL WAKTU SQL\$1TYPE\$1  |  java.sql.TimeStamp  | 
|  VARCHAR  |  SQL\$1VARCHAR  |  String  | 

# Menggunakan dukungan pernyataan yang disiapkan
<a name="jdbc20-prepared-statement-support"></a>

Driver Amazon Redshift JDBC mendukung pernyataan yang disiapkan. Anda dapat menggunakan pernyataan yang disiapkan untuk meningkatkan kinerja kueri berparameter yang perlu dijalankan beberapa kali selama koneksi yang sama.

*Pernyataan yang disiapkan* adalah pernyataan SQL yang dikompilasi di sisi server tetapi tidak segera dijalankan. Pernyataan yang dikompilasi disimpan di server sebagai PreparedStatement objek sampai Anda menutup objek atau koneksi. Sementara objek itu ada, Anda dapat menjalankan pernyataan yang disiapkan sebanyak yang diperlukan menggunakan nilai parameter yang berbeda, tanpa harus mengkompilasi pernyataan lagi. Overhead yang dikurangi ini memungkinkan kumpulan kueri dijalankan lebih cepat.

Untuk informasi lebih lanjut tentang pernyataan yang disiapkan, lihat “Menggunakan Pernyataan yang Disiapkan” di [tutorial JDBC Basics dari Oracle](https://docs.oracle.com/javase/tutorial/jdbc/basics/prepared.html).

Anda dapat menyiapkan pernyataan yang berisi beberapa kueri. Misalnya, pernyataan disiapkan berikut berisi dua query INSERT:

```
PreparedStatement pstmt = conn.prepareStatement("INSERT INTO
MyTable VALUES (1, 'abc'); INSERT INTO CompanyTable VALUES
(1, 'abc');");
```

Berhati-hatilah agar kueri ini tidak bergantung pada hasil kueri lain yang ditentukan dalam pernyataan yang disiapkan yang sama. Karena kueri tidak berjalan selama langkah persiapan, hasilnya belum dikembalikan, dan tidak tersedia untuk kueri lain dalam pernyataan yang disiapkan yang sama.

Misalnya, pernyataan yang disiapkan berikut, yang membuat tabel dan kemudian menyisipkan nilai ke dalam tabel yang baru dibuat, tidak diperbolehkan:

```
PreparedStatement pstmt = conn.prepareStatement("CREATE
TABLE MyTable(col1 int, col2 varchar); INSERT INTO myTable
VALUES (1, 'abc');");
```

Jika Anda mencoba menyiapkan pernyataan ini, server mengembalikan kesalahan yang menyatakan bahwa tabel tujuan (MyTable) belum ada. Query CREATE harus dijalankan sebelum query INSERT dapat disiapkan.

# Perbedaan antara versi 2.2 dan 1.x dari driver JDBC
<a name="jdbc20-jdbc10-driver-differences"></a>

Bagian ini menjelaskan perbedaan informasi yang dikembalikan oleh versi 2.2 dan 1.x dari driver JDBC. Driver JDBC versi 1.x dihentikan.

Tabel berikut mencantumkan DatabaseMetadata informasi yang dikembalikan oleh fungsi getDatabaseProduct Name () dan getDatabaseProduct Version () untuk setiap versi driver JDBC. Driver JDBC versi 2.2 memperoleh nilai saat membuat koneksi. Driver JDBC versi 1.x memperoleh nilai sebagai hasil dari kueri.


| Versi driver JDBC | getDatabaseProductNama () hasil | getDatabaseProductVersi () hasil | 
| --- | --- | --- | 
|  2.2  |  Redshift  |  8.0.2  | 
|  1.x  |  PostgreSQL  |  08.00.0002  | 

Tabel berikut mencantumkan DatabaseMetadata informasi yang dikembalikan oleh getTypeInfo fungsi untuk setiap versi driver JDBC. 


| Versi driver JDBC | getTypeInfo hasil | 
| --- | --- | 
|  2.2  |  Konsisten dengan tipe data Redshift  | 
|  1.x  |  Konsisten dengan tipe data PostgreSQL  | 

# Membuat file inisialisasi (.ini) untuk driver JDBC versi 2.x
<a name="jdbc20-ini-file"></a>

Dengan menggunakan file inisialisasi (.ini) untuk driver Amazon Redshift JDBC versi 2.x, Anda dapat menentukan parameter konfigurasi tingkat sistem. Misalnya, parameter otentikasi IDP federasi dapat bervariasi untuk setiap aplikasi. File.ini menyediakan lokasi umum untuk klien SQL untuk mendapatkan parameter konfigurasi yang diperlukan. 

Anda dapat membuat file inisialisasi versi 2.x driver JDBC (.ini) yang berisi opsi konfigurasi untuk klien SQL. Nama default file tersebut adalah`rsjdbc.ini`. Driver JDBC versi 2.x memeriksa file.ini di lokasi berikut, terdaftar dalam urutan prioritas:
+ `IniFile`parameter di URL koneksi atau di kotak dialog properti koneksi klien SQL. Pastikan `IniFile` parameter berisi path lengkap ke file.ini, termasuk nama file. Untuk informasi tentang `IniFile` parameter, lihat[IniFile](jdbc20-configuration-options.md#jdbc20-inifile-option). Jika `IniFile` parameter salah menentukan lokasi file.ini, kesalahan akan ditampilkan.
+ Variabel lingkungan seperti AMAZON\$1REDSHIFT\$1JDBC\$1INI\$1FILE dengan path lengkap, termasuk nama file. Anda dapat menggunakan `rsjdbc.ini` atau menentukan nama file. Jika variabel lingkungan AMAZON\$1REDSHIFT\$1JDBC\$1INI\$1FILE salah menentukan lokasi file.ini, kesalahan akan ditampilkan.
+ Direktori tempat file JAR driver berada.
+ Direktori home pengguna.
+ Direktori temp sistem.

Anda dapat mengatur file.ini menjadi beberapa bagian, misalnya [DRIVER]. Setiap bagian berisi pasangan kunci-nilai yang menentukan berbagai parameter koneksi. Anda dapat menggunakan `IniSection` parameter untuk menentukan bagian dalam file.ini. Untuk informasi tentang `IniSection` parameter, lihat[IniSection](jdbc20-configuration-options.md#jdbc20-inisection-option). 

Berikut ini adalah contoh dari format file.ini, dengan bagian untuk [DRIVER], [DEV], [QA], dan [PROD]. Bagian [DRIVER] dapat diterapkan ke koneksi apa pun.

```
[DRIVER]
key1=val1
key2=val2

[DEV]
key1=val1
key2=val2

[QA]
key1=val1
key2=val2

[PROD]
key1=val1
key2=val2
```

Driver JDBC versi 2.x memuat parameter konfigurasi dari lokasi berikut, tercantum dalam urutan prioritas:
+ Parameter konfigurasi default dalam kode aplikasi.
+ Properti bagian [DRIVER] dari file.ini, jika disertakan.
+ Parameter konfigurasi bagian kustom, jika `IniSection` opsi disediakan di URL koneksi atau di kotak dialog properti koneksi klien SQL.
+ Properti dari objek properti koneksi yang ditentukan dalam `getConnection` panggilan.
+ Parameter konfigurasi dipercepat dalam URL koneksi.

# Opsi untuk konfigurasi driver JDBC versi 2.x
<a name="jdbc20-configuration-options"></a>

Berikut ini, Anda dapat menemukan deskripsi untuk opsi yang dapat Anda tentukan untuk driver Amazon Redshift JDBC versi 2.2. Opsi konfigurasi tidak peka huruf besar/kecil.

Anda dapat mengatur properti konfigurasi menggunakan URL koneksi. Untuk informasi selengkapnya, lihat [Membangun URL koneksi](jdbc20-build-connection-url.md).

**Topics**
+ [AccessKeyID](#jdbc20-accesskeyid-option)
+ [Izinkan DBUser Override](#jdbc20-allowdbuseroverride-option)
+ [App\$1ID](#jdbc20-app-id-option)
+ [App\$1Nama](#jdbc20-app-name-option)
+ [ApplicationName](#jdbc20-applicationname-option)
+ [AuthProfile](#jdbc20-authprofile-option)
+ [AutoCreate](#jdbc20-autocreate-option)
+ [Client\$1ID](#jdbc20-client_id-option)
+ [Klien\$1Rahasia](#jdbc20-client_secret-option)
+ [ClusterID](#jdbc20-clusterid-option)
+ [Kompresi](#jdbc20-compression-option)
+ [ConnectTimeout](#jdbc20-connecttimeout-option)
+ [ConnectionTimeZone](#jdbc20-connecttimezone-option)
+ [databaseMetadataCurrentDbOnly](#jdbc20-databasemetadatacurrentdbonly-option)
+ [DbUser](#jdbc20-dbuser-option)
+ [DbGroups](#jdbc20-dbgroups-option)
+ [DBNAME](#jdbc20-dbname-option)
+ [defaultRowFetchUkuran](#jdbc20-defaultrowfetchsize-option)
+ [DisableIsValidQuery](#jdbc20-disableisvalidquery-option)
+ [enableFetchRingPenyangga](#jdbc20-enablefetchringbuffer-option)
+ [enableMultiSqlSupport](#jdbc20-enablemultisqlsupport-option)
+ [fetchRingBufferUkuran](#jdbc20-fetchringbuffersize-option)
+ [ForceLowercase](#jdbc20-forcelowercase-option)
+ [GroupFederation](#jdbc20-groupFederation-option)
+ [HOST](#jdbc20-host-option)
+ [IAMDisableCache](#jdbc20-iamdisablecache-option)
+ [IAMDuration](#jdbc20-iamduration-option)
+ [Idc\$1Client\$1Display\$1Name](#jdbc20-idc_client_display_name)
+ [Wilayah Idc\$1](#jdbc20-idc_region)
+ [IDP\$1Host](#jdbc20-idp_host-option)
+ [IDP\$1partisi](#jdbc20-idp_partition-option)
+ [IDP\$1port](#jdbc20-idp_port-option)
+ [IDP\$1penyewa](#jdbc20-idp_tenant-option)
+ [IDP\$1Response\$1Timeout](#jdbc20-idp_response_timeout-option)
+ [IniFile](#jdbc20-inifile-option)
+ [IniSection](#jdbc20-inisection-option)
+ [ISServerless](#jdbc20-isserverless-option)
+ [Isuer\$1Url](#jdbc20-issuer-url)
+ [Dengarkan\$1Port](#jdbc20-listen-port)
+ [Login\$1URL](#jdbc20-login_url-option)
+ [loginTimeout](#jdbc20-logintimeout-option)
+ [loginToRp](#jdbc20-logintorp-option)
+ [LogLevel](#jdbc20-loglevel-option)
+ [LogPath](#jdbc20-logpath-option)
+ [OverrideSchemaPatternType](#jdbc20-override-schema-pattern-type)
+ [Partner\$1SPID](#jdbc20-partner_spid-option)
+ [Kata Sandi](#jdbc20-password-option)
+ [Plugin\$1Nama](#jdbc20-plugin_name-option)
+ [PELABUHAN](#jdbc20-port-option)
+ [Diutamakan\$1Peran](#jdbc20-preferred_role-option)
+ [Profil](#jdbc20-profile-option)
+ [PWD](#jdbc20-pwd-option)
+ [QueryGroup](#jdbc20-querygroup-option)
+ [ReadOnly](#jdbc20-readonly-option)
+ [Region](#jdbc20-region-option)
+ [reWriteBatchedSisipan](#jdbc20-rewritebatchedinserts-option)
+ [reWriteBatchedInsertsSize](#jdbc20-rewritebatchedinsertssize-option)
+ [roleArn](#jdbc20-rolearn-option)
+ [roleSessionName](#jdbc20-roleaessionname-option)
+ [cakupan](#jdbc20-scope-option)
+ [SecretAccessKey](#jdbc20-secretaccesskey-option)
+ [SessionToken](#jdbc20-sessiontoken-option)
+ [serverlessAcctId](#jdbc20-serverlessacctid-option)
+ [serverlessWorkGroup](#jdbc20-serverlessworkgroup-option)
+ [Pabrik Socket](#jdbc20-socketfactory-option)
+ [socketTimeout](#jdbc20-sockettimeout-option)
+ [SSL](#jdbc20-ssl-option)
+ [SSL\$1tidak aman](#jdbc20-ssl_insecure-option)
+ [SSLCert](#jdbc20-sslcert-option)
+ [SSLFactory](#jdbc20-sslfactory-option)
+ [SSLKey](#jdbc20-sslkey-option)
+ [SSLMode](#jdbc20-sslmode-option)
+ [SSLPassword](#jdbc20-sslpassword-option)
+ [SSLRootSertifikat](#jdbc20-sslrootcert-option)
+ [StsEndpointUrl](#jdbc20-stsendpointurl-option)
+ [tcpKeepAlive](#jdbc20-tcpkeepalive-option)
+ [token](#jdbc20-token-option)
+ [token\$1type](#jdbc20-token-type-option)
+ [UID](#jdbc20-uid-option)
+ [Pengguna](#jdbc20-user-option)
+ [webIdentityToken](#jdbc20-webidentitytoken-option)

## AccessKeyID
<a name="jdbc20-accesskeyid-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Anda dapat menentukan parameter ini untuk memasukkan kunci akses IAM untuk pengguna atau peran. Anda biasanya dapat menemukan kunci dengan melihat dan string atau profil pengguna yang ada. Jika Anda menentukan parameter ini, Anda juga harus menentukan `SecretAccessKey` parameter. Jika diteruskan dalam URL JDBC, AccessKey ID harus dikodekan URL.

Parameter ini bersifat opsional.

## Izinkan DBUser Override
<a name="jdbc20-allowdbuseroverride-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - String

Opsi ini menentukan apakah driver menggunakan `DbUser` nilai dari pernyataan SAMP atau nilai yang ditentukan dalam properti `DbUser` koneksi di URL koneksi. 

Parameter ini bersifat opsional.

**1**  
Pengemudi menggunakan `DbUser` nilai dari pernyataan SAMP.  
Jika pernyataan SAMP tidak menentukan nilai untuk`DBUser`, driver menggunakan nilai yang ditentukan dalam properti koneksi. `DBUser` Jika properti koneksi juga tidak menentukan nilai, driver menggunakan nilai yang ditentukan dalam profil koneksi.

**0**  
Driver menggunakan `DBUser` nilai yang ditentukan dalam properti `DBUser` koneksi.  
Jika properti `DBUser` koneksi tidak menentukan nilai, driver menggunakan nilai yang ditentukan dalam profil koneksi. Jika profil koneksi juga tidak menentukan nilai, driver menggunakan nilai dari pernyataan SAMP.

## App\$1ID
<a name="jdbc20-app-id-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

ID unik yang disediakan OKTA yang terkait dengan aplikasi Amazon Redshift Anda. 

Parameter ini diperlukan jika mengautentikasi melalui layanan Okta.

## App\$1Nama
<a name="jdbc20-app-name-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama aplikasi Okta yang Anda gunakan untuk mengautentikasi koneksi ke Amazon Redshift. 

Parameter ini bersifat opsional.

## ApplicationName
<a name="jdbc20-applicationname-option"></a>
+ **Nilai Default** - null
+ **Tipe Data** - String

Nama aplikasi untuk diteruskan ke Amazon Redshift untuk tujuan audit. 

Parameter ini bersifat opsional.

## AuthProfile
<a name="jdbc20-authprofile-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama profil otentikasi yang akan digunakan untuk menghubungkan ke Amazon Redshift. 

Parameter ini bersifat opsional.

## AutoCreate
<a name="jdbc20-autocreate-option"></a>
+ **Nilai Default** - false
+ **Tipe Data** - Boolean

Opsi ini menentukan apakah driver menyebabkan pengguna baru dibuat ketika pengguna tertentu tidak ada. 

Parameter ini bersifat opsional.

**true**  
Jika pengguna yang ditentukan oleh salah satu `DBUser` atau ID unik (UID) tidak ada, pengguna baru dengan nama itu akan dibuat.

**false**  
Driver tidak menyebabkan pengguna baru dibuat. Jika pengguna yang ditentukan tidak ada, otentikasi gagal.

## Client\$1ID
<a name="jdbc20-client_id-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

ID klien yang akan digunakan saat mengautentikasi koneksi menggunakan layanan Azure AD. 

Parameter ini diperlukan jika mengautentikasi melalui layanan Azure AD.

## Klien\$1Rahasia
<a name="jdbc20-client_secret-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Rahasia Klien untuk digunakan saat mengautentikasi koneksi menggunakan layanan Azure AD. 

Parameter ini diperlukan jika mengautentikasi melalui layanan Azure AD.

## ClusterID
<a name="jdbc20-clusterid-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama cluster Amazon Redshift yang ingin Anda sambungkan. Pengemudi mencoba mendeteksi parameter ini dari host yang diberikan. Jika Anda menggunakan Network Load Balancer (NLB) dan terhubung melalui IAM, driver akan gagal mendeteksinya, sehingga Anda dapat mengaturnya menggunakan opsi koneksi ini. 

Parameter ini bersifat opsional.

## Kompresi
<a name="jdbc20-compression-option"></a>
+ **Nilai Default** - off
+ **Tipe Data** - String

Metode kompresi yang digunakan untuk komunikasi protokol kawat antara server Amazon Redshift dan klien atau driver.

Parameter ini bersifat opsional.

Anda dapat menentukan salah satu nilai berikut:
+ **lz4**

  Menetapkan metode kompresi yang digunakan untuk komunikasi protokol kawat dengan Amazon Redshift ke lz4.
+ **off**

  Tidak menggunakan kompresi untuk komunikasi protokol kawat dengan Amazon Redshift.

## ConnectTimeout
<a name="jdbc20-connecttimeout-option"></a>
+ **Nilai Default** - 10
+ **Tipe Data** - Integer

Nilai batas waktu yang digunakan untuk operasi koneksi soket. Jika waktu yang diperlukan untuk membuat koneksi Amazon Redshift melebihi nilai ini, koneksi dianggap tidak tersedia. Batas waktu ditentukan dalam hitungan detik. Nilai 0 berarti tidak ada batas waktu yang ditentukan.

Parameter ini bersifat opsional.

## ConnectionTimeZone
<a name="jdbc20-connecttimezone-option"></a>
+ **Nilai Default** - LOKAL
+ **Tipe Data** - String

Zona waktu tingkat sesi.

Parameter ini bersifat opsional.

Anda dapat menentukan salah satu nilai berikut:

**LOKAL**  
Mengkonfigurasi zona waktu tingkat sesi ke zona waktu JVM LOKAL.

**PELADEN**  
Mengonfigurasi zona waktu tingkat sesi ke zona waktu yang ditetapkan untuk pengguna di server Amazon Redshift. Anda dapat mengonfigurasi zona waktu tingkat sesi untuk pengguna dengan perintah berikut:  

```
ALTER USER
[...]
SET TIMEZONE TO [...];
```

## databaseMetadataCurrentDbOnly
<a name="jdbc20-databasemetadatacurrentdbonly-option"></a>
+ **Nilai Default** - benar
+ **Tipe Data** - Boolean

Opsi ini menentukan apakah API metadata mengambil data dari semua database yang dapat diakses atau hanya dari database yang terhubung. 

Parameter ini bersifat opsional.

Anda dapat menentukan salah satu nilai berikut:

**true**  
Aplikasi mengambil metadata dari database tunggal.

**false**  
Aplikasi mengambil metadata dari semua database yang dapat diakses.

## DbUser
<a name="jdbc20-dbuser-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

ID pengguna untuk digunakan dengan akun Amazon Redshift Anda. Anda dapat menggunakan ID yang saat ini tidak ada jika Anda telah mengaktifkan AutoCreate properti. 

Parameter ini bersifat opsional.

## DbGroups
<a name="jdbc20-dbgroups-option"></a>
+ **Nilai Default** - PUBLIK
+ **Tipe Data** - String

Daftar dipisahkan koma dari nama grup database yang ada yang `DBUser` bergabung untuk sesi saat ini. 

Parameter ini bersifat opsional.

## DBNAME
<a name="jdbc20-dbname-option"></a>
+ **Nilai Default** - null
+ **Tipe Data** - String

Nama database untuk terhubung. Anda dapat menggunakan opsi ini untuk menentukan nama database di URL koneksi JDBC. 

Parameter ini diperlukan. Anda harus menentukan nama database, baik di URL koneksi atau di properti koneksi aplikasi klien.

## defaultRowFetchUkuran
<a name="jdbc20-defaultrowfetchsize-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Integer

Opsi ini menentukan nilai default untuk getFetchSize. 

Parameter ini bersifat opsional.

Anda dapat menentukan salah satu nilai berikut:

**0**  
Ambil semua baris dalam satu operasi.

**Integer positif**  
Jumlah baris yang akan diambil dari database untuk setiap iterasi pengambilan. ResultSet

## DisableIsValidQuery
<a name="jdbc20-disableisvalidquery-option"></a>
+ **Nilai Default** - Salah
+ **Tipe Data** - Boolean

Opsi ini menentukan apakah driver mengirimkan query database baru saat menggunakan metode connection.isValid () untuk menentukan apakah koneksi database aktif. 

Parameter ini bersifat opsional.

**true**  
Driver tidak mengirimkan kueri saat menggunakan Connection.isValid () untuk menentukan apakah koneksi database aktif. Hal ini dapat menyebabkan driver salah mengidentifikasi koneksi database sebagai aktif jika server database telah dimatikan secara tak terduga.

**false**  
Driver mengirimkan kueri saat menggunakan connection.isValid () untuk menentukan apakah koneksi database aktif.

## enableFetchRingPenyangga
<a name="jdbc20-enablefetchringbuffer-option"></a>
+ **Nilai Default** - benar
+ **Tipe Data** - Boolean

Opsi ini menentukan bahwa driver mengambil baris menggunakan buffer cincin pada utas terpisah. Parameter fetchRingBuffer Ukuran menentukan ukuran buffer cincin. 

Buffer ring mengimplementasikan manajemen memori otomatis di JDBC untuk mencegah kesalahan out-of-memory (OOM) selama operasi pengambilan data. Buffer ring memantau ukuran sebenarnya dari data buffer secara real-time, memastikan penggunaan memori total oleh driver tetap dalam batas yang ditentukan. Ketika kapasitas buffer tercapai, driver menghentikan operasi pengambilan data, mencegah memori meluap tanpa memerlukan intervensi manual. Pengamanan bawaan ini menghilangkan kesalahan OOM secara otomatis, tanpa konfigurasi yang diperlukan dari pengguna.

Jika transaksi mendeteksi Pernyataan yang berisi beberapa perintah SQL yang dipisahkan oleh titik koma, buffer ring fetch untuk transaksi tersebut disetel ke false. enableFetchRingNilai buffer tidak berubah. 

Parameter ini bersifat opsional.

**catatan**  
Ketika buffer cincin dinonaktifkan dan ukuran pengambilan tidak dikonfigurasi dengan benar, masalah out-of-memory (OOM) dapat terjadi. [Untuk informasi selengkapnya tentang mengonfigurasi ukuran pengambilan, lihat di sini.](https://docs.aws.amazon.com/redshift/latest/dg/set-the-JDBC-fetch-size-parameter.html)

## enableMultiSqlSupport
<a name="jdbc20-enablemultisqlsupport-option"></a>
+ **Nilai Default** - benar
+ **Tipe Data** - Boolean

Opsi ini menentukan apakah akan memproses beberapa perintah SQL dipisahkan oleh titik koma dalam Pernyataan. 

Parameter ini bersifat opsional.

Anda dapat menentukan salah satu nilai berikut:

**true**  
Driver memproses beberapa perintah SQL, dipisahkan oleh titik koma, dalam objek Pernyataan.

**false**  
Driver mengembalikan kesalahan untuk beberapa perintah SQL dalam satu Pernyataan.

## fetchRingBufferUkuran
<a name="jdbc20-fetchringbuffersize-option"></a>
+ **Nilai Default** - 1G
+ **Tipe Data** - String

Opsi ini menentukan ukuran buffer cincin yang digunakan saat mengambil set hasil. Anda dapat menentukan ukuran dalam byte, misalnya 1K untuk 1 KB, 5000 untuk 5.000 byte, 1M untuk 1 MB, 1G untuk 1 GB, dan seterusnya. Anda juga dapat menentukan persentase memori heap. Pengemudi berhenti mengambil baris setelah mencapai batas. Mengambil dilanjutkan saat aplikasi membaca baris dan membebaskan ruang di buffer ring. 

Parameter ini bersifat opsional.

## ForceLowercase
<a name="jdbc20-forcelowercase-option"></a>
+ **Nilai Default** - false
+ **Tipe Data** - Boolean

Opsi ini menentukan apakah driver huruf kecil semua grup database (DbGroups) yang dikirim dari penyedia identitas ke Amazon Redshift saat menggunakan autentikasi masuk tunggal. 

Parameter ini bersifat opsional.

**true**  
Driver huruf kecil semua grup database yang dikirim dari penyedia identitas.

**false**  
Pengemudi tidak mengubah grup basis data.

## GroupFederation
<a name="jdbc20-groupFederation-option"></a>
+ **Nilai Default** - false
+ **Tipe Data** - Boolean

Opsi ini menentukan apakah akan menggunakan grup IDP Amazon Redshift. Ini didukung oleh API GetClusterCredentials V2. 

Parameter ini bersifat opsional.

**true**  
Gunakan grup Amazon Redshift Identity Provider (IDP).

**false**  
Gunakan STS API dan GetClusterCredentials untuk federasi pengguna dan tentukan secara eksplisit DbGroups untuk koneksi.

## HOST
<a name="jdbc20-host-option"></a>
+ **Nilai Default** - null
+ **Tipe Data** - String

Nama host dari server Amazon Redshift untuk terhubung. Anda dapat menggunakan opsi ini untuk menentukan nama host di URL koneksi JDBC. 

Parameter ini diperlukan. Anda harus menentukan nama host, baik di URL koneksi atau di properti koneksi aplikasi klien.

## IAMDisableCache
<a name="jdbc20-iamdisablecache-option"></a>
+ **Nilai Default** - false
+ **Tipe Data** - Boolean

Opsi ini menentukan apakah kredensyal IAM di-cache.

Parameter ini bersifat opsional.

**true**  
Kredensi IAM tidak di-cache.

**false**  
Kredensi IAM di-cache. Ini meningkatkan kinerja saat permintaan ke gateway API dibatasi, misalnya.

## IAMDuration
<a name="jdbc20-iamduration-option"></a>
+ **Nilai Default** - 900
+ **Tipe Data** - Integer

Lamanya waktu, dalam hitungan detik, hingga kredensyal IAM sementara kedaluwarsa. 
+ **Nilai minimum** - 900
+ **Nilai maksimum** - 3.600

Parameter ini bersifat opsional.

## Idc\$1Client\$1Display\$1Name
<a name="jdbc20-idc_client_display_name"></a>
+ **Nilai Default** - Driver Amazon Redshift JDBC
+ **Tipe Data** - String

Nama tampilan yang akan digunakan untuk klien yang menggunakan BrowserIdcAuthPlugin.

Parameter ini bersifat opsional.

## Wilayah Idc\$1
<a name="jdbc20-idc_region"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

 AWS Wilayah di mana instans IAM Identity Center berada.

Parameter ini diperlukan hanya ketika mengautentikasi menggunakan `BrowserIdcAuthPlugin` dalam opsi konfigurasi plugin\$1name.

## IDP\$1Host
<a name="jdbc20-idp_host-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Host iDP (penyedia identitas) yang Anda gunakan untuk mengautentikasi ke Amazon Redshift. Ini dapat ditentukan baik dalam string koneksi atau dalam profil. 

Parameter ini bersifat opsional.

## IDP\$1partisi
<a name="jdbc20-idp_partition-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Menentukan partisi cloud tempat penyedia identitas Anda (iDP) dikonfigurasi. Ini menentukan titik akhir otentikasi IDP mana yang terhubung ke driver.

Jika parameter ini dibiarkan kosong, driver default ke partisi komersial. Kemungkinan nilainya adalah:
+  `us-gov`: Gunakan nilai ini jika IDP Anda dikonfigurasi di Azure Government. Misalnya, Azure AD Government menggunakan `login.microsoftonline.us` endpoint.
+  `cn`: Gunakan nilai ini jika IDP Anda dikonfigurasi di partisi cloud Tiongkok. Misalnya, Azure AD Tiongkok menggunakan titik akhir. `login.chinacloudapi.cn` 

Parameter ini bersifat opsional.

## IDP\$1port
<a name="jdbc20-idp_port-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Port yang digunakan oleh iDP (penyedia identitas). Anda dapat menentukan port baik dalam string koneksi atau dalam profil. Port default adalah 5439. Bergantung pada port yang Anda pilih saat membuat, memodifikasi, atau memigrasi klaster, izinkan akses ke port yang dipilih. 

Parameter ini bersifat opsional.

## IDP\$1penyewa
<a name="jdbc20-idp_tenant-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

ID penyewa Azure AD untuk aplikasi Amazon Redshift Anda. 

Parameter ini diperlukan jika mengautentikasi melalui layanan Azure AD.

## IDP\$1Response\$1Timeout
<a name="jdbc20-idp_response_timeout-option"></a>
+ **Nilai Default** - 120
+ **Tipe Data** - Integer

Jumlah waktu, dalam hitungan detik, driver menunggu respons SAMP dari penyedia identitas saat menggunakan layanan SAMP atau Azure AD melalui plugin browser. 

Parameter ini bersifat opsional.

## IniFile
<a name="jdbc20-inifile-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Jalur lengkap dari file.ini, termasuk nama file. Contoh:

```
IniFile="C:\tools\rsjdbc.ini"
```

Untuk informasi tentang file.ini, lihat[Membuat file inisialisasi (.ini) untuk driver JDBC versi 2.x](jdbc20-ini-file.md).

Parameter ini bersifat opsional.

## IniSection
<a name="jdbc20-inisection-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama bagian dalam file.ini yang berisi opsi konfigurasi. Untuk informasi tentang file.ini, lihat[Membuat file inisialisasi (.ini) untuk driver JDBC versi 2.x](jdbc20-ini-file.md). 

Contoh berikut menentukan bagian [Prod] dari file.ini:

```
IniSection="Prod"
```

Parameter ini bersifat opsional.

## ISServerless
<a name="jdbc20-isserverless-option"></a>
+ **Nilai Default** - false
+ **Tipe Data** - Boolean

Opsi ini menentukan apakah host endpoint Amazon Redshift adalah instance tanpa server. Pengemudi mencoba mendeteksi parameter ini dari host yang diberikan. Jika Anda menggunakan Network Load Balancer (NLB), driver akan gagal mendeteksinya, sehingga Anda dapat mengaturnya di sini. 

Parameter ini bersifat opsional.

**true**  
Host endpoint Amazon Redshift adalah instance tanpa server.

**false**  
Host endpoint Amazon Redshift adalah cluster yang disediakan.

## Isuer\$1Url
<a name="jdbc20-issuer-url"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Menunjuk ke titik akhir instance server AWS IAM Identity Center. 

Parameter ini diperlukan hanya ketika mengautentikasi menggunakan `BrowserIdcAuthPlugin` dalam opsi konfigurasi plugin\$1name.

## Dengarkan\$1Port
<a name="jdbc20-listen-port"></a>
+ **Nilai default** - 7890
+ **Tipe Data** - Integer

Port yang digunakan driver untuk menerima respons SAMP dari penyedia identitas atau kode otorisasi saat menggunakan layanan SAMP, Azure AD, atau AWS Identity Center melalui plugin browser.

Parameter ini bersifat opsional.

## Login\$1URL
<a name="jdbc20-login_url-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

URL untuk sumber daya di situs web penyedia identitas saat menggunakan layanan SAMP atau Azure AD melalui plugin browser. 

Parameter ini diperlukan jika mengautentikasi dengan layanan SAMP atau Azure AD melalui plugin browser.

## loginTimeout
<a name="jdbc20-logintimeout-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Integer

Jumlah detik untuk menunggu sebelum waktu habis saat menghubungkan dan mengautentikasi ke server. Jika membuat koneksi membutuhkan waktu lebih lama dari ambang ini, maka koneksi dibatalkan. 

Ketika properti ini disetel ke 0, koneksi tidak akan habis waktu.

Parameter ini bersifat opsional.

## loginToRp
<a name="jdbc20-logintorp-option"></a>
+ **Nilai Default** - `urn:amazon:webservices`
+ **Tipe Data** - String

Pihak yang mengandalkan percaya bahwa Anda ingin menggunakan untuk jenis otentikasi AD FS. 

Parameter ini bersifat opsional.

## LogLevel
<a name="jdbc20-loglevel-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Integer

Gunakan properti ini untuk mengaktifkan atau mematikan logging di driver dan untuk menentukan jumlah detail yang disertakan dalam file log. 

Aktifkan logging hanya cukup lama untuk menangkap masalah. Logging mengurangi kinerja dan dapat mengkonsumsi sejumlah besar ruang disk.

Parameter ini bersifat opsional.

Atur parameter ke salah satu nilai berikut:

**0**  
Nonaktifkan semua logging.

**1**  
Aktifkan logging pada level FATAL, yang mencatat peristiwa kesalahan yang sangat parah yang akan menyebabkan pengemudi membatalkan.

**2**  
Aktifkan logging pada level ERROR, yang mencatat peristiwa kesalahan yang mungkin masih memungkinkan driver untuk terus berjalan.

**3**  
Aktifkan pencatatan pada tingkat PERINGATAN, yang mencatat peristiwa yang mungkin mengakibatkan kesalahan jika tindakan tidak dilakukan.

**4**  
Aktifkan logging pada tingkat INFO, yang mencatat informasi umum yang menjelaskan kemajuan driver.

**5**  
Aktifkan logging pada level DEBUG, yang mencatat informasi terperinci yang berguna untuk men-debug driver.

**6**  
Aktifkan logging pada level TRACE, yang mencatat semua aktivitas driver.

Saat logging diaktifkan, driver menghasilkan file log berikut di lokasi yang ditentukan dalam `LogPath` properti:
+ **`redshift_jdbc.log`**— File yang mencatat aktivitas driver yang tidak spesifik untuk koneksi.
+ **`redshift_jdbc_connection_[Number].log`**— File untuk setiap koneksi yang dibuat ke database, di mana `[Number]` adalah nomor yang membedakan setiap file log dari yang lain. File ini mencatat aktivitas driver yang khusus untuk koneksi. 

Jika LogPath nilainya tidak valid, driver mengirimkan informasi yang dicatat ke aliran output standar,. `System.out`

## LogPath
<a name="jdbc20-logpath-option"></a>
+ **Nilai Default** - Direktori kerja saat ini.
+ **Tipe Data** - String

Jalur lengkap ke folder tempat driver menyimpan file log saat properti DSILog Level diaktifkan. 

Untuk memastikan bahwa URL koneksi kompatibel dengan semua aplikasi JDBC, kami sarankan Anda melarikan diri dari garis miring terbalik (\$1) di jalur file Anda dengan mengetik garis miring terbalik lainnya.

Parameter ini bersifat opsional.

## OverrideSchemaPatternType
<a name="jdbc20-override-schema-pattern-type"></a>
+ **Nilai Default** - null
+ **Tipe Data** - Integer

Opsi ini menentukan apakah akan mengganti jenis query yang digunakan dalam panggilan getTables.

**0**  
Tidak ada Skema Universal Query

**1**  
Kueri Skema Lokal

**2**  
Kueri Skema Eksternal

Parameter ini bersifat opsional.

## Partner\$1SPID
<a name="jdbc20-partner_spid-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nilai SPID mitra (ID penyedia layanan) yang akan digunakan saat mengautentikasi koneksi menggunakan layanan. PingFederate 

Parameter ini bersifat opsional.

## Kata Sandi
<a name="jdbc20-password-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Saat menghubungkan menggunakan otentikasi IAM melalui IDP, ini adalah kata sandi untuk server IDP\$1Host. Saat menggunakan otentikasi standar, ini dapat digunakan untuk kata sandi database Amazon Redshift alih-alih PWD. 

Parameter ini bersifat opsional.

## Plugin\$1Nama
<a name="jdbc20-plugin_name-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama kelas yang sepenuhnya memenuhi syarat untuk mengimplementasikan plugin penyedia kredensional tertentu. 

Parameter ini bersifat opsional.

Opsi penyedia berikut didukung:
+ **`AdfsCredentialsProvider`**— Layanan Federasi Direktori Aktif.
+ **`AzureCredentialsProvider`**— Layanan Microsoft Azure Active Directory (AD).
+ **`BasicJwtCredentialsProvider`**— Layanan Token Web JSON (JWT).
+ **`BasicSamlCredentialsProvider`**— Kredensyal Security Assertion Markup Language (SAMP) yang dapat Anda gunakan dengan banyak penyedia layanan SAMP.
+ **`BrowserAzureCredentialsProvider`**— Browser Layanan Microsoft Azure Active Directory (AD).
+ **`BrowserAzureOAuth2CredentialsProvider`**— Layanan Browser Microsoft Azure Active Directory (AD) untuk Otentikasi Asli.
+ **`BrowserIdcAuthPlugin`**- Plugin otorisasi menggunakan AWS IAM Identity Center.
+ **`BrowserSamlCredentialsProvider`**— Browser SAMP untuk layanan SAMP seperti Okta, Ping, atau ADFS.
+ **`IdpTokenAuthPlugin`**- Plugin otorisasi yang menerima token AWS IAM Identity Center atau OpenID Connect (OIDC) JSON berbasis token identitas (JWT) dari penyedia identitas web mana pun yang terhubung ke IAM Identity Center. AWS 
+ **`OktaCredentialsProvider`**— Layanan Okta.
+ **`PingCredentialsProvider`**— PingFederate Layanan.

## PELABUHAN
<a name="jdbc20-port-option"></a>
+ **Nilai Default** - null
+ **Tipe Data** - Integer

Port server Amazon Redshift untuk terhubung. Anda dapat menggunakan opsi ini untuk menentukan port di URL koneksi JDBC. 

Parameter ini bersifat opsional.

## Diutamakan\$1Peran
<a name="jdbc20-preferred_role-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Peran IAM yang ingin Anda asumsikan selama koneksi ke Amazon Redshift. 

Parameter ini bersifat opsional.

## Profil
<a name="jdbc20-profile-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama profil yang akan digunakan untuk otentikasi IAM. Profil ini berisi properti koneksi tambahan yang tidak ditentukan dalam string koneksi. 

Parameter ini bersifat opsional.

## PWD
<a name="jdbc20-pwd-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Kata sandi yang sesuai dengan nama pengguna Amazon Redshift yang Anda berikan menggunakan UID properti. 

Parameter ini bersifat opsional.

## QueryGroup
<a name="jdbc20-querygroup-option"></a>
+ **Nilai Default** - null
+ **Tipe Data** - String

Opsi ini menetapkan kueri ke antrian saat runtime dengan menetapkan kueri Anda ke grup kueri yang sesuai. Grup kueri diatur untuk sesi. Semua kueri yang berjalan pada koneksi milik grup kueri ini. 

Parameter ini bersifat opsional.

## ReadOnly
<a name="jdbc20-readonly-option"></a>
+ **Nilai Default** - false
+ **Tipe Data** - Boolean

Properti ini menentukan apakah driver dalam mode read-only. 

Parameter ini bersifat opsional.

**true**  
Koneksi dalam mode read-only dan tidak dapat menulis ke penyimpanan data.

**false**  
Koneksi tidak dalam mode read-only dan dapat menulis ke penyimpanan data.

## Region
<a name="jdbc20-region-option"></a>
+ **Nilai Default** - null
+ **Tipe Data** - String

Opsi ini menentukan AWS Wilayah di mana cluster berada. Jika Anda menentukan StsEndPoint opsi, opsi Wilayah diabaikan. Operasi Redshift `GetClusterCredentials` API juga menggunakan opsi Region. 

Parameter ini bersifat opsional.

## reWriteBatchedSisipan
<a name="jdbc20-rewritebatchedinserts-option"></a>
+ **Nilai Default** - false
+ **Tipe Data** - Boolean

Opsi ini memungkinkan pengoptimalan untuk menulis ulang dan menggabungkan pernyataan INSERT yang kompatibel ke dalam batch. 

Parameter ini bersifat opsional.

## reWriteBatchedInsertsSize
<a name="jdbc20-rewritebatchedinsertssize-option"></a>
+ **Nilai Default** - 128
+ **Tipe Data** - Integer

Opsi ini memungkinkan pengoptimalan untuk menulis ulang dan menggabungkan pernyataan INSERT yang kompatibel ke dalam batch. Nilai ini harus meningkat secara eksponensial dengan kekuatan 2. 

Parameter ini bersifat opsional.

## roleArn
<a name="jdbc20-rolearn-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama Sumber Daya Amazon (ARN) peran. Pastikan untuk menentukan parameter ini saat Anda menentukan opsi BasicJwtCredentialsProvider Plugin\$1Name. Anda menentukan ARN dalam format berikut: 

`arn:partition:service:region:account-id:resource-id`

Parameter ini diperlukan jika Anda menentukan BasicJwtCredentialsProvider untuk opsi Plugin\$1Name.

## roleSessionName
<a name="jdbc20-roleaessionname-option"></a>
+ **Nilai Default** - jwt\$1redshift\$1session
+ **Tipe Data** - String

Sebuah pengenal untuk sesi peran yang diambil. Biasanya, Anda melewati nama atau pengenal yang terkait dengan pengguna aplikasi Anda. Kredensil keamanan sementara yang digunakan aplikasi Anda terkait dengan pengguna tersebut. Anda dapat menentukan parameter ini ketika Anda menentukan BasicJwtCredentialsProvider untuk opsi Plugin\$1Name. 

Parameter ini bersifat opsional.

## cakupan
<a name="jdbc20-scope-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Daftar cakupan yang dipisahkan ruang yang dapat disetujui pengguna. Anda menentukan parameter ini sehingga aplikasi Microsoft Azure Anda bisa mendapatkan persetujuan untuk APIs yang ingin Anda panggil. Anda dapat menentukan parameter ini ketika Anda menentukan BrowserAzure OAuth2 CredentialsProvider untuk opsi Plugin\$1Name. 

Parameter ini diperlukan untuk BrowserAzure OAuth2 CredentialsProvider plug-in.

## SecretAccessKey
<a name="jdbc20-secretaccesskey-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Kunci akses IAM untuk pengguna atau peran. Jika ini ditentukan, maka AccessKey ID juga harus ditentukan. Jika diteruskan dalam URL JDBC, SecretAccessKey harus dikodekan URL. 

Parameter ini bersifat opsional.

## SessionToken
<a name="jdbc20-sessiontoken-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Token sesi IAM sementara yang terkait dengan peran IAM yang Anda gunakan untuk mengautentikasi. Jika diteruskan dalam URL JDBC, token sesi IAM sementara harus dikodekan URL. 

Parameter ini bersifat opsional.

## serverlessAcctId
<a name="jdbc20-serverlessacctid-option"></a>
+ **Nilai Default** - null
+ **Tipe Data** - String

ID akun Tanpa Server Amazon Redshift. Pengemudi mencoba mendeteksi parameter ini dari host yang diberikan. Jika Anda menggunakan Network Load Balancer (NLB), driver akan gagal mendeteksinya, sehingga Anda dapat mengaturnya di sini. 

Parameter ini bersifat opsional.

## serverlessWorkGroup
<a name="jdbc20-serverlessworkgroup-option"></a>
+ **Nilai Default** - null
+ **Tipe Data** - String

Nama workgroup Amazon Redshift Tanpa Server. Pengemudi mencoba mendeteksi parameter ini dari host yang diberikan. Jika Anda menggunakan Network Load Balancer (NLB), driver akan gagal mendeteksinya, sehingga Anda dapat mengaturnya di sini. 

Parameter ini bersifat opsional.

## Pabrik Socket
<a name="jdbc20-socketfactory-option"></a>
+ **Nilai Default** - null
+ **Tipe Data** - String

Opsi ini menentukan pabrik soket untuk pembuatan soket. 

Parameter ini bersifat opsional.

## socketTimeout
<a name="jdbc20-sockettimeout-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Integer

Jumlah detik untuk menunggu selama operasi pembacaan soket sebelum waktu habis. Jika operasi memakan waktu lebih lama dari ambang ini, maka koneksi ditutup. Ketika properti ini disetel ke 0, koneksi tidak akan habis waktu. 

Parameter ini bersifat opsional.

## SSL
<a name="jdbc20-ssl-option"></a>
+ **Nilai Default** - BENAR
+ **Tipe Data** - String

Gunakan properti ini untuk mengaktifkan atau mematikan SSL untuk koneksi. 

Parameter ini bersifat opsional.

Anda dapat menentukan salah satu nilai berikut:

**BETUL**  
Driver terhubung ke server melalui SSL.

**SALAH**  
Driver terhubung ke server tanpa menggunakan SSL. Opsi ini tidak didukung dengan otentikasi IAM.

Atau, Anda dapat mengkonfigurasi AuthMech properti.

## SSL\$1tidak aman
<a name="jdbc20-ssl_insecure-option"></a>
+ **Nilai Default** - benar
+ **Tipe Data** - String

Properti ini menunjukkan apakah sertifikat server host IDP harus diverifikasi.

Parameter ini bersifat opsional.

Anda dapat menentukan salah satu nilai berikut:

**true**  
Pengemudi tidak memeriksa keaslian sertifikat server IDP.

**false**  
Pengemudi memeriksa keaslian sertifikat server IDP.

## SSLCert
<a name="jdbc20-sslcert-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Jalur lengkap file.pem atau .crt yang berisi sertifikat CA tepercaya tambahan untuk memverifikasi instance server Amazon Redshift saat menggunakan SSL. 

Parameter ini diperlukan jika SSLKey ditentukan.

## SSLFactory
<a name="jdbc20-sslfactory-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Pabrik SSL untuk digunakan saat menghubungkan ke server melalui TLS/SSL tanpa menggunakan sertifikat server. 

## SSLKey
<a name="jdbc20-sslkey-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Jalur lengkap dari file.der yang berisi file PKCS8 kunci untuk memverifikasi sertifikat yang ditentukan dalam SSLCert file. 

Parameter ini diperlukan jika SSLCert ditentukan.

## SSLMode
<a name="jdbc20-sslmode-option"></a>
+ **Nilai Default** - verify-ca
+ **Tipe Data** - String

Gunakan properti ini untuk menentukan bagaimana driver memvalidasi sertifikat saat TLS/SSL diaktifkan. 

Parameter ini bersifat opsional.

Anda dapat menentukan salah satu nilai berikut:

**verify-ca**  
Pengemudi memverifikasi bahwa sertifikat tersebut berasal dari otoritas sertifikat tepercaya (CA).

**verify-full**  
Pengemudi memverifikasi bahwa sertifikat berasal dari CA tepercaya dan bahwa nama host dalam sertifikat cocok dengan nama host yang ditentukan dalam URL koneksi.

## SSLPassword
<a name="jdbc20-sslpassword-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - String

Kata sandi untuk file kunci terenkripsi yang ditentukan dalam. SSLKey 

Parameter ini diperlukan jika SSLKey ditentukan dan file kunci dienkripsi.

## SSLRootSertifikat
<a name="jdbc20-sslrootcert-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Jalur lengkap file.pem atau .crt yang berisi sertifikat CA root untuk memverifikasi instance Amazon Redshift Server saat menggunakan SSL. 

## StsEndpointUrl
<a name="jdbc20-stsendpointurl-option"></a>
+ **Nilai Default** - null
+ **Tipe Data** - String

Anda dapat menentukan titik akhir AWS Security Token Service (AWS STS). Jika Anda menentukan opsi ini, opsi Wilayah diabaikan. Anda hanya dapat menentukan protokol aman (HTTPS) untuk titik akhir ini. 

## tcpKeepAlive
<a name="jdbc20-tcpkeepalive-option"></a>
+ **Nilai Default** - BENAR
+ **Tipe Data** - String

Gunakan properti ini untuk mengaktifkan atau mematikan keepalives TCP. 

Parameter ini bersifat opsional.

Anda dapat menentukan salah satu nilai berikut:

**BETUL**  
Driver menggunakan TCP keepalives untuk mencegah koneksi dari timing out.

**SALAH**  
Driver tidak menggunakan TCP keepalives.

## token
<a name="jdbc20-token-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Pusat AWS Identitas IAM menyediakan token akses atau OpenID Connect (OIDC) JSON Web Token (JWT) yang disediakan oleh penyedia identitas web yang terhubung dengan IAM Identity Center. AWS Aplikasi Anda harus menghasilkan token ini dengan mengautentikasi pengguna aplikasi Anda dengan AWS IAM Identity Center atau penyedia identitas yang ditautkan dengan AWS IAM Identity Center. 

Parameter ini bekerja dengan`IdpTokenAuthPlugin`.

## token\$1type
<a name="jdbc20-token-type-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Jenis token yang digunakan di`IdpTokenAuthPlugin`.

Anda dapat menentukan salah satu nilai berikut:

**ACCESS\$1TOKEN**  
Masukkan ini jika Anda menggunakan token akses yang disediakan Pusat Identitas AWS IAM.

**EXT\$1JWT**  
Masukkan ini jika Anda menggunakan OpenID Connect (OIDC) JSON Web Token (JWT) yang disediakan oleh penyedia identitas berbasis web yang terintegrasi dengan IAM Identity Center. AWS 

Parameter ini bekerja dengan`IdpTokenAuthPlugin`.

## UID
<a name="jdbc20-uid-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama pengguna database yang Anda gunakan untuk mengakses database.

Parameter ini diperlukan.

## Pengguna
<a name="jdbc20-user-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Saat menghubungkan menggunakan otentikasi IAM melalui IDP, ini adalah nama pengguna untuk server idp\$1host. Saat menggunakan otentikasi standar, ini dapat digunakan untuk nama pengguna database Amazon Redshift. 

Parameter ini bersifat opsional.

## webIdentityToken
<a name="jdbc20-webidentitytoken-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Token akses OAuth 2.1 atau token OpenID Connect ID yang disediakan oleh penyedia identitas. Aplikasi Anda harus mendapatkan token ini dengan mengautentikasi pengguna aplikasi Anda dengan penyedia identitas web. Pastikan untuk menentukan parameter ini saat Anda menentukan opsi BasicJwtCredentialsProvider Plugin\$1Name. 

Parameter ini diperlukan jika Anda menentukan BasicJwtCredentialsProvider untuk opsi Plugin\$1Name.

# Versi sebelumnya dari JDBC driver version 2.x
<a name="jdbc20-previous-driver-version-20"></a>

Unduh versi sebelumnya dari driver Amazon Redshift JDBC versi 2.x hanya jika alat Anda memerlukan versi driver tertentu. 

Ini adalah driver JDBC versi 2.x versi 2.x yang kompatibel dengan JDBC 4.2 sebelumnya:
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.4/redshift-jdbc42-2.2.4.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.4/redshift-jdbc42-2.2.4.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.2.4/redshift-jdbc42-2.2.4.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.2.4/redshift-jdbc42-2.2.4.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.3/redshift-jdbc42-2.2.3.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.3/redshift-jdbc42-2.2.3.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.2.3/redshift-jdbc42-2.2.3.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.2.3/redshift-jdbc42-2.2.3.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.2/redshift-jdbc42-2.2.2.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.2/redshift-jdbc42-2.2.2.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.2.2/redshift-jdbc42-2.2.2.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.2.2/redshift-jdbc42-2.2.2.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.1/redshift-jdbc42-2.2.1.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.1/redshift-jdbc42-2.2.1.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.2.1/redshift-jdbc42-2.2.1.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.2.1/redshift-jdbc42-2.2.1.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.0/redshift-jdbc42-2.2.0.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.2.0/redshift-jdbc42-2.2.0.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.2.0/redshift-jdbc42-2.2.0.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.2.0/redshift-jdbc42-2.2.0.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.34/redshift-jdbc42-2.1.0.34.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.34/redshift-jdbc42-2.1.0.34.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.34/redshift-jdbc42-2.1.0.34.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.34/redshift-jdbc42-2.1.0.34.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.33/redshift-jdbc42-2.1.0.33.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.33/redshift-jdbc42-2.1.0.33.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.33/redshift-jdbc42-2.1.0.33.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.33/redshift-jdbc42-2.1.0.33.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.32/redshift-jdbc42-2.1.0.32.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.32/redshift-jdbc42-2.1.0.32.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.32/redshift-jdbc42-2.1.0.32.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.32/redshift-jdbc42-2.1.0.32.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.30/redshift-jdbc42-2.1.0.30.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.30/redshift-jdbc42-2.1.0.30.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.30/redshift-jdbc42-2.1.0.30.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.30/redshift-jdbc42-2.1.0.30.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.29/redshift-jdbc42-2.1.0.29.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.29/redshift-jdbc42-2.1.0.29.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.29/redshift-jdbc42-2.1.0.29.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.29/redshift-jdbc42-2.1.0.29.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.28/redshift-jdbc42-2.1.0.28.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.28/redshift-jdbc42-2.1.0.28.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.28/redshift-jdbc42-2.1.0.28.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.28/redshift-jdbc42-2.1.0.28.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.26/redshift-jdbc42-2.1.0.26.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.26/redshift-jdbc42-2.1.0.26.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.26/redshift-jdbc42-2.1.0.26.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.26/redshift-jdbc42-2.1.0.26.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.25/redshift-jdbc42-2.1.0.25.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.25/redshift-jdbc42-2.1.0.25.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.25/redshift-jdbc42-2.1.0.25.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.25/redshift-jdbc42-2.1.0.25.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.24/redshift-jdbc42-2.1.0.24.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.24/redshift-jdbc42-2.1.0.24.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.24/redshift-jdbc42-2.1.0.24.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.24/redshift-jdbc42-2.1.0.24.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.23/redshift-jdbc42-2.1.0.23.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.23/redshift-jdbc42-2.1.0.23.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.23/redshift-jdbc42-2.1.0.23.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.23/redshift-jdbc42-2.1.0.23.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.22/redshift-jdbc42-2.1.0.22.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.22/redshift-jdbc42-2.1.0.22.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.22/redshift-jdbc42-2.1.0.22.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.22/redshift-jdbc42-2.1.0.22.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.21/redshift-jdbc42-2.1.0.21.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.21/redshift-jdbc42-2.1.0.21.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.21/redshift-jdbc42-2.1.0.21.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.21/redshift-jdbc42-2.1.0.21.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.20/redshift-jdbc42-2.1.0.20.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.20/redshift-jdbc42-2.1.0.20.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.20/redshift-jdbc42-2.1.0.20.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.20/redshift-jdbc42-2.1.0.20.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.19/redshift-jdbc42-2.1.0.19.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.19/redshift-jdbc42-2.1.0.19.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.19/redshift-jdbc42-2.1.0.19.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.19/redshift-jdbc42-2.1.0.19.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.18/redshift-jdbc42-2.1.0.18.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.18/redshift-jdbc42-2.1.0.18.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.18/redshift-jdbc42-2.1.0.18.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.18/redshift-jdbc42-2.1.0.18.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.17/redshift-jdbc42-2.1.0.17.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.17/redshift-jdbc42-2.1.0.17.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.17/redshift-jdbc42-2.1.0.17.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.17/redshift-jdbc42-2.1.0.17.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.16/redshift-jdbc42-2.1.0.16.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.16/redshift-jdbc42-2.1.0.16.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.16/redshift-jdbc42-2.1.0.16.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.16/redshift-jdbc42-2.1.0.16.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.15/redshift-jdbc42-2.1.0.15.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.15/redshift-jdbc42-2.1.0.15.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.15/redshift-jdbc42-2.1.0.15.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.15/redshift-jdbc42-2.1.0.15.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.14/redshift-jdbc42-2.1.0.14.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.14/redshift-jdbc42-2.1.0.14.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.14/redshift-jdbc42-2.1.0.14.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.14/redshift-jdbc42-2.1.0.14.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.13/redshift-jdbc42-2.1.0.13.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.13/redshift-jdbc42-2.1.0.13.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.13/redshift-jdbc42-2.1.0.13.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.13/redshift-jdbc42-2.1.0.13.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.12/redshift-jdbc42-2.1.0.12.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.12/redshift-jdbc42-2.1.0.12.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.12/redshift-jdbc42-2.1.0.12.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.12/redshift-jdbc42-2.1.0.12.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.11/redshift-jdbc42-2.1.0.11.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.11/redshift-jdbc42-2.1.0.11.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.11/redshift-jdbc42-2.1.0.11.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.11/redshift-jdbc42-2.1.0.11.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.10/redshift-jdbc42-2.1.0.10.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.10/redshift-jdbc42-2.1.0.10.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.10/redshift-jdbc42-2.1.0.10.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.10/redshift-jdbc42-2.1.0.10.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.9/redshift-jdbc42-2.1.0.9.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.9/redshift-jdbc42-2.1.0.9.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.9/redshift-jdbc42-2.1.0.9.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.9/redshift-jdbc42-2.1.0.9.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.8/redshift-jdbc42-2.1.0.8.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.8/redshift-jdbc42-2.1.0.8.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.8/redshift-jdbc42-2.1.0.8.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.8/redshift-jdbc42-2.1.0.8.zip) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.7/redshift-jdbc42-2.1.0.7.zip](https://s3.amazonaws.com/redshift-downloads/drivers/jdbc/2.1.0.7/redshift-jdbc42-2.1.0.7.zip) [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.7/redshift-jdbc42-2.1.0.7.zip](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/jdbc/2.1.0.7/redshift-jdbc42-2.1.0.7.zip) 

# Konektor Python Amazon Redshift
<a name="python-redshift-driver"></a>

Dengan menggunakan konektor Amazon Redshift untuk Python, Anda dapat mengintegrasikan pekerjaan dengan [AWS SDK for Python (Boto3), dan juga panda dan Numerical Python ()](https://github.com/boto/boto3). NumPy Untuk informasi lebih lanjut tentang panda, lihat repositori [panda GitHub ](https://github.com/pandas-dev/pandas). Untuk informasi lebih lanjut tentang NumPy, lihat [NumPy GitHubrepositori](https://github.com/numpy/numpy). 

Konektor Amazon Redshift Python menyediakan solusi open source. Anda dapat menelusuri kode sumber, meminta penyempurnaan, melaporkan masalah, dan memberikan kontribusi. 

Untuk menggunakan konektor Amazon Redshift Python, pastikan Anda memiliki Python versi 3.6 atau yang lebih baru. Untuk informasi selengkapnya, lihat [perjanjian SIM Amazon Redshift Python](https://github.com/aws/amazon-redshift-python-driver/blob/master/LICENSE). 

Konektor Amazon Redshift Python menyediakan yang berikut:
+ AWS Identity and Access Management (IAM) otentikasi. Untuk informasi selengkapnya, lihat [Manajemen identitas dan akses di Amazon Redshift](redshift-iam-authentication-access-control.md).
+ Otentikasi penyedia identitas menggunakan akses API federasi. Akses API federasi didukung untuk penyedia identitas perusahaan seperti berikut ini:
  + Azure AD. Untuk informasi selengkapnya, lihat postingan blog AWS Big Data Akses [Federate Amazon Redshift dengan sistem masuk tunggal Microsoft Azure AD](https://aws.amazon.com/blogs/big-data/federate-amazon-redshift-access-with-microsoft-azure-ad-single-sign-on/).
  + Layanan Federasi Direktori Aktif. Untuk informasi selengkapnya, lihat posting blog AWS Big Data [akses Federasi ke klaster Amazon Redshift Anda dengan Active Directory Federation Services (AD FS):](https://aws.amazon.com/blogs/big-data/federate-access-to-your-amazon-redshift-cluster-with-active-directory-federation-services-ad-fs-part-1/) Bagian 1. 
  + Okta. Untuk informasi lebih lanjut, lihat posting blog AWS Big Data [akses Federate Amazon Redshift dengan Okta sebagai](https://aws.amazon.com/blogs/big-data/federate-amazon-redshift-access-with-okta-as-an-identity-provider/) penyedia identitas.
  + PingFederate. Untuk informasi lebih lanjut, lihat [PingFederate situs](https://www.pingidentity.com/en/software/pingfederate.html).
  + JumpCloud. Untuk informasi lebih lanjut, lihat [JumpCloud situs](https://jumpcloud.com/).
+ Jenis data Amazon Redshift.

Konektor Amazon Redshift Python mengimplementasikan Python Database API Specification 2.0. Untuk informasi selengkapnya, lihat [PEP 249—Spesifikasi API Database Python v2.0](https://www.python.org/dev/peps/pep-0249/) di situs web Python.

**Topics**
+ [Memasang konektor Amazon Redshift Python](python-driver-install.md)
+ [Opsi konfigurasi untuk konektor Amazon Redshift Python](python-configuration-options.md)
+ [Mengimpor konektor Python](python-start-import.md)
+ [Mengintegrasikan konektor Python dengan NumPy](python-connect-integrate-numpy.md)
+ [Mengintegrasikan konektor Python dengan panda](python-connect-integrate-pandas.md)
+ [Menggunakan plugin penyedia identitas](python-connect-identity-provider-plugins.md)
+ [Contoh penggunaan konektor Amazon Redshift Python](python-connect-examples.md)
+ [Referensi API untuk konektor Amazon Redshift Python](python-api-reference.md)

# Memasang konektor Amazon Redshift Python
<a name="python-driver-install"></a>

Anda dapat menggunakan salah satu metode berikut untuk menginstal konektor Amazon Redshift Python:
+ Indeks Package Python (PyPI)
+ Conda
+ Mengkloning repositori GitHub 

## Menginstal konektor Python dari PyPI
<a name="python-pip-install-pypi"></a>

Untuk menginstal konektor Python dari Python Package Index (PyPI), Anda dapat menggunakan pip. Untuk melakukan ini, jalankan perintah berikut.

```
>>> pip install redshift_connector
```

Anda dapat menginstal konektor dalam lingkungan virtual. Untuk melakukan ini, jalankan perintah berikut.

```
>>> pip install redshift_connector
```

Secara opsional, Anda dapat menginstal panda dan NumPy dengan konektor.

```
>>> pip install 'redshift_connector[full]'
```

Untuk informasi lebih lanjut tentang pip, lihat situs [pip](https://pip.pypa.io/en/stable/).

## Menginstal konektor Python dari Conda
<a name="python-pip-install-from-conda"></a>

Anda dapat menginstal konektor Python dari Anaconda.org.

```
>>>conda install -c conda-forge redshift_connector
```

## Menginstal konektor Python dengan mengkloning repositori dari GitHub AWS
<a name="python-pip-install-from-source"></a>

Untuk menginstal konektor Python dari sumber, kloning repositori dari. GitHub AWS Setelah Anda menginstal Python dan virtualenv, atur lingkungan Anda dan instal dependensi yang diperlukan dengan menjalankan perintah berikut.

```
$ git clone https://github.com/aws/amazon-redshift-python-driver.git
$ cd amazon-redshift-python-driver
$ virtualenv venv
$ . venv/bin/activate
$ python -m pip install -r requirements.txt
$ python -m pip install -e .
$ python -m pip install redshift_connector
```

# Opsi konfigurasi untuk konektor Amazon Redshift Python
<a name="python-configuration-options"></a>

Berikut ini, Anda dapat menemukan deskripsi untuk opsi yang dapat Anda tentukan untuk konektor Amazon Redshift Python. Opsi di bawah ini berlaku untuk versi konektor terbaru yang tersedia kecuali ditentukan lain.

## access\$1key\$1id
<a name="python-access-key-id-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Kunci akses untuk peran IAM atau pengguna yang dikonfigurasi untuk otentikasi database IAM. 

Parameter ini bersifat opsional.

## allow\$1db\$1user\$1override
<a name="python-allow-db-user-override-option"></a>
+ **Nilai default** - Salah
+ **Tipe data** — Boolean

True  
Menentukan bahwa konektor menggunakan `DbUser` nilai dari pernyataan Security Assertion Markup Language (SAMP).

False  
Menentukan bahwa nilai dalam parameter `DbUser` koneksi digunakan.

Parameter ini bersifat opsional.

## app\$1name
<a name="python-app-name-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Nama aplikasi penyedia identitas (IDP) yang digunakan untuk otentikasi. 

Parameter ini bersifat opsional.

## application\$1name
<a name="python-application_name-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Nama aplikasi klien untuk diteruskan ke Amazon Redshift untuk tujuan audit. [Nama aplikasi yang Anda berikan muncul di kolom 'application\$1name' dari tabel SYS\$1CONNECTION\$1LOG.](https://docs.aws.amazon.com/redshift/latest/dg/SYS_CONNECTION_LOG.html) Ini membantu melacak dan memecahkan masalah sumber koneksi saat men-debug masalah.

Parameter ini bersifat opsional.

## auth\$1profil
<a name="python-auth-profile-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Nama profil otentikasi Amazon Redshift yang memiliki properti koneksi sebagai JSON. Untuk informasi selengkapnya tentang penamaan parameter koneksi, lihat `RedshiftProperty` kelas. `RedshiftProperty`Kelas menyimpan parameter koneksi yang disediakan oleh pengguna akhir dan, jika berlaku, dihasilkan selama proses otentikasi IAM (misalnya, kredensil IAM sementara). Untuk informasi lebih lanjut, lihat [RedshiftProperty kelas](https://github.com/aws/amazon-redshift-python-driver/blob/master/redshift_connector/redshift_property.py#L9). 

Parameter ini bersifat opsional.

## auto\$1create
<a name="python-auto-create-option"></a>
+ **Nilai default** - Salah
+ **Tipe data** — Boolean

Nilai yang menunjukkan apakah akan membuat pengguna jika pengguna tidak ada. 

Parameter ini bersifat opsional.

## client\$1id
<a name="python-client-id-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

ID klien dari Azure iDP. 

Parameter ini bersifat opsional.

## client\$1secret
<a name="python-client-secret-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Rahasia klien dari Azure iDP. 

Parameter ini bersifat opsional.

## cluster\$1identifier
<a name="python-cluster-identifier-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Pengidentifikasi cluster dari cluster Amazon Redshift. 

Parameter ini bersifat opsional.

## credentials\$1provider
<a name="python-credential-provider-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

IDP yang digunakan untuk otentikasi dengan Amazon Redshift. Berikut ini adalah nilai yang valid: 
+ `AdfsCredentialsProvider`
+ `AzureCredentialsProvider`
+ `BrowserAzureCredentialsProvider`
+ `BrowserAzureOAuth2CredentialsProvider`
+ `BrowserIdcAuthPlugin`- Plugin otorisasi menggunakan AWS IAM Identity Center.
+ `BrowserSamlCredentialsProvider`
+ `IdpTokenAuthPlugin`- Plugin otorisasi yang menerima token AWS IAM Identity Center atau OpenID Connect (OIDC) JSON berbasis token identitas (JWT) dari penyedia identitas web mana pun yang terhubung ke Pusat Identitas IAM. AWS 
+ `PingCredentialsProvider`
+ `OktaCredentialsProvider`

Parameter ini bersifat opsional.

## basis data
<a name="python-database-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Nama database yang ingin Anda sambungkan. 

Parameter ini diperlukan.

## database\$1metadata\$1current\$1db\$1only
<a name="python-database-metadata-current-db-only-option"></a>
+ **Nilai default** - Benar
+ **Tipe data** — Boolean

Nilai yang menunjukkan apakah aplikasi mendukung katalog datashare multidatabase. Nilai default True menunjukkan bahwa aplikasi tidak mendukung katalog datashare multidatabase untuk kompatibilitas mundur. 

Parameter ini bersifat opsional.

## db\$1group
<a name="python-db-groups-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Daftar dipisahkan koma dari nama grup database yang ada yang ditunjukkan oleh pengguna dengan DbUser bergabung untuk sesi saat ini. 

Parameter ini bersifat opsional.

## db\$1pengguna
<a name="python-db-user-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

ID pengguna untuk digunakan dengan Amazon Redshift. 

Parameter ini bersifat opsional.

## endpoint\$1url
<a name="python-endpoint-url-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

URL titik akhir Amazon Redshift. Opsi ini hanya untuk penggunaan AWS internal. 

Parameter ini bersifat opsional.

## group\$1federasi
<a name="python-group-federation-option"></a>
+ **Nilai default** - Salah
+ **Tipe data** — Boolean

Opsi ini menentukan apakah akan menggunakan grup IDP Amazon Redshift.

Parameter ini bersifat opsional.

**true**  
Gunakan grup Amazon Redshift Identity Provider (IDP).

**false**  
Gunakan STS API dan GetClusterCredentials untuk federasi pengguna dan tentukan **db\$1groups untuk koneksi**.

## host
<a name="python-host-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Nama host dari cluster Amazon Redshift. 

Parameter ini bersifat opsional.

## iam
<a name="python-iam-option"></a>
+ **Nilai default** - Salah
+ **Tipe data** — Boolean

Autentikasi IAM diaktifkan. 

Parameter ini diperlukan.

## iam\$1disable\$1cache
<a name="python-iam-disable-cache-option"></a>
+ **Nilai default** - Salah
+ **Tipe data** — Boolean

Opsi ini menentukan apakah kredensyal IAM di-cache. Secara default, kredensyal IAM di-cache. Ini meningkatkan kinerja saat permintaan ke gateway API dibatasi. 

Parameter ini bersifat opsional.

## idc\$1client\$1display\$1name
<a name="python-idc_client_display_name-option"></a>
+ **Nilai Default** - Konektor Amazon Redshift Python
+ **Tipe Data** - String

Nama tampilan yang akan digunakan untuk klien yang menggunakan BrowserIdcAuthPlugin.

Parameter ini bersifat opsional.

## idc\$1region
<a name="python-idc_region"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

 AWS Wilayah di mana instans AWS IAM Identity Center berada.

Parameter ini diperlukan hanya ketika mengautentikasi menggunakan `BrowserIdcAuthPlugin` dalam opsi konfigurasi credentials\$1provider.

## idp\$1partisi
<a name="python-idp_partition-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Menentukan partisi cloud tempat penyedia identitas Anda (iDP) dikonfigurasi. Ini menentukan titik akhir otentikasi IDP mana yang terhubung ke driver.

Jika parameter ini dibiarkan kosong, driver default ke partisi komersial. Kemungkinan nilainya adalah:
+  `us-gov`: Gunakan nilai ini jika IDP Anda dikonfigurasi di Azure Government. Misalnya, Azure AD Government menggunakan `login.microsoftonline.us` endpoint.
+  `cn`: Gunakan nilai ini jika IDP Anda dikonfigurasi di partisi cloud Tiongkok. Misalnya, Azure AD Tiongkok menggunakan titik akhir. `login.chinacloudapi.cn` 

Parameter ini bersifat opsional.

## IDPport
<a name="python-idp-port-option"></a>
+ **Nilai default** - 7890
+ **Tipe data** - Integer

Port mendengarkan tempat iDP mengirimkan pernyataan SAMP. 

Parameter ini diperlukan.

## idp\$1response\$1timeout
<a name="python-idp-response-timeout-option"></a>
+ **Nilai default** - 120
+ **Tipe data** - Integer

Batas waktu untuk mengambil pernyataan SAMP dari iDP. 

Parameter ini diperlukan.

## idp\$1penyewa
<a name="python-idp-tenant-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Penyewa iDP. 

Parameter ini bersifat opsional.

## issuer\$1url
<a name="python-issuer_url"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

 Menunjuk ke titik akhir instance server AWS IAM Identity Center. 

Parameter ini diperlukan hanya ketika mengautentikasi menggunakan `BrowserIdcAuthPlugin` dalam opsi konfigurasi credentials\$1provider.

## listen\$1port
<a name="python-listen-port-option"></a>
+ **Nilai default** - 7890
+ **Tipe data** - Integer

Port yang digunakan driver untuk menerima respons SAFL dari penyedia identitas atau kode otorisasi saat menggunakan layanan SAFL, Azure AD, atau AWS IAM Identity Center melalui plugin browser.

Parameter ini bersifat opsional.

## login\$1url
<a name="python-login-url-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Url masuk tunggal untuk iDP. 

Parameter ini bersifat opsional.

## max\$1prepared\$1statement
<a name="python-max-prepared-statements-option"></a>
+ **Nilai default** - 1000
+ **Tipe data** - Integer

Jumlah maksimum pernyataan disiapkan yang akan di-cache per koneksi. Menyetel parameter ini ke 0 menonaktifkan mekanisme caching. Memasukkan angka negatif untuk parameter ini menetapkannya ke nilai default. 

Parameter ini bersifat opsional.

## numeric\$1to\$1float
<a name="python-numeric-to-float-option"></a>
+ **Nilai default** - Salah
+ **Tipe data** — Boolean

Opsi ini menentukan apakah konektor mengkonversi nilai tipe data numerik dari Decimal.Decimal untuk float. Secara default, konektor menerima nilai tipe data numerik sebagai desimal. Desimal dan tidak mengonversinya. 

Kami tidak menyarankan mengaktifkan numeric\$1to\$1float untuk kasus penggunaan yang memerlukan presisi, karena hasilnya dapat dibulatkan. 

Untuk informasi lebih lanjut tentang desimal. Desimal dan pengorbanan antara itu dan float, lihat desimal [— Titik tetap desimal](https://docs.python.org/3/library/decimal.html) dan aritmatika floating point di situs web Python. 

Parameter ini bersifat opsional.

## partner\$1sp\$1id
<a name="python-partner-sp-id-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

ID SP Mitra yang digunakan untuk otentikasi dengan Ping. 

Parameter ini bersifat opsional.

## password
<a name="python-password-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Kata sandi yang digunakan untuk otentikasi. 

Parameter ini bersifat opsional.

## port
<a name="python-port-option"></a>
+ **Nilai default** - 5439
+ **Tipe data** - Integer

Nomor port cluster Amazon Redshift. 

Parameter ini diperlukan.

## preferred\$1role
<a name="python-preferred-role-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Peran IAM lebih disukai untuk koneksi saat ini. 

Parameter ini bersifat opsional.

## principal\$1arn
<a name="python-principal-arn-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Nama Sumber Daya Amazon (ARN) dari pengguna atau peran IAM tempat Anda membuat kebijakan. Anda disarankan untuk melampirkan kebijakan ke peran dan kemudian menetapkan peran tersebut ke pengguna Anda, untuk akses. 

Parameter ini bersifat opsional.

## profile
<a name="python-profile-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Nama profil dalam file kredensyal yang berisi AWS AWS kredensyal. 

Parameter ini bersifat opsional.

## provider\$1name
<a name="python-provider_name-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Nama Penyedia Otentikasi Asli Redshift. 

Parameter ini bersifat opsional.

## region
<a name="python-region-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Di Wilayah AWS mana cluster berada. 

Parameter ini bersifat opsional.

## role\$1arn
<a name="python-role-arn-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Nama Sumber Daya Amazon (ARN) dari peran yang diasumsikan oleh penelepon. Parameter ini digunakan oleh penyedia yang ditunjukkan oleh`JwtCredentialsProvider`. 

Untuk `JwtCredentialsProvider` penyedia, parameter ini wajib. Jika tidak, parameter ini opsional.

## role\$1session\$1name
<a name="python-role-session-name-option"></a>
+ **Nilai default** - jwt\$1redshift\$1session
+ **Tipe data** - String

Sebuah pengenal untuk sesi peran yang diambil. Biasanya, Anda meneruskan nama atau pengenal yang terkait dengan pengguna yang menggunakan aplikasi Anda. Kredensyal keamanan sementara yang digunakan aplikasi Anda terkait dengan pengguna tersebut. Parameter ini digunakan oleh penyedia yang ditunjukkan oleh`JwtCredentialsProvider`. 

Parameter ini bersifat opsional.

## cakupan
<a name="python-scope-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Daftar cakupan yang dipisahkan ruang yang dapat disetujui pengguna. Anda menentukan parameter ini sehingga aplikasi Anda bisa mendapatkan persetujuan untuk APIs yang ingin Anda panggil. Anda dapat menentukan parameter ini ketika Anda menentukan BrowserAzure OAuth2 CredentialsProvider untuk opsi credentials\$1provider.

Parameter ini diperlukan untuk BrowserAzure OAuth2 CredentialsProvider plug-in.

## secret\$1access\$1key\$1id
<a name="python-secret-access-key-id-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Kunci akses rahasia untuk peran IAM atau pengguna yang dikonfigurasi untuk otentikasi database IAM. 

Parameter ini bersifat opsional.

## session\$1token
<a name="python-session-token-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Kunci akses untuk peran IAM atau pengguna yang dikonfigurasi untuk otentikasi database IAM. Parameter ini diperlukan jika AWS kredensyal sementara sedang digunakan. 

Parameter ini bersifat opsional.

## serverless\$1acct\$1id
<a name="python-serverless-acct-id-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

ID akun Tanpa Server Amazon Redshift.

Parameter ini bersifat opsional.

## serverless\$1work\$1group
<a name="python-serverless-work-group-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Nama workgroup Amazon Redshift Tanpa Server.

Parameter ini bersifat opsional.

## ssl
<a name="python-ssl-option"></a>
+ **Nilai default** - Benar
+ **Tipe data** — Boolean

Secure Sockets Layer (SSL) diaktifkan. 

Parameter ini diperlukan.

## ssl\$1insecure
<a name="python-ssl-insecure-option"></a>
+ **Nilai default** - Salah
+ **Tipe data** — Boolean

Nilai yang menentukan apakah akan menonaktifkan verifikasi sertifikat SSL server idP host. Menyetel parameter ini ke True akan menonaktifkan verifikasi sertifikat SSL server host iDP. Kami menyarankan Anda menyimpan nilai default False di lingkungan produksi.

Parameter ini bersifat opsional.

## sslmode
<a name="python-sslmode-option"></a>
+ **Nilai default** - verify-ca
+ **Tipe data** - String

Keamanan koneksi ke Amazon Redshift. Anda dapat menentukan salah satu dari berikut ini: 
+ verify-ca
+ verify-full

Parameter ini diperlukan.

## tcp\$1keepalive
<a name="python-tcp_keepalive-option"></a>
+ **Nilai default** - Benar
+ **Tipe data** — Boolean

Apakah akan menggunakan TCP keepalives untuk menjaga koneksi dari waktu habis. Anda dapat menentukan salah satu nilai berikut:
+ Benar: Driver akan menggunakan TCP keepalives untuk menjaga koneksi dari waktu habis.
+ Salah: Driver tidak akan menggunakan TCP keepalives.

Parameter ini bersifat opsional.

## tcp\$1keepalive\$1count
<a name="python-tcp_keepalive_count-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - Integer

Jumlah probe yang tidak diakui untuk dikirim sebelum mempertimbangkan koneksi tidak aktif. Misalnya, menetapkan nilai ke 3 berarti bahwa driver akan mengirim 3 paket keepalive yang belum dijawab sebelum menentukan bahwa koneksi tidak lagi aktif.

Jika parameter ini tidak ditentukan, Amazon Redshift menggunakan nilai default sistem.

Parameter ini bersifat opsional.

## tcp\$1keepalive\$1interval
<a name="python-tcp_keepalive_interval-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - Integer

Interval, dalam hitungan detik, antara probe keepalive berikutnya jika pengemudi tidak menerima pengakuan untuk probe sebelumnya. Jika Anda menentukan parameter ini, itu harus bilangan bulat positif.

Jika parameter ini tidak ditentukan, Amazon Redshift menggunakan nilai default sistem.

Parameter ini bersifat opsional.

## tcp\$1keepalive\$1idle
<a name="python-tcp_keepalive_idle-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - Integer

Durasi tidak aktif, dalam hitungan detik, setelah itu pengemudi mengirimkan probe keepalive pertama. Misalnya, menetapkan nilai ke 120 berarti bahwa driver akan menunggu selama 2 menit tidak aktif sebelum mengirim paket keepalive pertama. Jika Anda menentukan parameter ini, itu harus bilangan bulat positif. 

Jika parameter ini tidak ditentukan, Amazon Redshift menggunakan nilai default sistem.

Parameter ini bersifat opsional.

## batas waktu
<a name="python-timeout-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - Integer

Jumlah detik sebelum koneksi ke server habis. 

Parameter ini bersifat opsional.

## token
<a name="python-token-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Pusat AWS Identitas IAM menyediakan token akses atau OpenID Connect (OIDC) JSON Web Token (JWT) yang disediakan oleh penyedia identitas web yang terhubung dengan IAM Identity Center. AWS Aplikasi Anda harus menghasilkan token ini dengan mengautentikasi pengguna aplikasi Anda dengan AWS IAM Identity Center atau penyedia identitas yang ditautkan dengan AWS IAM Identity Center. 

Parameter ini bekerja dengan`IdpTokenAuthPlugin`.

## token\$1type
<a name="python-token_type-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Jenis token yang digunakan di`IdpTokenAuthPlugin`.

Anda dapat menentukan salah satu nilai berikut:

**ACCESS\$1TOKEN**  
Masukkan ini jika Anda menggunakan token akses yang disediakan Pusat Identitas AWS IAM.

**EXT\$1JWT**  
Masukkan ini jika Anda menggunakan OpenID Connect (OIDC) JSON Web Token (JWT) yang disediakan oleh penyedia identitas berbasis web yang terintegrasi dengan IAM Identity Center. AWS 

Parameter ini bekerja dengan`IdpTokenAuthPlugin`.

## user
<a name="python-user-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Nama pengguna yang akan digunakan untuk otentikasi. 

Parameter ini bersifat opsional.

## web\$1identity\$1token
<a name="python-web-identity-token-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Token akses OAuth 2.0 atau token OpenID Connect ID yang disediakan oleh penyedia identitas. Pastikan aplikasi Anda mendapatkan token ini dengan mengautentikasi pengguna yang menggunakan aplikasi Anda dengan penyedia identitas web. Penyedia yang ditunjukkan dengan `JwtCredentialsProvider` menggunakan parameter ini. 

Untuk `JwtCredentialsProvider` penyedia, parameter ini wajib. Jika tidak, parameter ini opsional.

# Mengimpor konektor Python
<a name="python-start-import"></a>

Untuk mengimpor konektor Python, jalankan perintah berikut.

```
>>> import redshift_connector
```

Untuk menyambung ke klaster Amazon Redshift menggunakan AWS kredensyal, jalankan perintah berikut.

```
conn = redshift_connector.connect(
    host='examplecluster.abc123xyz789.us-west-1.redshift.amazonaws.com',
    port=5439,
    database='dev',
    user='awsuser',
    password='my_password'
 )
```

# Mengintegrasikan konektor Python dengan NumPy
<a name="python-connect-integrate-numpy"></a>

Berikut ini adalah contoh mengintegrasikan konektor Python dengan. NumPy

```
>>>  import numpy
#Connect to the cluster
>>> import redshift_connector
>>> conn = redshift_connector.connect(
     host='examplecluster.abc123xyz789.us-west-1.redshift.amazonaws.com',
     port=5439,
     database='dev',
     user='awsuser',
     password='my_password'
  )
  
# Create a Cursor object
>>> cursor = conn.cursor()

# Query and receive result set            
cursor.execute("select * from book")

result: numpy.ndarray = cursor.fetch_numpy_array()
print(result)
```

Berikut ini adalah hasilnya.

```
[['One Hundred Years of Solitude' 'Gabriel García Márquez']
['A Brief History of Time' 'Stephen Hawking']]
```

# Mengintegrasikan konektor Python dengan panda
<a name="python-connect-integrate-pandas"></a>

Berikut ini adalah contoh mengintegrasikan konektor Python dengan panda.

```
>>> import pandas

#Connect to the cluster
>>> import redshift_connector
>>> conn = redshift_connector.connect(
     host='examplecluster.abc123xyz789.us-west-1.redshift.amazonaws.com',
     port=5439,
     database='dev',
     user='awsuser',
     password='my_password'
  )
  
# Create a Cursor object
>>> cursor = conn.cursor()

# Query and receive result set
cursor.execute("select * from book")
result: pandas.DataFrame = cursor.fetch_dataframe()
print(result)
```

# Menggunakan plugin penyedia identitas
<a name="python-connect-identity-provider-plugins"></a>

Untuk informasi umum tentang cara menggunakan plugin penyedia identitas, lihat[Opsi untuk memberikan kredensi IAM](options-for-providing-iam-credentials.md). Untuk informasi selengkapnya tentang mengelola identitas IAM, termasuk praktik terbaik untuk peran IAM, lihat. [Manajemen identitas dan akses di Amazon Redshift](redshift-iam-authentication-access-control.md)

## Otentikasi menggunakan plugin penyedia identitas ADFS
<a name="python-connect-identity-provider-active-dir"></a>

Berikut ini adalah contoh penggunaan plugin penyedia identitas Active Directory Federation Service (ADFS) untuk mengautentikasi pengguna yang terhubung ke database Amazon Redshift.

```
>>> con = redshift_connector.connect(
    iam=True,
    database='dev',
    host='my-testing-cluster.abc.us-east-2.redshift.amazonaws.com',
    cluster_identifier='my-testing-cluster',
    credentials_provider='AdfsCredentialsProvider',
    user='brooke@myadfshostname.com',
    password='Hunter2',
    idp_host='myadfshostname.com'
)
```

## Otentikasi menggunakan plugin penyedia identitas Azure
<a name="python-connect-identity-provider-azure"></a>

Berikut ini adalah contoh otentikasi menggunakan plugin penyedia identitas Azure. Anda dapat membuat nilai untuk `client_id` dan `client_secret` untuk aplikasi Azure Enterprise seperti yang ditunjukkan berikut. 

```
>>>  con = redshift_connector.connect(
    iam=True,
    database='dev',
    host='my-testing-cluster.abc.us-east-2.redshift.amazonaws.com',
    cluster_identifier='my-testing-cluster',
    credentials_provider='AzureCredentialsProvider',
    user='brooke@myazure.org',
    password='Hunter2',
    idp_tenant='my_idp_tenant',
    client_id='my_client_id',
    client_secret='my_client_secret',
    preferred_role='arn:aws:iam:123:role/DataScientist'
)
```

## Otentikasi menggunakan plugin penyedia identitas Pusat AWS Identitas IAM
<a name="python-connect-identity-provider-aws-idc"></a>

 Berikut ini adalah contoh otentikasi menggunakan plugin penyedia identitas AWS IAM Identity Center. 

```
with redshift_connector.connect(
credentials_provider='BrowserIdcAuthPlugin',
host='my-testing-cluster.abc.us-east-2.redshift.amazonaws.com',
database='dev',
idc_region='us-east-1',
issuer_url='https://identitycenter.amazonaws.com/ssoins-790723ebe09c86f9',
idp_response_timeout=60,
listen_port=8100,
idc_client_display_name='Test Display Name',
# port value of 5439 is specified by default
)
```

## Otentikasi menggunakan plugin penyedia identitas Azure Browser
<a name="python-connect-identity-provider-azure-browser"></a>

Berikut ini adalah contoh penggunaan plugin penyedia identitas Azure Browser untuk mengautentikasi pengguna yang terhubung ke database Amazon Redshift.

Otentikasi multi-faktor terjadi di browser, di mana kredensi masuk disediakan oleh pengguna.

```
>>>con = redshift_connector.connect(
    iam=True,
    database='dev',
    host='my-testing-cluster.abc.us-east-2.redshift.amazonaws.com',
    cluster_identifier='my-testing-cluster',
    credentials_provider='BrowserAzureCredentialsProvider',
    idp_tenant='my_idp_tenant',
    client_id='my_client_id',
)
```

## Otentikasi menggunakan plugin penyedia identitas Okta
<a name="python-connect-identity-provider-okta"></a>

Berikut ini adalah contoh otentikasi menggunakan plugin penyedia identitas Okta. Anda dapat memperoleh nilai untuk`idp_host`, `app_id` dan `app_name` melalui aplikasi Okta.

```
>>> con = redshift_connector.connect(
    iam=True,
    database='dev',
    host='my-testing-cluster.abc.us-east-2.redshift.amazonaws.com',
    cluster_identifier='my-testing-cluster',
    credentials_provider='OktaCredentialsProvider',
    user='brooke@myazure.org',
    password='hunter2',
    idp_host='my_idp_host',
    app_id='my_first_appetizer',
    app_name='dinner_party'
)
```

## Otentikasi menggunakan JumpCloud dengan plugin penyedia identitas browser SAMP generik
<a name="python-connect-identity-provider-jumpcloud"></a>

Berikut ini adalah contoh penggunaan JumpCloud dengan plugin penyedia identitas browser SAMP generik untuk otentikasi.

Parameter kata sandi diperlukan. Namun, Anda tidak perlu memasukkan parameter ini karena otentikasi multi-faktor terjadi di browser.

```
>>> con = redshift_connector.connect(
    iam=True,
    database='dev',
    host='my-testing-cluster.abc.us-east-2.redshift.amazonaws.com',
    cluster_identifier='my-testing-cluster',
    credentials_provider='BrowserSamlCredentialsProvider',
    user='brooke@myjumpcloud.org',
    password='',
    login_url='https://sso.jumpcloud.com/saml2/plustwo_melody'
)
```

# Contoh penggunaan konektor Amazon Redshift Python
<a name="python-connect-examples"></a>

Berikut ini adalah contoh cara menggunakan konektor Amazon Redshift Python. Untuk menjalankannya, Anda harus menginstal konektor Python terlebih dahulu. Untuk informasi selengkapnya tentang menginstal konektor Amazon Redshift Python, lihat. [Memasang konektor Amazon Redshift Python](python-driver-install.md) Untuk informasi lebih lanjut tentang opsi konfigurasi yang dapat Anda gunakan dengan konektor Python, lihat. [Opsi konfigurasi untuk konektor Amazon Redshift Python](python-configuration-options.md)

**Topics**
+ [Menyambung ke dan menanyakan klaster Amazon Redshift menggunakan kredensyal AWS](#python-connect-cluster)
+ [Mengaktifkan komit otomatis](#python-connect-enable-autocommit)
+ [Mengkonfigurasi paramstyle kursor](#python-connect-config-paramstyle)
+ [Menggunakan COPY untuk menyalin data dari bucket Amazon S3 dan UNLOAD untuk menulis data ke dalamnya](#python-connect-copy-unload-s3)

## Menyambung ke dan menanyakan klaster Amazon Redshift menggunakan kredensyal AWS
<a name="python-connect-cluster"></a>

Contoh berikut memandu Anda untuk menghubungkan ke klaster Amazon Redshift menggunakan AWS kredensil Anda, lalu menanyakan tabel dan mengambil hasil kueri.

```
#Connect to the cluster
>>> import redshift_connector
>>> conn = redshift_connector.connect(
     host='examplecluster.abc123xyz789.us-west-1.redshift.amazonaws.com',
     database='dev',
     port=5439,
     user='awsuser',
     password='my_password'
  )
  
# Create a Cursor object
>>> cursor = conn.cursor()

# Query a table using the Cursor
>>> cursor.execute("select * from book")
                
#Retrieve the query result set
>>> result: tuple = cursor.fetchall()
>>> print(result)
 >> (['One Hundred Years of Solitude', 'Gabriel García Márquez'], ['A Brief History of Time', 'Stephen Hawking'])
```

## Mengaktifkan komit otomatis
<a name="python-connect-enable-autocommit"></a>

Properti autocommit dinonaktifkan secara default, mengikuti Spesifikasi API Database Python. Anda dapat menggunakan perintah berikut untuk mengaktifkan properti autocommit koneksi setelah melakukan perintah rollback untuk memastikan bahwa transaksi tidak sedang berlangsung.

```
#Connect to the cluster
>>> import redshift_connector
>>> conn = redshift_connector.connect(...)

# Run a rollback command
>>>  conn.rollback()

# Turn on autocommit
>>>  conn.autocommit = True
>>>  conn.run("VACUUM")

# Turn off autocommit
>>>  conn.autocommit = False
```

## Mengkonfigurasi paramstyle kursor
<a name="python-connect-config-paramstyle"></a>

Paramstyle untuk kursor dapat dimodifikasi melalui cursor.paramstyle. Paramstyle default yang digunakan adalah`format`. Nilai yang valid untuk paramstyle adalah`qmark`,`numeric`,, `named``format`, dan`pyformat`.

Berikut ini adalah contoh menggunakan berbagai paramstyles untuk meneruskan parameter ke pernyataan SQL sampel.

```
# qmark
redshift_connector.paramstyle = 'qmark'
sql = 'insert into foo(bar, jar) VALUES(?, ?)'
cursor.execute(sql, (1, "hello world"))

# numeric
redshift_connector.paramstyle = 'numeric'
sql = 'insert into foo(bar, jar) VALUES(:1, :2)'
cursor.execute(sql, (1, "hello world"))

# named
redshift_connector.paramstyle = 'named'
sql = 'insert into foo(bar, jar) VALUES(:p1, :p2)'
cursor.execute(sql, {"p1":1, "p2":"hello world"})

# format
redshift_connector.paramstyle = 'format'
sql = 'insert into foo(bar, jar) VALUES(%s, %s)'
cursor.execute(sql, (1, "hello world"))

# pyformat
redshift_connector.paramstyle = 'pyformat'
sql = 'insert into foo(bar, jar) VALUES(%(bar)s, %(jar)s)'
cursor.execute(sql, {"bar": 1, "jar": "hello world"})
```

## Menggunakan COPY untuk menyalin data dari bucket Amazon S3 dan UNLOAD untuk menulis data ke dalamnya
<a name="python-connect-copy-unload-s3"></a>

Contoh berikut menunjukkan cara menyalin data dari bucket Amazon S3 ke dalam tabel dan kemudian membongkar dari tabel itu kembali ke bucket.

File teks bernama `category_csv.txt` berisi data berikut diunggah ke bucket Amazon S3:.

```
12,Shows,Musicals,Musical theatre
13,Shows,Plays,"All ""non-musical"" theatre"
14,Shows,Opera,"All opera, light, and ""rock"" opera"
15,Concerts,Classical,"All symphony, concerto, and choir concerts"
```

Berikut ini adalah contoh kode Python, yang pertama kali terhubung ke database Amazon Redshift. Kemudian membuat tabel yang disebut `category` dan menyalin data CSV dari bucket S3 ke dalam tabel.

```
#Connect to the cluster and create a Cursor
>>> import redshift_connector
>>> with redshift_connector.connect(...) as conn:
>>> with conn.cursor() as cursor:

#Create an empty table
>>>     cursor.execute("create table category (catid int, cargroup varchar, catname varchar, catdesc varchar)")

#Use COPY to copy the contents of the S3 bucket into the empty table 
>>>     cursor.execute("copy category from 's3://testing/category_csv.txt' iam_role 'arn:aws:iam::123:role/RedshiftCopyUnload' csv;")

#Retrieve the contents of the table
>>>     cursor.execute("select * from category")
>>>     print(cursor.fetchall())

#Use UNLOAD to copy the contents of the table into the S3 bucket
>>>     cursor.execute("unload ('select * from category') to 's3://testing/unloaded_category_csv.txt'  iam_role 'arn:aws:iam::123:role/RedshiftCopyUnload' csv;")

#Retrieve the contents of the bucket
>>>     print(cursor.fetchall())
 >> ([12, 'Shows', 'Musicals', 'Musical theatre'], [13, 'Shows', 'Plays', 'All "non-musical" theatre'], [14, 'Shows', 'Opera', 'All opera, light, and "rock" opera'], [15, 'Concerts', 'Classical', 'All symphony, concerto, and choir concerts'])
```

Jika Anda belum `autocommit` menyetel ke true, komit dengan `conn.commit()` setelah menjalankan `execute()` pernyataan.

Data diturunkan ke file `unloaded_category_csv.text0000_part00` di bucket S3, dengan konten berikut:

```
12,Shows,Musicals,Musical theatre
13,Shows,Plays,"All ""non-musical"" theatre"
14,Shows,Opera,"All opera, light, and ""rock"" opera"
15,Concerts,Classical,"All symphony, concerto, and choir concerts"
```

# Referensi API untuk konektor Amazon Redshift Python
<a name="python-api-reference"></a>

Berikut ini, Anda dapat menemukan deskripsi operasi API konektor Amazon Redshift Python.

## redshift\$1connector
<a name="python-api-redshift_connector"></a>

Berikut ini, Anda dapat menemukan deskripsi operasi `redshift_connector` API.

`connect(user, database, password[, port, …])`  
Membuat koneksi ke cluster Amazon Redshift. Fungsi ini memvalidasi input pengguna, secara opsional mengautentikasi menggunakan plugin penyedia identitas, dan kemudian membangun objek koneksi.

`apilevel`  
Level DBAPI didukung, saat ini “2.0".

`paramstyle``str(object=’’) -> str str(bytes_or_buffer[, encoding[, errors]]) -> str`  
Gaya parameter API database untuk digunakan secara global.

## Koneksi
<a name="python-api-connection"></a>

Berikut ini, Anda dapat menemukan deskripsi operasi API koneksi untuk konektor Amazon Redshift Python.

`__init__(user, password, database[, host, …])`  
Menginisialisasi objek koneksi mentah.

`cursor`  
Membuat objek kursor terikat pada koneksi ini.

`commit`  
Melakukan transaksi database saat ini.

`rollback`  
Menggulung kembali transaksi database saat ini.

`close`  
Menutup koneksi database.

`execute(cursor, operation, vals)`  
Menjalankan perintah SQL yang ditentukan. Anda dapat memberikan parameter sebagai urutan atau sebagai pemetaan, tergantung pada nilai. `redshift_connector.paramstyle`

`run(sql[, stream])`  
Menjalankan perintah SQL yang ditentukan. Secara opsional, Anda dapat menyediakan aliran untuk digunakan dengan perintah COPY.

`xid(format_id, global_transaction_id, …)`  
Buat ID transaksi. Hanya `global_transaction_id` parameter yang digunakan di postgres. format\$1id dan branch\$1qualifier tidak digunakan di postgres. `global_transaction_id`Dapat berupa pengidentifikasi string apa pun yang didukung oleh postgres yang mengembalikan tuple (`format_id`,,`global_transaction_id`). `branch_qualifier`

`tpc_begin(xid)`  
Memulai transaksi TPC dengan ID transaksi `xid` yang terdiri dari ID format, ID transaksi global, dan kualifikasi cabang. 

`tpc_prepare`  
Melakukan fase pertama transaksi yang dimulai dengan.tpc\$1begin.

`tpc_commit([xid])`  
Ketika dipanggil tanpa argumen, .tpc\$1commit melakukan transaksi TPC yang sebelumnya disiapkan dengan.tpc\$1prepare ().

`tpc_rollback([xid])`  
Ketika dipanggil tanpa argumen, .tpc\$1rollback mengembalikan transaksi TPC.

`tpc_recover`  
Mengembalikan daftar transaksi tertunda yang IDs cocok untuk digunakan dengan.tpc\$1commit (xid) atau.tpc\$1rollback (xid).

## Kursor
<a name="python-api-cursor"></a>

Berikut ini, Anda dapat menemukan deskripsi operasi API kursor.

`__init__(connection[, paramstyle])`  
Menginisialisasi objek kursor mentah.

`insert_data_bulk(filename, table_name, parameter_indices, column_names, delimiter, batch_size)`  
Menjalankan pernyataan INSERT massal.

`execute(operation[, args, stream, …])`  
Menjalankan operasi database.

`executemany(operation, param_sets)`  
Mempersiapkan operasi database, dan kemudian menjalankannya untuk semua urutan parameter atau pemetaan yang disediakan.

`fetchone`  
Mengambil baris berikutnya dari hasil query set.

`fetchmany([num])`  
Mengambil set baris berikutnya dari hasil query.

`fetchall`  
Mengambil semua baris yang tersisa dari hasil query.

`close`  
Tutup kursor sekarang. 

`__iter__`  
Sebuah objek kursor dapat diiterasi untuk mengambil baris dari query.

`fetch_dataframe([num])`  
Mengembalikan kerangka data dari hasil query terakhir.

`write_dataframe(df, table)`  
Menulis kerangka data struktur yang sama ke dalam database Amazon Redshift.

`fetch_numpy_array([num])`  
Mengembalikan NumPy array hasil query terakhir.

`get_catalogs`  
Amazon Redshift tidak mendukung beberapa katalog dari satu koneksi. Amazon Redshift hanya mengembalikan katalog saat ini.

`get_tables([catalog, schema_pattern, …])`  
Mengembalikan tabel publik unik yang ditentukan pengguna dalam sistem.

`get_columns([catalog, schema_pattern, …])`  
Mengembalikan daftar semua kolom dalam tabel tertentu dalam database Amazon Redshift.

## AdfsCredentialsProvider plugin
<a name="python-adfs-credentials-plugin"></a>

Berikut ini adalah sintaks untuk operasi API AdfsCredentialsProvider plugin untuk konektor Amazon Redshift Python. 

```
redshift_connector.plugin.AdfsCredentialsProvider()
```

## AzureCredentialsProvider plugin
<a name="python-azure-credentials-plugin"></a>

Berikut ini adalah sintaks untuk operasi API AzureCredentialsProvider plugin untuk konektor Amazon Redshift Python.

```
redshift_connector.plugin.AzureCredentialsProvider()
```

## BrowserAzureCredentialsProvider plugin
<a name="python-browser-azure-credentials-plugin"></a>

Berikut ini adalah sintaks untuk operasi API BrowserAzureCredentialsProvider plugin untuk konektor Amazon Redshift Python.

```
redshift_connector.plugin.BrowserAzureCredentialsProvider()
```

## BrowserSamlCredentialsProvider plugin
<a name="python-browser-saml-credentials-plugin"></a>

Berikut ini adalah sintaks untuk operasi API BrowserSamlCredentialsProvider plugin untuk konektor Amazon Redshift Python.

```
redshift_connector.plugin.BrowserSamlCredentialsProvider()
```

## OktaCredentialsProvider plugin
<a name="python-okta-credentials-plugin"></a>

Berikut ini adalah sintaks untuk operasi API OktaCredentialsProvider plugin untuk konektor Amazon Redshift Python.

```
redshift_connector.plugin.OktaCredentialsProvider()
```

## PingCredentialsProvider plugin
<a name="python-ping-credentials-plugin"></a>

Berikut ini adalah sintaks untuk operasi API PingCredentialsProvider plugin untuk konektor Amazon Redshift Python.

```
redshift_connector.plugin.PingCredentialsProvider()
```

## SamlCredentialsProvider plugin
<a name="python-saml-credentials-plugin"></a>

Berikut ini adalah sintaks untuk operasi API SamlCredentialsProvider plugin untuk konektor Amazon Redshift Python.

```
redshift_connector.plugin.SamlCredentialsProvider()
```

# Integrasi Amazon Redshift untuk Apache Spark
<a name="spark-redshift-connector"></a>

 [Apache Spark](https://aws.amazon.com/emr/features/spark/) adalah kerangka pemrosesan terdistribusi dan model pemrograman yang membantu Anda melakukan pembelajaran mesin, pemrosesan aliran, atau analisis grafik. Mirip dengan Apache Hadoop, Spark merupakan sistem pemrosesan terdistribusi sumber terbuka, yang biasa digunakan untuk beban kerja big data. Spark memiliki mesin  eksekusi grafik asiklik terarah (DAG) yang dioptimalkan dan secara aktif menyimpan data dalam memori. Ini dapat meningkatkan kinerja, terutama untuk algoritma tertentu dan kueri interaktif. 

 Integrasi ini memberi Anda konektor Spark yang dapat Anda gunakan untuk membangun aplikasi Apache Spark yang membaca dan menulis ke data di Amazon Redshift dan Amazon Redshift Serverless. Aplikasi ini tidak berkompromi pada kinerja aplikasi atau konsistensi transaksional data. Integrasi ini secara otomatis disertakan dalam [Amazon EMR](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/) dan [AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/), sehingga Anda dapat segera menjalankan pekerjaan Apache Spark yang mengakses dan memuat data ke Amazon Redshift sebagai bagian dari pipa penyerapan dan transformasi data Anda. 

Saat ini, Anda dapat menggunakan versi 3.3.x, 3.4.x, 3.5.x, dan 4.0.0 dari Spark dengan integrasi ini.

 Integrasi ini menyediakan yang berikut: 
+  AWS Identity and Access Management (IAM) otentikasi. Untuk informasi selengkapnya, lihat [Manajemen identitas dan akses di Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-authentication-access-control.html). 
+ Predikat dan kueri pushdown untuk meningkatkan kinerja.
+  Jenis data Amazon Redshift. 
+ Konektivitas ke Amazon Redshift dan Amazon Redshift Tanpa Server.

## Pertimbangan dan batasan saat menggunakan konektor Spark
<a name="spark-redshift-connector-considerations"></a>
+  URI tempdir menunjuk ke lokasi Amazon S3. Direktori temp ini tidak dibersihkan secara otomatis dan dapat menambah biaya tambahan. Sebaiknya gunakan [kebijakan siklus hidup Amazon S3 di](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html) *Panduan Pengguna Layanan Penyimpanan Sederhana Amazon* untuk menentukan aturan penyimpanan bucket Amazon S3. 
+  Secara default, salinan antara Amazon S3 dan Redshift tidak berfungsi jika bucket S3 dan cluster Redshift berada di Wilayah yang berbeda. AWS Untuk menggunakan AWS Regions terpisah, atur `tempdir_region` parameter ke Region bucket S3 yang digunakan untuk. `tempdir`
+ Cross-Region menulis antara S3 dan Redshift jika menulis data Parket menggunakan parameter. `tempformat`
+ Sebaiknya gunakan [enkripsi sisi server Amazon S3 untuk mengenkripsi bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html) Amazon S3 yang digunakan. 
+ Kami merekomendasikan untuk [memblokir akses publik ke bucket Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-control-block-public-access.html). 
+  Kami menyarankan agar cluster Amazon Redshift tidak dapat diakses publik. 
+  Sebaiknya aktifkan pencatatan [audit Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/db-auditing.html). 
+  Sebaiknya aktifkan enkripsi saat [istirahat Amazon Redshift.](https://docs.aws.amazon.com/redshift/latest/mgmt/security-server-side-encryption.html) 
+  Sebaiknya aktifkan SSL untuk koneksi JDBC dari Spark di Amazon EMR ke Amazon Redshift. 
+ Kami merekomendasikan untuk meneruskan peran IAM menggunakan parameter `aws_iam_role` untuk parameter autentikasi Amazon Redshift.

# Otentikasi dengan konektor Spark
<a name="redshift-spark-connector-authentication"></a>

Diagram berikut menjelaskan otentikasi antara Amazon S3, Amazon Redshift, driver Spark, dan pelaksana Spark.

![\[Ini adalah diagram otentikasi konektor percikan.\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/images/spark-connector-authentication.png)


## Otentikasi antara Redshift dan Spark
<a name="redshift-spark-authentication"></a>

 Anda dapat menggunakan driver versi 2.x driver JDBC yang disediakan Amazon Redshift untuk terhubung ke Amazon Redshift dengan konektor Spark dengan menentukan kredenal masuk. Untuk menggunakan IAM, [konfigurasikan url JDBC Anda untuk menggunakan](https://docs.aws.amazon.com/redshift/latest/mgmt/generating-iam-credentials-configure-jdbc-odbc.html) otentikasi IAM. Untuk menyambung ke kluster Redshift dari Amazon EMR atau AWS Glue, pastikan bahwa peran IAM Anda memiliki izin yang diperlukan untuk mengambil kredenal IAM sementara. Daftar berikut menjelaskan semua izin yang diperlukan peran IAM Anda untuk mengambil kredensil dan menjalankan operasi Amazon S3. 
+ [Redshift: GetClusterCredentials](https://docs.aws.amazon.com/redshift/latest/APIReference/API_GetClusterCredentials.html) (untuk cluster Redshift yang disediakan)
+ [Redshift: DescribeClusters](https://docs.aws.amazon.com/redshift/latest/APIReference/API_DescribeClusters.html) (untuk cluster Redshift yang disediakan)
+ [Redshift: GetWorkgroup](https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/API_GetWorkgroup.html) (untuk grup kerja Amazon Redshift Tanpa Server)
+ [Redshift: GetCredentials](https://docs.aws.amazon.com/redshift-serverless/latest/APIReference/API_GetCredentials.html) (untuk grup kerja Amazon Redshift Tanpa Server)
+ [s3: ListBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html)
+ [s3: GetBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetBucket.html)
+ [s3: GetObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
+ [s3: PutObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
+ [s3: GetBucketLifecycleConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html)

 Untuk informasi selengkapnya GetClusterCredentials, lihat [kebijakan IAM untuk GetClusterCredentials](https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-access-control-identity-based.html#redshift-policy-resources.getclustercredentials-resources). 

Anda juga harus memastikan bahwa Amazon Redshift dapat mengambil peran IAM selama `COPY` dan operasi. `UNLOAD`

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "redshift.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

Jika Anda menggunakan driver JDBC terbaru, driver akan secara otomatis mengelola transisi dari sertifikat yang ditandatangani sendiri Amazon Redshift ke sertifikat ACM. Namun, Anda harus [menentukan opsi SSL ke url JDBC](https://docs.aws.amazon.com/redshift/latest/mgmt/jdbc20-configuration-options.html#jdbc20-ssl-option). 

 Berikut ini adalah contoh cara menentukan URL driver JDBC dan terhubung `aws_iam_role` ke Amazon Redshift. 

```
df.write \
  .format("io.github.spark_redshift_community.spark.redshift ") \
  .option("url", "jdbc:redshift:iam://<the-rest-of-the-connection-string>") \
  .option("dbtable", "<your-table-name>") \
  .option("tempdir", "s3a://<your-bucket>/<your-directory-path>") \
  .option("aws_iam_role", "<your-aws-role-arn>") \
  .mode("error") \
  .save()
```

## Otentikasi antara Amazon S3 dan Spark
<a name="spark-s3-authentication"></a>

 Jika Anda menggunakan peran IAM untuk mengautentikasi antara Spark dan Amazon S3, gunakan salah satu metode berikut: 
+  AWS SDK for Java akan secara otomatis mencoba AWS menemukan kredensil dengan menggunakan rantai penyedia kredensi default yang diimplementasikan oleh kelas Default. AWSCredentials ProviderChain Untuk informasi selengkapnya, lihat [Menggunakan Rantai Penyedia Kredenal Default](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html#credentials-default).
+ Anda dapat menentukan AWS kunci melalui properti [konfigurasi Hadoop](https://github.com/apache/hadoop/blob/trunk/hadoop-tools/hadoop-aws/src/site/markdown/tools/hadoop-aws/index.md). Misalnya, jika `tempdir` konfigurasi Anda menunjuk ke `s3n://` sistem file, setel `fs.s3n.awsAccessKeyId` dan `fs.s3n.awsSecretAccessKey` properti dalam file konfigurasi XMLHadoop atau panggil `sc.hadoopConfiguration.set()` untuk mengubah konfigurasi Hadoop global Spark.

Misalnya, jika Anda menggunakan sistem file s3n, tambahkan:

```
sc.hadoopConfiguration.set("fs.s3n.awsAccessKeyId", "YOUR_KEY_ID")
sc.hadoopConfiguration.set("fs.s3n.awsSecretAccessKey", "YOUR_SECRET_ACCESS_KEY")
```

Untuk sistem file s3a, tambahkan:

```
sc.hadoopConfiguration.set("fs.s3a.access.key", "YOUR_KEY_ID")
sc.hadoopConfiguration.set("fs.s3a.secret.key", "YOUR_SECRET_ACCESS_KEY")
```

Jika Anda menggunakan Python, gunakan operasi berikut:

```
sc._jsc.hadoopConfiguration().set("fs.s3n.awsAccessKeyId", "YOUR_KEY_ID")
sc._jsc.hadoopConfiguration().set("fs.s3n.awsSecretAccessKey", "YOUR_SECRET_ACCESS_KEY")
```
+ Encode kunci otentikasi di URL. `tempdir` Misalnya, URI `s3n://ACCESSKEY:SECRETKEY@bucket/path/to/temp/dir` mengkodekan key pair (`ACCESSKEY`,`SECRETKEY`).

## Otentikasi antara Redshift dan Amazon S3
<a name="redshift-s3-authentication"></a>

 Jika Anda menggunakan perintah COPY dan UNLOAD dalam kueri, Anda juga harus memberikan Amazon S3 akses ke Amazon Redshift untuk menjalankan kueri atas nama Anda. Untuk melakukannya, pertama-tama [otorisasi Amazon Redshift untuk mengakses layanan AWS lain](https://docs.aws.amazon.com/redshift/latest/mgmt/authorizing-redshift-service.html), lalu otorisasi operasi [COPY dan UNLOAD](https://docs.aws.amazon.com/redshift/latest/mgmt/copy-unload-iam-role.html) menggunakan peran IAM. 

Sebagai praktik terbaik, kami menyarankan untuk melampirkan kebijakan izin ke peran IAM dan kemudian menetapkannya ke pengguna dan grup sesuai kebutuhan. Untuk informasi selengkapnya, lihat [Manajemen identitas dan akses di Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-authentication-access-control.html).

## Integrasi dengan AWS Secrets Manager
<a name="redshift-secrets-manager-authentication"></a>

Anda dapat mengambil nama pengguna Redshift dan kredenal kata sandi Anda dari rahasia yang disimpan di. AWS Secrets Manager Untuk secara otomatis menyediakan kredenal Redshift, gunakan parameter. `secret.id` Untuk informasi selengkapnya tentang cara membuat rahasia kredensil Redshift, lihat [Membuat](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_database_secret.html) rahasia database. AWS Secrets Manager 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/redshift-spark-connector-authentication.html)

**catatan**  
 Pengakuan: Dokumentasi ini berisi kode contoh dan bahasa yang dikembangkan oleh [Apache Software Foundation](http://www.apache.org/) yang dilisensikan di bawah lisensi [Apache](https://www.apache.org/licenses/LICENSE-2.0) 2.0. 

# Peningkatan kinerja dengan pushdown
<a name="spark-redshift-connector-pushdown"></a>

 Konektor Spark secara otomatis menerapkan predikat dan pushdown kueri untuk mengoptimalkan kinerja. Dukungan ini berarti bahwa jika Anda menggunakan fungsi yang didukung dalam kueri Anda, konektor Spark akan mengubah fungsi menjadi kueri SQL dan menjalankan kueri di Amazon Redshift. Optimalisasi ini menghasilkan lebih sedikit data yang diambil, sehingga Apache Spark dapat memproses lebih sedikit data dan memiliki kinerja yang lebih baik. Secara default, pushdown diaktifkan secara otomatis. Untuk menonaktifkannya, atur `autopushdown` ke false. 

```
import sqlContext.implicits._val 
 sample= sqlContext.read
    .format("io.github.spark_redshift_community.spark.redshift")
    .option("url",jdbcURL )
    .option("tempdir", tempS3Dir)
    .option("dbtable", "event")
    .option("autopushdown", "false")
    .load()
```

 Fungsi-fungsi berikut didukung dengan pushdown. Jika Anda menggunakan fungsi yang tidak ada dalam daftar ini, konektor Spark akan menjalankan fungsi di Spark alih-alih Amazon Redshift, menghasilkan kinerja yang tidak dioptimalkan. Untuk daftar lengkap fungsi di Spark, lihat [Fungsi bawaan](https://spark.apache.org/docs/latest/api/sql/index.html). 
+ Fungsi agregasi
  + rata-rata
  + count
  + max
  + min
  + sum
  + stddev\$1samp
  + stddev\$1pop
  + var\$1samp
  + var\$1pop
+ Operator Boolean
  + in
  + isnull
  + isnotnull
  + mengandung
  + berakhir dengan
  + mulaidengan
+ Operator logis
  + and
  + atau
  + tidak (atau\$1)
+ Fungsi matematika
  + \$1
  + -
  + \$1
  + /
  + - (unary)
  + perut
  + acos
  + asin
  + atan
  + ceil
  + cos
  + exp
  + lantai
  + terbesar
  + paling sedikit
  + log10
  + pi
  + pow
  + bulat
  + dosa
  + sqrt
  + tan
+ Fungsi lain-lain
  + melemparkan
  + coalesce
  + desimal
  + jika
  + in
+ Operator relasional
  + \$1=
  + =
  + >
  + >=
  + <
  + <=
+ Fungsi string
  + ascii
  + lpad
  + rpad
  + menerjemahkan
  + atas
  + menurunkan
  + length
  + memangkas
  + ltrim
  + rtrim
  + suka
  + substring
  + concat
+ Fungsi waktu dan tanggal
  + add\$1months
  + date
  + date\$1add
  + date\$1sub
  + date\$1trunc
  + timestamp
  + batang
+ Operasi matematika
  + CheckOverflow
  + PromotePrecision
+ Operasi relasional
  + Alias (misalnya, AS)
  + CaseWhen
  + Berbeda
  + InSet
  + Bergabung dan bergabung silang
  + Batas
  + Serikat pekerja, serikat semua
  + ScalarSubquery
  + Sortir (naik dan turun)
  + UnscaledValue

# Opsi konfigurasi lainnya
<a name="spark-redshift-connector-other-config"></a>

Di halaman ini, Anda dapat menemukan deskripsi untuk opsi yang dapat Anda tentukan untuk konektor Amazon Redshift Spark.

## Ukuran maksimum kolom string
<a name="spark-redshift-connector-other-config-max-size"></a>

Redshift membuat kolom string sebagai kolom teks saat membuat tabel, yang disimpan sebagai VARCHAR (256). Jika Anda menginginkan kolom yang mendukung ukuran yang lebih besar, Anda dapat menggunakan maxlength untuk menentukan panjang maksimum kolom string. Berikut ini adalah contoh cara menentukan`maxlength`. 

```
columnLengthMap.foreach { case (colName, length) =>
  val metadata = new MetadataBuilder().putLong("maxlength", length).build()
  df = df.withColumn(colName, df(colName).as(colName, metadata))
}
```

## Jenis kolom
<a name="spark-redshift-connector-other-config-column-type"></a>

Untuk mengatur jenis kolom, gunakan `redshift_type` bidang.

```
columnTypeMap.foreach { case (colName, colType) =>
  val metadata = new MetadataBuilder().putString("redshift_type", colType).build()
  df = df.withColumn(colName, df(colName).as(colName, metadata))
}
```

## Pengkodean kompresi pada kolom
<a name="spark-redshift-connector-other-config-compression-encoding"></a>

 Untuk menggunakan pengkodean kompresi tertentu pada kolom, gunakan bidang pengkodean. Untuk daftar lengkap penyandian kompresi dukungan, lihat Pengkodean [kompresi](https://docs.aws.amazon.com/redshift/latest/dg/c_Compression_encodings.html). 

## Deskripsi untuk kolom
<a name="spark-redshift-connector-other-config-description"></a>

Untuk mengatur deskripsi, gunakan `description` bidang.

## Otentikasi antara Redshift dan Amazon S3
<a name="spark-redshift-connector-other-config-unload-as-text"></a>

 Secara default, hasilnya diturunkan ke Amazon S3 dalam format parket. Untuk membongkar hasilnya sebagai file teks yang dibatasi pipa, tentukan opsi berikut. 

```
.option("unload_s3_format", "TEXT")
```

## Pernyataan pushdown
<a name="spark-redshift-connector-other-config-lazy-pushdown"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/spark-redshift-connector-other-config.html)

## Parameter konektor
<a name="spark-redshift-connector-other-config-spark-parameters"></a>

Peta parameter atau `OPTIONS` di Spark SQL mendukung pengaturan berikut.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/spark-redshift-connector-other-config.html)

**catatan**  
 Pengakuan: Dokumentasi ini berisi kode contoh dan bahasa yang dikembangkan oleh [Apache Software Foundation](http://www.apache.org/) yang dilisensikan di bawah lisensi [Apache](https://www.apache.org/licenses/LICENSE-2.0) 2.0. 

# Jenis data yang didukung
<a name="spark-redshift-connector-data-types"></a>

Tipe data berikut di Amazon Redshift didukung dengan konektor Spark. Untuk daftar lengkap tipe data yang didukung di Amazon Redshift, lihat Jenis [data](https://docs.aws.amazon.com//redshift/latest/dg/c_Supported_data_types.html). Jika tipe data tidak ada dalam tabel di bawah ini, itu tidak didukung di konektor Spark.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/spark-redshift-connector-data-types.html)

## Tipe data yang kompleks
<a name="spark-redshift-connector-complex-data-types"></a>

 Anda dapat menggunakan konektor percikan untuk membaca dan menulis tipe data kompleks Spark seperti`ArrayType`,`MapType`, dan `StructType` ke dan dari kolom tipe data Redshift SUPER. Jika Anda memberikan skema selama operasi baca, data di kolom akan dikonversi ke tipe kompleks yang sesuai di Spark, termasuk semua jenis bersarang. Selain itu, jika `autopushdown` diaktifkan, proyeksi atribut bersarang, nilai peta, dan indeks array didorong ke Redshift sehingga seluruh struktur data bersarang tidak perlu lagi dibongkar saat mengakses hanya sebagian data. 

Saat Anda menulis DataFrames dari konektor, kolom jenis apa pun `MapType` (menggunakan`StringType`),`StructType`, atau `ArrayType` ditulis ke kolom tipe data Redshift SUPER. Saat menulis struktur data bersarang ini, `tempformat` parameter harus bertipe`CSV`,`CSV GZIP`, atau`PARQUET`. Menggunakan `AVRO` akan menyebabkan pengecualian. Menulis struktur `MapType` data yang memiliki tipe kunci selain juga `StringType` akan menyebabkan pengecualian. 

### StructType
<a name="spark-redshift-connector-complex-data-types-examples-structtype"></a>

Contoh berikut menunjukkan cara membuat tabel dengan tipe data SUPER yang berisi struct

```
create table contains_super (a super);
```

Anda kemudian dapat menggunakan konektor untuk menanyakan `StringType` bidang `hello` dari kolom SUPER `a` dalam tabel menggunakan skema seperti pada contoh berikut.

```
import org.apache.spark.sql.types._

val sc = // existing SparkContext
val sqlContext = new SQLContext(sc)

val schema = StructType(StructField("a", StructType(StructField("hello", StringType) ::Nil)) :: Nil)

val helloDF = sqlContext.read
.format("io.github.spark_redshift_community.spark.redshift")
.option("url", jdbcURL )
.option("tempdir", tempS3Dir)
.option("dbtable", "contains_super")
.schema(schema)
.load().selectExpr("a.hello")
```

Contoh berikut menunjukkan bagaimana menulis struct ke kolom. `a`

```
import org.apache.spark.sql.types._
import org.apache.spark.sql._

val sc = // existing SparkContext
val sqlContext = new SQLContext(sc)

val schema = StructType(StructField("a", StructType(StructField("hello", StringType) ::Nil)) :: Nil)
val data = sc.parallelize(Seq(Row(Row("world"))))
val mydf = sqlContext.createDataFrame(data, schema)

mydf.write.format("io.github.spark_redshift_community.spark.redshift").
option("url", jdbcUrl).
option("dbtable", tableName).
option("tempdir", tempS3Dir).
option("tempformat", "CSV").
mode(SaveMode.Append).save
```

### MapType
<a name="spark-redshift-connector-complex-data-types-examples-maptype"></a>

Jika Anda lebih suka menggunakan a `MapType` untuk mewakili data Anda, maka Anda dapat menggunakan struktur `MapType` data dalam skema Anda dan mengambil nilai yang sesuai dengan kunci di peta. Perhatikan bahwa semua kunci dalam struktur `MapType` data Anda harus bertipe String, dan semua nilai harus dari jenis yang sama, seperti int. 

Contoh berikut menunjukkan bagaimana untuk mendapatkan nilai kunci `hello` di kolom`a`.

```
import org.apache.spark.sql.types._

val sc = // existing SparkContext
val sqlContext = new SQLContext(sc)

val schema = StructType(StructField("a", MapType(StringType, IntegerType))::Nil)

val helloDF = sqlContext.read
    .format("io.github.spark_redshift_community.spark.redshift")
    .option("url", jdbcURL )
    .option("tempdir", tempS3Dir)
    .option("dbtable", "contains_super")
    .schema(schema)
    .load().selectExpr("a['hello']")
```

### ArrayType
<a name="spark-redshift-connector-complex-data-types-examples-arraytype"></a>

Jika kolom berisi array bukan struct, Anda dapat menggunakan konektor untuk query elemen pertama dalam array.

```
import org.apache.spark.sql.types._

val sc = // existing SparkContext
val sqlContext = new SQLContext(sc)

val schema = StructType(StructField("a", ArrayType(IntegerType)):: Nil)

val helloDF = sqlContext.read
    .format("io.github.spark_redshift_community.spark.redshift")
    .option("url", jdbcURL )
    .option("tempdir", tempS3Dir)
    .option("dbtable", "contains_super")
    .schema(schema)
    .load().selectExpr("a[0]")
```

### Batasan
<a name="spark-redshift-connector-complex-data-types-limitations"></a>

Menggunakan tipe data yang kompleks dengan konektor percikan memiliki batasan berikut:
+ Semua nama bidang struct bersarang dan kunci peta harus huruf kecil. Jika menanyakan nama bidang kompleks dengan huruf besar, Anda dapat mencoba menghilangkan skema dan menggunakan fungsi `from_json` percikan untuk mengonversi string yang dikembalikan secara lokal sebagai solusi.
+ Setiap bidang peta yang digunakan dalam operasi baca atau tulis harus hanya memiliki `StringType` kunci.
+ Hanya`CSV`,`CSV GZIP`, dan `PARQUET ` didukung nilai tempformat untuk menulis tipe kompleks ke Redshift. Mencoba menggunakan `AVRO ` akan menimbulkan pengecualian.

# Mengonfigurasi koneksi untuk driver ODBC versi 2.x untuk Amazon Redshift
<a name="odbc20-install"></a>

Anda dapat menggunakan koneksi ODBC untuk terhubung ke klaster Amazon Redshift Anda dari banyak alat dan aplikasi klien SQL pihak ketiga. Jika alat klien Anda mendukung JDBC, Anda dapat memilih untuk menggunakan jenis koneksi itu daripada ODBC karena kemudahan konfigurasi yang disediakan JDBC. Namun, jika alat klien Anda tidak mendukung JDBC, Anda dapat mengikuti langkah-langkah di bagian ini untuk mengatur koneksi ODBC di komputer klien atau instans Amazon EC2.

Amazon Redshift menyediakan driver ODBC 64-bit untuk sistem operasi Linux, Windows dan Mac; driver ODBC 32-bit dihentikan. Pembaruan lebih lanjut untuk driver ODBC 32-bit tidak akan dirilis, kecuali untuk patch keamanan yang mendesak.

Untuk informasi terbaru tentang perubahan driver ODBC, lihat [log perubahan](https://github.com/aws/amazon-redshift-odbc-driver/blob/master/CHANGELOG.md).

**Topics**
+ [Mendapatkan URL ODBC](odbc20-getting-url.md)
+ [Menggunakan driver Amazon Redshift ODBC di Microsoft Windows](odbc20-install-config-win.md)
+ [Menggunakan driver Amazon Redshift ODBC di Linux](odbc20-install-config-linux.md)
+ [Menggunakan driver Amazon Redshift ODBC di Apple macOS](odbc20-install-config-mac.md)
+ [Metode autentikasi](odbc20-authentication-ssl.md)
+ [Konversi tipe data](odbc20-converting-data-types.md)
+ [Opsi driver ODBC](odbc20-configuration-options.md)
+ [Versi driver ODBC sebelumnya](odbc20-previous-versions.md)

# Mendapatkan URL ODBC
<a name="odbc20-getting-url"></a>

Amazon Redshift menampilkan URL ODBC untuk klaster Anda di konsol Amazon Redshift. URL ini berisi informasi yang diperlukan untuk mengatur koneksi antara komputer klien Anda dan database.

URL ODBC memiliki format berikut: 

```
Driver={driver}; Server=endpoint_host; Database=database_name; UID=user_name; PWD=password; Port=port_number
```

Bidang format sebelumnya memiliki nilai-nilai berikut:


| Bidang | Nilai | 
| --- | --- | 
| Driver | Nama driver ODBC 64-bit yang akan digunakan: Amazon Redshift ODBC Driver (x64) | 
| Server | Host endpoint dari cluster Amazon Redshift. | 
| Database | Database yang Anda buat untuk cluster Anda. | 
| UID | Nama pengguna dari akun pengguna database yang memiliki izin untuk terhubung ke database. Meskipun nilai ini adalah izin tingkat basis data dan bukan izin tingkat cluster, Anda dapat menggunakan akun pengguna admin Redshift yang Anda atur saat meluncurkan cluster. | 
| PWD | Kata sandi untuk akun pengguna database untuk terhubung ke database. | 
| Port | Nomor port yang Anda tentukan saat meluncurkan cluster. Jika Anda memiliki firewall, pastikan port ini terbuka untuk Anda gunakan. | 

Berikut ini adalah contoh URL ODBC: 

```
Driver={Amazon Redshift ODBC Driver (x64)}; Server=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com; Database=dev; UID=adminuser; PWD=insert_your_admin_user_password_here; Port=5439
```

Untuk informasi tentang tempat menemukan URL ODBC, lihat [Menemukan string koneksi cluster Anda](https://docs.aws.amazon.com/redshift/latest/mgmt/configuring-connections.html#connecting-connection-string). 

# Menggunakan driver Amazon Redshift ODBC di Microsoft Windows
<a name="odbc20-install-config-win"></a>

Anda harus menginstal driver Amazon Redshift ODBC di komputer klien yang mengakses gudang data Amazon Redshift. Untuk setiap komputer tempat Anda menginstal driver, ada persyaratan minimum berikut: 
+ Hak administrator pada mesin. 
+ Mesin memenuhi persyaratan sistem berikut:
  + Salah satu sistem operasi berikut:
    + Windows 10 atau 8.1.
    + Windows Server 2019, 2016, atau 2012.
  + 100 MB ruang disk yang tersedia.
  + Visual C \$1\$1 Redistributable untuk Visual Studio 2015 untuk Windows 64-bit diinstal. Anda dapat mengunduh paket instalasi di [Download Visual C\$1\$1 Redistributable for Visual Studio 2022](https://visualstudio.microsoft.com/downloads/#microsoft-visual-c-redistributable-for-visual-studio-2022) di situs web Microsoft.

# Mengunduh dan menginstal driver Amazon Redshift ODBC
<a name="odbc20-install-win"></a>

Gunakan prosedur berikut untuk mengunduh dan menginstal driver Amazon Redshift ODBC untuk sistem operasi Windows. Hanya gunakan driver yang berbeda jika Anda menjalankan aplikasi pihak ketiga yang disertifikasi untuk digunakan dengan Amazon Redshift, dan aplikasi itu memerlukan driver khusus itu.

Untuk mengunduh dan menginstal driver ODBC: 

1. [Unduh driver berikut: [64-bit ODBC driver versi 2.1.15.0 Di](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.15.0/AmazonRedshiftODBC64-2.1.15.0.msi) 64-bit ODBC driver versi 2.1.15.0](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/odbc/2.1.15.0/AmazonRedshiftODBC64-2.1.15.0.msi)

   Nama driver ini adalah **Amazon Redshift ODBC Driver (**x64).

1. Tinjau lisensi [driver Amazon Redshift ODBC versi](https://github.com/aws/amazon-redshift-odbc-driver/blob/master/LICENSE) 2.x.

1. Klik dua kali file.msi, lalu ikuti langkah-langkah di wizard untuk menginstal driver.

# Membuat entri DSN sistem untuk koneksi ODBC
<a name="odbc20-dsn-win"></a>

Setelah Anda mengunduh dan menginstal driver ODBC, tambahkan entri nama sumber data (DSN) ke komputer klien atau instans Amazon EC2. Alat klien SQL dapat menggunakan sumber data ini untuk terhubung ke database Amazon Redshift. 

Kami menyarankan Anda membuat sistem DSN bukan DSN pengguna. Beberapa aplikasi memuat data menggunakan akun pengguna database yang berbeda, dan mungkin tidak dapat mendeteksi pengguna DSNs yang dibuat di bawah akun pengguna database lain.

**catatan**  
Untuk autentikasi menggunakan kredensial AWS Identity and Access Management (IAM) atau kredensial penyedia identitas (iDP), diperlukan langkah-langkah tambahan. Untuk informasi selengkapnya, lihat [Mengkonfigurasi koneksi JDBC atau ODBC untuk menggunakan](https://docs.aws.amazon.com/redshift/latest/mgmt/generating-iam-credentials-configure-jdbc-odbc.html) kredensyal IAM.

Untuk membuat entri DSN sistem untuk koneksi ODBC:

1. Di menu **Mulai**, ketik “Sumber Data ODBC.” Pilih **Sumber Data ODBC**.

   Pastikan Anda memilih Administrator Sumber Data ODBC yang memiliki bitness yang sama dengan aplikasi klien yang Anda gunakan untuk terhubung ke Amazon Redshift. 

1. Di **Administrator Sumber Data ODBC**, pilih tab **Driver** dan cari folder driver berikut: **Amazon Redshift ODBC Driver** (x64).

1. Pilih tab **Sistem DSN** untuk mengonfigurasi driver untuk semua pengguna di komputer, atau tab **DSN Pengguna** untuk mengonfigurasi driver hanya untuk akun pengguna database Anda.

1. Pilih **Tambahkan**. Jendela **Create New Data Source** terbuka.

1. **Pilih **driver Amazon Redshift ODBC (x64)**, lalu pilih Selesai.** Jendela **Pengaturan DSN Driver Amazon Redshift ODBC** terbuka.

1. Di bawah bagian **Pengaturan Koneksi**, masukkan informasi berikut: 
   + 

**Nama sumber data**  
 Masukkan sebuah nama untuk sumber data. Misalnya, jika Anda mengikuti *Panduan Memulai Amazon Redshift*, Anda dapat mengetik `exampleclusterdsn` agar mudah mengingat cluster yang Anda kaitkan dengan DSN ini. 
   + 

**Server**  
 Tentukan host endpoint untuk cluster Amazon Redshift Anda. Anda dapat menemukan informasi ini di konsol Amazon Redshift di halaman detail cluster. Untuk informasi selengkapnya, lihat [Mengonfigurasi koneksi di Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/configuring-connections.html). 
   + 

**Port**  
 Masukkan nomor port yang digunakan database. Bergantung pada port yang Anda pilih saat membuat, memodifikasi, atau memigrasi klaster, izinkan akses ke port yang dipilih. 
   + 

**Basis Data**  
 Masukkan nama database Amazon Redshift. Jika Anda meluncurkan cluster Anda tanpa menentukan nama database, masukkan`dev`. Jika tidak, gunakan nama yang Anda pilih selama proses peluncuran. Jika Anda mengikuti *Panduan Memulai Amazon Redshift, masukkan*. `dev` 

1. Di bawah bagian **Otentikasi**, tentukan opsi konfigurasi untuk mengonfigurasi otentikasi standar atau IAM. 

1. Pilih **Opsi SSL** dan tentukan nilai untuk yang berikut ini:
   + 

**Mode autentikasi**  
Pilih mode untuk menangani Secure Sockets Layer (SSL). Dalam lingkungan pengujian, Anda mungkin menggunakan`prefer`. Namun, untuk lingkungan produksi dan ketika pertukaran data yang aman diperlukan, gunakan `verify-ca` atau`verify-full`.
   + 

**Min TLS**  
Secara opsional, pilih versi minimum TLS/SSL yang memungkinkan penyimpanan data digunakan oleh driver untuk mengenkripsi koneksi. Misalnya, jika Anda menentukan TLS 1.2, TLS 1.1 tidak dapat digunakan untuk mengenkripsi koneksi. Versi defaultnya adalah TLS 1.2.

1.  Di tab **Proxy**, tentukan pengaturan koneksi proxy apa pun. 

1. Di tab **Kursor**, tentukan opsi tentang cara mengembalikan hasil kueri ke alat atau aplikasi klien SQL Anda. 

1. Di **Opsi Lanjutan**, tentukan nilai untuk`logLevel`,`logPath`,`compression`, dan opsi lainnya. 

1. Pilih **Uji**. Jika komputer klien dapat terhubung ke database Amazon Redshift, pesan berikut akan muncul: **Koneksi** berhasil. Jika komputer klien gagal terhubung ke database, Anda dapat memecahkan masalah yang mungkin terjadi dengan membuat file log dan menghubungi AWS dukungan. Untuk informasi tentang membuat log, lihat (LINK). 

1.  Pilih **OK**. 

# Menggunakan driver Amazon Redshift ODBC di Linux
<a name="odbc20-install-config-linux"></a>

Anda harus menginstal driver Amazon Redshift ODBC di komputer klien yang mengakses gudang data Amazon Redshift. Untuk setiap komputer tempat Anda menginstal driver, ada persyaratan minimum berikut: 
+ Akses root pada mesin.
+ Salah satu distribusi berikut:
  + Red Hat® Enterprise Linux® (RHEL) 8 atau lebih baru
  + CentOS 8 atau yang lebih baru.
+ 150 MB ruang disk yang tersedia.
+ UnixODBC 2.2.14 atau yang lebih baru.
+ glibc 2.26 atau yang lebih baru.

# Mengunduh dan menginstal driver Amazon Redshift ODBC
<a name="odbc20-install-linux"></a>

Untuk mengunduh dan menginstal driver Amazon Redshift ODBC versi 2.x untuk Linux:

1.  Unduh driver berikut: 
   + [x86 64-bit RPM driver versi 2.1.15.0 Di](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.15.0/AmazonRedshiftODBC-64-bit-2.1.15.0.x86_64.rpm) [ versi driver RPM 64-bit 2.1.15.0](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/odbc/2.1.15.0/AmazonRedshiftODBC-64-bit-2.1.15.0.x86_64.rpm)
   + [Versi driver ARM 64-bit RPM 2.1.15.0](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.15.0/AmazonRedshiftODBC-64-bit-2.1.15.0.aarch64.rpm) versi 2.1.15.0
**catatan**  
Driver ODBC 32-bit dihentikan. Pembaruan lebih lanjut tidak akan dirilis, kecuali untuk patch keamanan yang mendesak.

1.  Pergi ke lokasi di mana Anda mengunduh paket, dan kemudian jalankan salah satu perintah berikut. Gunakan perintah yang sesuai dengan distribusi Linux Anda. 

   Pada sistem operasi RHEL dan CentOS, jalankan perintah berikut:

   ```
   yum --nogpgcheck localinstall RPMFileName
   ```

   Ganti `RPMFileName` dengan nama file paket RPM. Misalnya, perintah berikut menunjukkan menginstal driver 64-bit:

   ```
   yum --nogpgcheck localinstall AmazonRedshiftODBC-64-bit-2.x.xx.xxxx.x86_64.rpm
   ```

# Menggunakan manajer driver ODBC untuk mengonfigurasi driver ODBC
<a name="odbc20-config-linux"></a>

Di Linux, Anda menggunakan manajer driver ODBC untuk mengonfigurasi pengaturan koneksi ODBC. Manajer driver ODBC menggunakan file konfigurasi untuk menentukan dan mengkonfigurasi sumber data dan driver ODBC. Manajer driver ODBC yang Anda gunakan bergantung pada sistem operasi yang Anda gunakan.

## Mengkonfigurasi driver ODBC menggunakan pengelola driver UnixODBC
<a name="odbc20-config-unixodbc-linux"></a>

File-file berikut diperlukan untuk mengonfigurasi driver Amazon Redshift ODBC: 
+ ` amazon.redshiftodbc.ini `
+ ` odbc.ini `
+ ` odbcinst.ini `

 Jika Anda menginstal ke lokasi default, file `amazon.redshiftodbc.ini` konfigurasi terletak di`/opt/amazon/redshiftodbcx64`.

 Selain itu, di bawah`/opt/amazon/redshiftodbcx64`, Anda dapat menemukan sampel `odbc.ini` dan `odbcinst.ini` file. Anda dapat menggunakan file-file ini sebagai contoh untuk mengonfigurasi driver Amazon Redshift ODBC dan nama sumber data (DSN).

 Kami tidak menyarankan menggunakan direktori instalasi driver Amazon Redshift ODBC untuk file konfigurasi. File sampel dalam direktori yang diinstal hanya untuk tujuan contoh. Jika Anda menginstal ulang driver Amazon Redshift ODBC di lain waktu, atau meningkatkan ke versi yang lebih baru, direktori instalasi akan ditimpa. Anda akan kehilangan perubahan apa pun yang mungkin telah Anda buat pada file di direktori instalasi.

 Untuk menghindari hal ini, salin `amazon.redshiftodbc.ini` file ke direktori selain direktori instalasi. Jika Anda menyalin file ini ke direktori home pengguna, tambahkan titik (.) ke awal nama file untuk menjadikannya file tersembunyi.

 Untuk `odbcinst.ini` file `odbc.ini` dan, gunakan file konfigurasi di direktori home pengguna atau buat versi baru di direktori lain. Secara default, sistem operasi Linux Anda harus memiliki `odbc.ini` file dan `odbcinst.ini` file di direktori home pengguna (`/home/$USER`atau`~/.`). File default ini adalah file tersembunyi, yang ditunjukkan oleh titik (.) di depan setiap nama file. File-file ini hanya ditampilkan ketika Anda menggunakan `-a` bendera untuk daftar isi direktori.

 Opsi apa pun yang Anda pilih untuk `odbcinst.ini` file `odbc.ini` dan, ubah file untuk menambahkan informasi konfigurasi driver dan DSN. Jika Anda membuat file baru, Anda juga perlu mengatur variabel lingkungan untuk menentukan di mana file konfigurasi ini berada.

 Secara default, manajer driver ODBC dikonfigurasi untuk menggunakan versi tersembunyi dari file `odbc.ini` dan `odbcinst.ini` konfigurasi (bernama `.odbc.ini` dan`.odbcinst.ini`) yang terletak di direktori home. Mereka juga dikonfigurasi untuk menggunakan `amazon.redshiftodbc.ini` file di direktori instalasi driver. Jika Anda menyimpan file konfigurasi ini di tempat lain, atur variabel lingkungan yang dijelaskan berikut ini sehingga manajer driver dapat menemukan file.

 Jika Anda menggunakan UnixODBC, lakukan hal berikut: 
+  Atur `ODBCINI` ke path lengkap dan nama file `odbc.ini` file. 
+  Setel `ODBCSYSINI` ke path lengkap direktori yang berisi `odbcinst.ini` file. 
+  Atur `AMAZONREDSHIFTODBCINI` ke path lengkap dan nama file `amazon.redshiftodbc.ini` file. 

Berikut ini adalah contoh pengaturan nilai-nilai di atas:

```
export ODBCINI=/usr/local/odbc/odbc.ini 
export ODBCSYSINI=/usr/local/odbc 
export AMAZONREDSHIFTODBCINI=/etc/amazon.redshiftodbc.ini
```

## Mengkonfigurasi koneksi menggunakan nama sumber data (DSN) di Linux
<a name="odbc20-dsn-linux"></a>

Saat menghubungkan ke penyimpanan data Anda menggunakan nama sumber data (DSN), konfigurasikan `odbc.ini` file untuk menentukan nama sumber data (DSNs). Tetapkan properti dalam `odbc.ini` file untuk membuat DSN yang menentukan informasi koneksi untuk penyimpanan data Anda.

Pada sistem operasi Linux, gunakan format berikut:

```
[ODBC Data Sources]
driver_name=dsn_name

[dsn_name]
Driver=path/driver_file
Host=cluster_endpoint
Port=port_number
Database=database_name
locale=locale
```

Contoh berikut menunjukkan konfigurasi untuk `odbc.ini` dengan driver ODBC 64-bit pada sistem operasi Linux.

```
[ODBC Data Sources]
Amazon_Redshift_x64=Amazon Redshift ODBC Driver (x64)

[Amazon_Redshift_x64]
Driver=/opt/amazon/redshiftodbcx64/librsodbc64.so
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932Database=dev
locale=en-US
```

## Mengkonfigurasi koneksi tanpa DSN di Linux
<a name="odbc20-no-dsn-linux"></a>

 Untuk terhubung ke penyimpanan data Anda melalui koneksi yang tidak memiliki DSN, tentukan driver dalam `odbcinst.ini` file. Kemudian berikan string koneksi tanpa DSN di aplikasi Anda.

Pada sistem operasi Linux, gunakan format berikut:

```
[ODBC Drivers]
driver_name=Installed
...
                            
[driver_name]
Description=driver_description
Driver=path/driver_file
    
...
```

Contoh berikut menunjukkan konfigurasi untuk `odbcinst.ini` dengan driver ODBC 64-bit pada sistem operasi Linux.

```
[ODBC Drivers]
Amazon Redshift ODBC Driver (x64)=Installed

[Amazon Redshift ODBC Driver (x64)]
Description=Amazon Redshift ODBC Driver (64-bit)
Driver=/opt/amazon/redshiftodbcx64/librsodbc64.so
```

# Menggunakan driver Amazon Redshift ODBC di Apple macOS
<a name="odbc20-install-config-mac"></a>

Anda harus menginstal driver Amazon Redshift ODBC di komputer klien yang mengakses gudang data Amazon Redshift. Untuk setiap komputer tempat Anda menginstal driver, ini adalah persyaratan minimum berikut: 
+ Akses root pada mesin. 
+ Persyaratan Sistem Apple macOS:
  + Versi 64-bit Apple macOS versi 11.7 atau lebih tinggi (seperti Apple macOS Big Sur, Monterey, Ventura atau yang lebih baru) diperlukan. Driver Redshift ODBC hanya mendukung aplikasi klien 64-bit.
  + 150 MB ruang disk yang tersedia.
  + Driver mendukung aplikasi yang dibangun dengan iodBC 3.52.9\$1atau UnixODBC 2.3.7\$1.

# Mengunduh dan menginstal driver Amazon Redshift ODBC
<a name="odbc20-install-mac"></a>

Gunakan prosedur berikut untuk mengunduh dan menginstal driver Amazon Redshift ODBC di Apple macOS. Hanya gunakan driver yang berbeda jika Anda menjalankan aplikasi pihak ketiga yang disertifikasi untuk digunakan dengan Amazon Redshift, dan aplikasi itu memerlukan driver khusus itu.

Untuk mengunduh dan menginstal driver ODBC: 

1. [Unduh driver berikut: [64-bit ODBC driver versi 2.1.15.0 Di](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.15.0/AmazonRedshiftODBC-64-bit.2.1.15.0.universal.pkg) 64-bit ODBC driver versi 2.1.15.0](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/odbc/2.1.15.0/AmazonRedshiftODBC-64-bit.2.1.15.0.universal.pkg)

   Driver ini didukung pada arsitektur x86\$164 dan arm64. Nama driver ini adalah **Amazon Redshift ODBC Driver (**x64).

1. Tinjau lisensi [driver Amazon Redshift ODBC versi](https://github.com/aws/amazon-redshift-odbc-driver/blob/master/LICENSE) 2.x.

1. Klik dua kali file.pkg, lalu ikuti langkah-langkah di wizard untuk menginstal driver. Atau, jalankan perintah berikut:

   ```
   sudo installer -pkg PKGFileName -target /
   ```

   Ganti `PKGFileName` dengan nama file paket pkg. Misalnya, perintah berikut menunjukkan menginstal driver 64-bit:

   ```
   sudo installer -pkg ./AmazonRedshiftODBC-64-bit.X.X.XX.X.universal.pkg -target /
   ```

# Menggunakan manajer driver ODBC untuk mengonfigurasi driver ODBC
<a name="odbc20-config-mac"></a>

Di Mac, Anda menggunakan pengelola driver ODBC untuk mengonfigurasi pengaturan koneksi ODBC. Manajer driver ODBC menggunakan file konfigurasi untuk menentukan dan mengkonfigurasi sumber data dan driver ODBC. Manajer driver ODBC yang Anda gunakan bergantung pada sistem operasi yang Anda gunakan.

## Mengkonfigurasi driver ODBC menggunakan manajer driver iodBC atau UnixODBC
<a name="odbc20-config-iodbc-mac"></a>

File-file berikut diperlukan untuk mengonfigurasi driver Amazon Redshift ODBC: 
+ ` amazon.redshiftodbc.ini `
+ ` odbc.ini `
+ ` odbcinst.ini `

 Jika Anda menginstal ke lokasi default, file `amazon.redshiftodbc.ini` konfigurasi terletak di`/opt/amazon/redshiftodbcx64`.

 Selain itu, di bawah`/opt/amazon/redshiftodbcx64`, Anda dapat menemukan sampel `odbc.ini` dan `odbcinst.ini` file. Anda dapat menggunakan file-file ini sebagai contoh untuk mengonfigurasi driver Amazon Redshift ODBC dan nama sumber data (DSN). File sampel dalam direktori yang diinstal hanya untuk tujuan contoh.

 Kami tidak menyarankan menggunakan direktori instalasi driver Amazon Redshift ODBC untuk file konfigurasi. Jika Anda menginstal ulang driver Amazon Redshift ODBC di lain waktu, atau meningkatkan ke versi yang lebih baru, direktori instalasi akan ditimpa. Anda akan kehilangan perubahan apa pun yang mungkin telah Anda buat pada file di direktori instalasi.

 Untuk menghindari hal ini`odbc.ini`, salin, `odbcinst.ini` dan `amazon.redshiftodbc.ini` file ke direktori selain direktori instalasi. Jika Anda menyalin file-file ini ke direktori home pengguna, tambahkan titik (.) ke awal nama file ini untuk menjadikannya file tersembunyi.

 Ubah file untuk menambahkan informasi konfigurasi DSN. Saat Anda membuat file baru, Anda juga perlu mengatur variabel lingkungan untuk menentukan di mana file konfigurasi ini berada.

Berikut ini adalah contoh pengaturan variabel lingkungan:

```
export ODBCINI=/Library/ODBC/odbc.ini
export ODBCSYSINI=/Library/ODBC
export ODBCINSTINI=${ODBCSYSINI}/odbcinst.ini
```

Untuk aplikasi baris perintah: Tambahkan perintah ekspor ke file startup shell Anda (misalnya, `~/.bash_profile` atau`~/.zshrc`). 

Untuk versi manajer driver yang didukung, lihat [di sini](https://docs.aws.amazon.com/redshift/latest/mgmt/odbc20-install-config-mac.html) 

### Mengonfigurasi koneksi menggunakan nama sumber data (DSN) di Apple macOS
<a name="odbc20-dsn-mac"></a>

Saat menghubungkan ke penyimpanan data Anda menggunakan nama sumber data (DSN), konfigurasikan `odbc.ini` file untuk menentukan nama sumber data (DSNs). Tetapkan properti dalam `odbc.ini` file untuk membuat DSN yang menentukan informasi koneksi untuk gudang data Redshift Anda.

Di Apple macOS, gunakan format berikut:

```
[ODBC Data Sources]
driver_name=dsn_name

[dsn_name]
Driver=path/driver_file
Host=cluster_endpoint
Port=port_number
Database=database_name
locale=locale
```

Contoh berikut menunjukkan konfigurasi untuk `odbc.ini` dengan driver ODBC 64-bit di Apple macOS.

```
[ODBC Data Sources]
Amazon_Redshift_x64=Amazon Redshift ODBC Driver (x64)

[Amazon_Redshift_x64]
Driver=/opt/amazon/redshiftodbcx64/librsodbc64.dylib
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932
Database=dev
locale=en-US
```

### Mengkonfigurasi koneksi tanpa DSN di Apple macOS
<a name="odbc20-no-dsn-mac"></a>

 Untuk terhubung ke gudang data Redshift Anda melalui koneksi yang tidak memiliki DSN, tentukan driver dalam file. `odbcinst.ini` Kemudian berikan string koneksi tanpa DSN di aplikasi Anda.

Di Apple macOS, gunakan format berikut:

```
[ODBC Drivers]
driver_name=Installed
...
                            
[driver_name]
Description=driver_description
Driver=path/driver_file
    
...
```

Contoh berikut menunjukkan konfigurasi untuk `odbcinst.ini` dengan driver ODBC 64-bit di Apple macOS.

```
[ODBC Drivers]
Amazon Redshift ODBC Driver (x64)=Installed

[Amazon Redshift ODBC Driver (x64)]
Description=Amazon Redshift ODBC Driver (64-bit)
Driver=/opt/amazon/redshiftodbcx64/librsodbc64.dylib
```

# Metode autentikasi
<a name="odbc20-authentication-ssl"></a>

Untuk melindungi data dari akses yang tidak sah, penyimpanan data Amazon Redshift memerlukan semua koneksi untuk diautentikasi menggunakan kredensil pengguna.

Tabel berikut mengilustrasikan opsi koneksi yang diperlukan dan opsional untuk setiap metode otentikasi yang dapat digunakan untuk menyambung ke driver Amazon Redshift ODBC versi 2.x:


| Metode Otentikasi | Diperlukan | Opsional | 
| --- | --- | --- | 
|  Standar  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |   | 
|  Profil IAM  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)   **ClusterID** **dan** Region harus disetel **di** Host jika tidak disetel secara terpisah.    | 
|  Kredensi IAM  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)   **ClusterID** **dan** Region harus disetel **di** Host jika tidak disetel secara terpisah.    | 
|  IKLAN FS  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)   **ClusterID** **dan** Region harus disetel **di** Host jika tidak disetel secara terpisah.    | 
|  Azure AD  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)   **ClusterID** **dan** Region harus disetel **di** Host jika tidak disetel secara terpisah.    | 
|  JWT  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  | 
|  Okta  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)   **ClusterID** **dan** Region harus disetel **di** Host jika tidak disetel secara terpisah.    | 
|  Federasi Ping  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)   **ClusterID** **dan** Region harus disetel **di** Host jika tidak disetel secara terpisah.    | 
|  Browser Azure AD  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)   **ClusterID** **dan** Region harus disetel **di** Host jika tidak disetel secara terpisah.    | 
|  Browser SAMP  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)   **ClusterID** **dan** Region harus disetel **di** Host jika tidak disetel secara terpisah.    | 
|  Profil Auth  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |   | 
|  Browser Azure AD OAUTH2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)   **ClusterID** **dan** Region harus disetel **di** Host jika tidak disetel secara terpisah.    | 
|  AWS Pusat Identitas IAM  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/odbc20-authentication-ssl.html)  | 

## Menggunakan layanan kredensyal eksternal
<a name="odbc20-authentication-external"></a>

Selain dukungan bawaan untuk AD FS, Azure AD, dan Okta, versi Windows dari driver Amazon Redshift ODBC juga menyediakan dukungan untuk layanan kredensil lainnya. Driver dapat mengautentikasi koneksi menggunakan plugin penyedia kredensyal berbasis SAML pilihan Anda. 

Untuk mengkonfigurasi layanan kredensional eksternal pada Windows:

1. Buat profil IAM yang menentukan plugin penyedia kredensyal dan parameter otentikasi lainnya sesuai kebutuhan. Profil harus dikodekan ASCII, dan harus berisi pasangan kunci-nilai berikut, di mana jalur lengkap ke aplikasi `PluginPath` plugin: 

   ```
   plugin_name = PluginPath
   ```

   Contoh:

   ```
   plugin_name = C:\Users\kjson\myapp\CredServiceApp.exe 
   ```

   Untuk informasi tentang cara membuat profil, lihat [Menggunakan Profil Konfigurasi di Panduan](https://docs.aws.amazon.com/redshift/latest/mgmt/options-for-providing-iam-credentials.html#using-configuration-profile) Manajemen Cluster Amazon Redshift.

1. Konfigurasikan driver untuk menggunakan profil ini. Driver mendeteksi dan menggunakan pengaturan otentikasi yang ditentukan dalam profil.

# Konversi tipe data
<a name="odbc20-converting-data-types"></a>

Driver Amazon Redshift ODBC versi 2.x mendukung banyak format data umum, mengonversi antara Amazon Redshift dan tipe data SQL.

Tabel berikut mencantumkan pemetaan tipe data yang didukung.


| Jenis Amazon Redshift | Jenis SQL | 
| --- | --- | 
|  BIGINT  |  SQL\$1BIGINT  | 
|  BOOLEAN  |  SQL\$1BIT  | 
|  CHAR  |  SQL\$1CHAR  | 
|  DATE  |  SQL\$1TYPE\$1DATE  | 
|  DECIMAL  |  SQL\$1NUMERIK  | 
|  DOUBLE PRECISION  |  SQL\$1GANDA  | 
|  GEOGRAPHY  |  SQL\$1 LONGVARBINARY  | 
|  GEOMETRY  |  SQL\$1 LONGVARBINARY  | 
|  INTEGER  |  SQL\$1INTEGER  | 
|  REAL  |  SQL\$1REAL  | 
|  SMALLINT  |  SQL\$1SMALLINT  | 
|  SUPER  |  SQL\$1LONGVARCHAR  | 
|  TEXT  |  SQL\$1LONGVARCHAR  | 
|  TIME  |  SQL\$1TYPE\$1TIME  | 
|  JADWAL  |  SQL\$1TYPE\$1TIME  | 
|  TIMESTAMP  |  STEMPEL WAKTU SQL\$1TYPE\$1  | 
|  TIMESTAMPTZ  |  STEMPEL WAKTU SQL\$1TYPE\$1  | 
|  VARBYTE  |  SQL\$1LONGVARBINARY  | 
|  VARCHAR  |  SQL\$1VARCHAR  | 

# Opsi driver ODBC
<a name="odbc20-configuration-options"></a>

Anda dapat menggunakan opsi konfigurasi driver untuk mengontrol perilaku driver Amazon Redshift ODBC. Opsi driver tidak peka huruf besar/kecil.

Di Microsoft Windows, Anda biasanya mengatur opsi driver saat mengonfigurasi nama sumber data (DSN). Anda juga dapat mengatur opsi driver dalam string koneksi saat Anda terhubung secara terprogram, atau dengan menambahkan atau mengubah kunci registri. `HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\your_DSN`

Di Linux, Anda mengatur opsi konfigurasi driver di `amazon.redshiftodbc.ini` file `odbc.ini` dan Anda. Opsi konfigurasi yang diatur dalam `amazon.redshiftodbc.ini` file berlaku untuk semua koneksi. Sebaliknya, opsi konfigurasi yang diatur dalam `odbc.ini` file khusus untuk koneksi. Opsi konfigurasi yang disetel lebih `odbc.ini` diutamakan daripada opsi konfigurasi yang ditetapkan. `amazon.redshiftodbc.ini`

Berikut ini adalah deskripsi untuk opsi yang dapat Anda tentukan untuk driver Amazon Redshift ODBC versi 2.x:

## AccessKeyID
<a name="odbc20-accesskeyid-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

 Kunci akses IAM untuk pengguna atau peran. Jika Anda mengatur parameter ini, Anda juga harus menentukan **SecretAccessKey**.

Parameter ini bersifat opsional.

## app\$1id
<a name="odbc20-app-id-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

ID unik yang disediakan OKTA yang terkait dengan aplikasi Amazon Redshift Anda.

Parameter ini bersifat opsional.

## ApplicationName
<a name="odbc20-application_name-option"></a>
+ **Nilai default** - Tidak ada
+ **Tipe data** - String

Nama aplikasi klien untuk diteruskan ke Amazon Redshift untuk tujuan audit. [Nama aplikasi yang Anda berikan muncul di kolom 'application\$1name' dari tabel SYS\$1CONNECTION\$1LOG.](https://docs.aws.amazon.com/redshift/latest/dg/SYS_CONNECTION_LOG.html) Ini membantu melacak dan memecahkan masalah sumber koneksi saat men-debug masalah.

Parameter ini bersifat opsional.

## app\$1name
<a name="odbc20-app-name-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama aplikasi Okta yang Anda gunakan untuk mengautentikasi koneksi ke Amazon Redshift.

Parameter ini bersifat opsional.

## AuthProfile
<a name="odbc20-authprofile-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Profil otentikasi yang digunakan untuk mengelola pengaturan koneksi. Jika Anda mengatur parameter ini, Anda juga harus mengatur **AccessKeyID** dan **SecretAccessKey**. 

Parameter ini bersifat opsional.

## AuthType
<a name="odbc20-authtype-option"></a>
+ **Nilai Default** - Standar
+ **Tipe Data** - String

Opsi ini menentukan mode otentikasi yang digunakan driver saat Anda mengonfigurasi DSN menggunakan kotak dialog Amazon Redshift ODBC Driver DSN Setup: 
+  Standar: Otentikasi standar menggunakan nama pengguna dan kata sandi Amazon Redshift Anda. 
+  AWS Profil: Autentikasi IAM menggunakan profil.
+  AWS IAM Credentials: Autentikasi IAM menggunakan kredensi IAM. 
+  Penyedia Identitas: AD FS: Autentikasi IAM menggunakan Layanan Federasi Direktori Aktif (AD FS). 
+  Penyedia Identitas: Plugin Auth: Plugin otorisasi yang menerima token AWS IAM Identity Center atau token identitas berbasis JSON (OIDC) OpenID Connect (OIDC) dari penyedia identitas web mana pun yang ditautkan ke IAM Identity Center. AWS 
+  Penyedia Identitas: Azure AD: Autentikasi IAM menggunakan portal Azure AD. 
+  Penyedia Identitas: JWT: Autentikasi IAM menggunakan JSON Web Token (JWT). 
+  Penyedia Identitas: Okta: Otentikasi IAM menggunakan Okta. 
+  Penyedia Identitas: PingFederate: Autentikasi IAM menggunakan. PingFederate 

Opsi ini hanya tersedia ketika Anda mengonfigurasi DSN menggunakan kotak dialog Amazon Redshift ODBC Driver DSN Setup di driver Windows. Saat Anda mengonfigurasi koneksi menggunakan string koneksi atau mesin non-Windows, driver secara otomatis menentukan apakah akan menggunakan otentikasi Kredensial Standar, AWS Profil, atau AWS IAM berdasarkan kredensi yang Anda tentukan. Untuk menggunakan penyedia identitas, Anda harus mengatur properti **plugin\$1name**. 

Parameter ini diperlukan.

## AutoCreate
<a name="odbc20-autocreate-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Boolean

Boolean yang menentukan apakah driver membuat pengguna baru ketika pengguna yang ditentukan tidak ada. 
+  1 \$1 BENAR: Jika pengguna yang ditentukan oleh **UID** tidak ada, driver membuat pengguna baru. 
+  0 \$1 SALAH: Driver tidak membuat pengguna baru. Jika pengguna yang ditentukan tidak ada, otentikasi gagal. 

Parameter ini bersifat opsional.

## CaFile
<a name="odbc20-cafile-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Jalur file ke file sertifikat CA yang digunakan untuk beberapa bentuk otentikasi IAM. 

 Parameter ini hanya tersedia di Linux.

Parameter ini bersifat opsional.

## client\$1id
<a name="odbc20-client-id-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

ID klien yang terkait dengan aplikasi Amazon Redshift Anda di Azure AD. 

Parameter ini diperlukan jika mengautentikasi melalui layanan Azure AD.

## rahasia klien\$1
<a name="odbc20-client-secret-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

 Kunci rahasia yang terkait dengan aplikasi Amazon Redshift Anda di Azure AD. 

Parameter ini diperlukan jika mengautentikasi melalui layanan Azure AD.

## ClusterId
<a name="odbc20-clusterid-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama cluster Amazon Redshift yang ingin Anda sambungkan. Ini digunakan dalam otentikasi IAM. ID Cluster tidak ditentukan dalam parameter **Server**.

Parameter ini bersifat opsional.

## Kompresi
<a name="odbc20-compression-option"></a>
+ **Nilai Default** - off
+ **Tipe Data** - String

Metode kompresi yang digunakan untuk komunikasi protokol kawat antara server Amazon Redshift dan klien atau driver.

Anda dapat menentukan salah satu nilai berikut:
+ lz4: Mengatur metode kompresi yang digunakan untuk komunikasi protokol kawat dengan Amazon Redshift ke. `lz4` 
+ zstd: Menyetel metode kompresi yang digunakan untuk komunikasi protokol kawat dengan Amazon Redshift ke. `zstd` 
+  off: Tidak menggunakan kompresi untuk komunikasi protokol kawat dengan Amazon Redshift. 

Parameter ini bersifat opsional.

## Basis Data
<a name="odbc20-database-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama database Amazon Redshift yang ingin Anda akses.

Parameter ini diperlukan.

## DatabaseMetadataCurrentDbOnly
<a name="odbc20-database-metadata-option"></a>
+ **Nilai Default** - 1
+ **Tipe Data** - Boolean

Boolean yang menentukan apakah driver mengembalikan metadata dari beberapa database dan cluster.
+ 1 \$1 BENAR: Driver hanya mengembalikan metadata dari database saat ini. 
+  0 \$1 SALAH. Driver mengembalikan metadata di beberapa database dan cluster Amazon Redshift. 

Parameter ini bersifat opsional.

## dbgroups\$1filter
<a name="odbc20-dbgroups-filter-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Ekspresi reguler yang dapat Anda tentukan untuk memfilter DbGroups yang diterima dari respons SAFL ke Amazon Redshift saat menggunakan jenis autentikasi Azure, Browser Azure, dan Browser SALL. 

Parameter ini bersifat opsional.

## Driver
<a name="odbc20-driver-option"></a>
+ **Nilai Default** - Driver Amazon Redshift ODBC (x64)
+ **Tipe Data** - String

Nama sopirnya. Satu-satunya nilai yang didukung adalah **Amazon Redshift ODBC Driver (**x64).

Parameter ini diperlukan jika Anda tidak mengatur **DSN**.

## DSN
<a name="odbc20-dsn-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama nama sumber data driver. Aplikasi menentukan DSN di SQLDriver Connect API.

Parameter ini diperlukan jika Anda tidak mengatur **Driver.** .

## EndpointUrl
<a name="odbc20-endpointurl-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Titik akhir utama yang digunakan untuk berkomunikasi dengan Amazon Redshift Coral Service untuk otentikasi IAM.

Parameter ini bersifat opsional.

## ForceLowercase
<a name="odbc20-forcelowercase-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Boolean

Boolean yang menentukan apakah driver huruf kecil semua DbGroups dikirim dari penyedia identitas ke Amazon Redshift saat menggunakan autentikasi masuk tunggal. 
+  1 \$1 BENAR: Driver huruf kecil semua DbGroups yang dikirim dari penyedia identitas. 
+  0 \$1 SALAH: Pengemudi tidak berubah DbGroups. 

Parameter ini bersifat opsional.

## group\$1federasi
<a name="odbc20-group-federation-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Boolean

Boolean yang menentukan apakah `getClusterCredentialsWithIAM` API digunakan untuk mendapatkan kredensil klaster sementara di klaster yang disediakan. Opsi ini memungkinkan pengguna IAM berintegrasi dengan peran database Redshift dalam cluster yang disediakan. Perhatikan bahwa opsi ini tidak berlaku untuk ruang nama Redshift Tanpa Server.
+  1 \$1 BENAR: Driver menggunakan `getClusterCredentialsWithIAM` API untuk mendapatkan kredensyal cluster sementara di cluster yang disediakan. 
+  0 \$1 FALSE: Driver menggunakan `getClusterCredentials` API default untuk mendapatkan kredenal cluster sementara di cluster yang disediakan. 

Parameter ini bersifat opsional.

## http\$1proxy\$1host
<a name="odbc20-https-proxy-host-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama host atau alamat IP server proxy tempat Anda ingin melewati proses otentikasi IAM.

Parameter ini bersifat opsional.

## http\$1proxy\$1password
<a name="odbc20-https-proxy-password-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Kata sandi yang Anda gunakan untuk mengakses server proxy. Ini digunakan untuk otentikasi IAM.

Parameter ini bersifat opsional.

## http\$1proxy\$1port
<a name="odbc20-https-proxy-port-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - Integer

Jumlah port yang digunakan server proxy untuk mendengarkan koneksi klien. Ini digunakan untuk otentikasi IAM.

Parameter ini bersifat opsional.

## http\$1proxy\$1nama pengguna
<a name="odbc20-https-proxy-username-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama pengguna yang Anda gunakan untuk mengakses server proxy. Ini digunakan untuk otentikasi IAM.

Parameter ini bersifat opsional.

## IAM
<a name="odbc20-iam-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Boolean

Boolean yang menentukan apakah driver menggunakan metode otentikasi IAM untuk mengautentikasi koneksi. 
+  1 \$1 BENAR: Driver menggunakan salah satu metode autentikasi IAM (menggunakan kunci akses dan secret key pair, atau profil, atau layanan kredensional). 
+  0 \$1 SALAH. Driver menggunakan otentikasi standar (menggunakan nama pengguna dan kata sandi database Anda). 

Parameter ini bersifat opsional.

## idc\$1client\$1display\$1name
<a name="odbc20-idc_client_display_name-option"></a>
+ **Nilai Default** - Driver Amazon Redshift ODBC
+ **Tipe Data** - String

Nama tampilan yang akan digunakan untuk klien yang menggunakan BrowserIdcAuthPlugin.

Parameter ini bersifat opsional.

## idc\$1region
<a name="odbc20-idc_region"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

 AWS Wilayah di mana instans AWS IAM Identity Center berada.

Parameter ini diperlukan hanya ketika mengautentikasi menggunakan `BrowserIdcAuthPlugin` dalam opsi konfigurasi plugin\$1name.

## idp\$1host
<a name="odbc20-idp-host-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Host IDP (penyedia identitas) yang Anda gunakan untuk mengautentikasi ke Amazon Redshift.

Parameter ini bersifat opsional.

## idp\$1port
<a name="odbc20-idp-port-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - Integer

Port untuk IDP (penyedia identitas) yang Anda gunakan untuk mengautentikasi ke Amazon Redshift. Bergantung pada port yang Anda pilih saat membuat, memodifikasi, atau memigrasi klaster, izinkan akses ke port yang dipilih. 

Parameter ini bersifat opsional.

## idp\$1response\$1timeout
<a name="odbc20-idp-response-timeout-option"></a>
+ **Nilai Default** - 120
+ **Tipe Data** - Integer

Jumlah detik driver menunggu respons SAMP dari penyedia identitas saat menggunakan layanan SAMP atau Azure AD melalui plugin browser. 

Parameter ini bersifat opsional.

## idp\$1penyewa
<a name="odbc20-idp-tenant-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

 ID penyewa Azure AD yang terkait dengan aplikasi Amazon Redshift Anda.

Parameter ini diperlukan jika mengautentikasi melalui layanan Azure AD.

## idp\$1partisi
<a name="odbc20-idp-partition-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Menentukan partisi cloud tempat penyedia identitas Anda (iDP) dikonfigurasi. Ini menentukan titik akhir otentikasi IDP mana yang terhubung ke driver.

Jika parameter ini dibiarkan kosong, driver default ke partisi komersial. Kemungkinan nilainya adalah:
+ `us-gov`: Gunakan nilai ini jika IDP Anda dikonfigurasi di Azure Government. Misalnya, Azure AD Government menggunakan `login.microsoftonline.us` endpoint.
+ `cn`: Gunakan nilai ini jika IDP Anda dikonfigurasi di partisi cloud Tiongkok. Misalnya, Azure AD Tiongkok menggunakan titik akhir. `login.chinacloudapi.cn`

Parameter ini bersifat opsional.

## idp\$1use\$1https\$1proxy
<a name="odbc20-idp-use-https-proxy-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Boolean

Boolean yang menentukan apakah driver melewati proses otentikasi untuk penyedia identitas (iDP) melalui server proxy. 
+  1 \$1 BENAR: Driver melewati proses otentikasi IDP melalui server proxy. 
+  0 \$1 SALAH. Driver tidak melewati proses otentikasi IDP melalui server proxy. 

Parameter ini bersifat opsional.

## InstanceProfile
<a name="odbc20-instanceprofile-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Boolean

Boolean yang menentukan apakah driver menggunakan profil instans Amazon EC2, saat dikonfigurasi untuk menggunakan profil untuk otentikasi.
+  1 \$1 BENAR: Driver menggunakan profil instans Amazon EC2. 
+  0 \$1 SALAH. Pengemudi menggunakan profil peran berantai yang ditentukan oleh opsi Nama Profil (**Profil**) sebagai gantinya. 

Parameter ini bersifat opsional.

## issuer\$1url
<a name="odbc20-issuer_url"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

 Menunjuk ke titik akhir instance server AWS IAM Identity Center. 

Parameter ini diperlukan hanya ketika mengautentikasi menggunakan `BrowserIdcAuthPlugin` dalam opsi konfigurasi plugin\$1name.

## KeepAlive
<a name="odbc20-keepalive-option"></a>
+ **Nilai Default** - 1
+ **Tipe Data** - Boolean

Boolean yang menentukan apakah driver menggunakan TCP keepalives untuk mencegah koneksi dari timing out.
+  1 \$1 BENAR: Driver menggunakan TCP keepalives untuk mencegah koneksi dari timing out. 
+  0 \$1 SALAH. Pengemudi tidak menggunakan keepalives TCP. 

Parameter ini bersifat opsional.

## KeepAliveCount
<a name="odbc20-keepalivecount-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Integer

Jumlah paket TCP keepalive yang dapat hilang sebelum koneksi dianggap rusak. Ketika parameter ini diatur ke 0, driver menggunakan sistem default untuk pengaturan ini. 

Parameter ini bersifat opsional.

## KeepAliveInterval
<a name="odbc20-keepaliveinterval-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Integer

Jumlah detik antara setiap transmisi ulang TCP keepalive. Ketika parameter ini diatur ke 0, driver menggunakan sistem default untuk pengaturan ini. 

Parameter ini bersifat opsional.

## KeepAliveTime
<a name="odbc20-keepalivetime-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Integer

Jumlah detik tidak aktif sebelum driver mengirim paket TCP keepalive. Ketika parameter ini diatur ke 0, driver menggunakan sistem default untuk pengaturan ini. 

Parameter ini bersifat opsional.

## listen\$1port
<a name="odbc20-listen-port-option"></a>
+ **Nilai Default** - 7890
+ **Tipe Data** - Integer

Port yang digunakan driver untuk menerima respons SAFL dari penyedia identitas atau kode otorisasi saat menggunakan layanan SAFL, Azure AD, atau AWS IAM Identity Center melalui plugin browser.

Parameter ini bersifat opsional.

## login\$1url
<a name="odbc20-login-url-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

URL untuk sumber daya di situs web penyedia identitas saat menggunakan plugin Saml Browser generik.

Parameter ini diperlukan jika mengautentikasi dengan layanan SAMP atau Azure AD melalui plugin browser.

## loginToRp
<a name="odbc20-logintorp-option"></a>
+ **Nilai default** - urn:amazon:webservices
+ **Tipe Data** - String

Pihak yang mengandalkan percaya bahwa Anda ingin menggunakan untuk jenis otentikasi AD FS.

String ini opsional.

## LogLevel
<a name="odbc20-loglevel-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Integer

Gunakan properti ini untuk mengaktifkan atau menonaktifkan logging di driver dan untuk menentukan jumlah detail yang disertakan dalam log. file. Kami menyarankan Anda hanya mengaktifkan logging cukup lama untuk menangkap masalah, karena logging mengurangi kinerja dan dapat menghabiskan sejumlah besar ruang disk.

 Atur properti ke salah satu nilai berikut:
+  0: MATI. Nonaktifkan semua logging. 
+  1: KESALAHAN. Mencatat peristiwa kesalahan yang memungkinkan driver untuk terus berjalan tetapi menghasilkan kesalahan. 
+  2: API\$1CALL. Log panggilan fungsi API ODBC dengan nilai argumen fungsi. 
+  3: INFO. Log informasi umum yang menggambarkan kemajuan pengemudi. 
+  4: MSG\$1PROTOCOL. Log informasi rinci dari pesan pengemudi procotol. 
+  5: DEBUG. Mencatat semua aktivitas pengemudi 
+  6: DEBUG\$1APPEND. Terus tambahkan log untuk semua aktivitas pengemudi. 

Saat logging diaktifkan, driver menghasilkan file log berikut di lokasi yang Anda tentukan di **LogPath**properti: 
+  `redshift_odbc.log.1`File yang mencatat aktivitas driver yang terjadi selama jabat tangan koneksi. 
+  `redshift_odbc.log`File untuk semua aktivitas driver setelah koneksi dibuat ke database. 

Parameter ini bersifat opsional.

## LogPath
<a name="odbc20-logpath-option"></a>
+ **Nilai Default** - Direktori TEMP khusus OS
+ **Tipe Data** - String

Jalur lengkap ke folder tempat driver menyimpan file log saat **LogLevel**lebih tinggi dari 0.

Parameter ini bersifat opsional.

## Min\$1tls
<a name="odbc20-min-tls-option"></a>
+ **Nilai Default** - 1.2
+ **Tipe Data** - String

 Versi minimum dari driver TLS/SSL yang memungkinkan penyimpanan data untuk digunakan untuk mengenkripsi koneksi. Misalnya, jika TLS 1.2 ditentukan, TLS 1.1 tidak dapat digunakan untuk mengenkripsi koneksi.

Min\$1tls menerima nilai-nilai berikut:
+  1.0: Koneksi harus menggunakan setidaknya TLS 1.0. 
+  1.1: Koneksi harus menggunakan setidaknya TLS 1.1. 
+  1.2: Koneksi harus menggunakan setidaknya TLS 1.2. 

Parameter ini bersifat opsional.

## partner\$1spid
<a name="odbc20-partner-spid-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nilai SPID mitra (ID penyedia layanan) yang akan digunakan saat mengautentikasi koneksi menggunakan layanan. PingFederate 

Parameter ini bersifat opsional.

## Kata Sandi \$1 PWS
<a name="odbc20-password-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Kata sandi yang sesuai dengan nama pengguna database yang Anda berikan di bidang User (**UID** \$1 **User** \$1 **LogonId**). 

Parameter ini bersifat opsional.

## plugin\$1name
<a name="odbc20-plugin-name-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama plugin penyedia kredensyal yang ingin Anda gunakan untuk otentikasi. 

 Nilai berikut didukung: 
+  `ADFS`: Gunakan Layanan Federasi Direktori Aktif untuk otentikasi. 
+  `AzureAD`: Gunakan Layanan Microsoft Azure Active Directory (AD) untuk otentikasi. 
+  `BrowserAzureAD`: Gunakan plugin browser untuk Layanan Microsoft Azure Active Directory (AD) untuk otentikasi. 
+  `BrowserIdcAuthPlugin `: Plugin otorisasi menggunakan AWS IAM Identity Center. 
+  `BrowserSAML`: Gunakan plugin browser untuk layanan SAMP seperti Okta atau Ping untuk otentikasi. 
+  `IdpTokenAuthPlugin`: Plugin otorisasi yang menerima token AWS IAM Identity Center atau OpenID Connect (OIDC) JSON berbasis token identitas (JWT) dari penyedia identitas web mana pun yang ditautkan ke IAM Identity Center. AWS 
+  `JWT`: Gunakan JSON Web Token (JWT) untuk otentikasi. 
+  `Ping`: Gunakan PingFederate layanan untuk otentikasi. 
+  `Okta`: Gunakan layanan Okta untuk otentikasi. 

Parameter ini bersifat opsional.

## Pelabuhan \$1 PortNumber
<a name="odbc20-port-option"></a>
+ **Nilai default** - 5439
+ **Tipe Data** - Integer

Jumlah port TCP yang digunakan server Amazon Redshift untuk mendengarkan koneksi klien. 

Parameter ini bersifat opsional.

## preferred\$1role
<a name="odbc20-preferred-role-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Peran yang ingin Anda asumsikan selama koneksi ke Amazon Redshift. Ini digunakan untuk otentikasi IAM.

Parameter ini bersifat opsional.

## Profil
<a name="odbc20-profile-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama AWS profil pengguna yang digunakan untuk mengautentikasi ke Amazon Redshift.
+  Jika parameter Use Instance Profile (**InstanceProfile**properti) disetel ke 1 \$1 TRUE, setelan tersebut akan diutamakan dan driver menggunakan profil instans Amazon EC2 sebagai gantinya. 
+  Lokasi default untuk file kredensyal yang berisi profil adalah. `~/.aws/Credentials` Variabel `AWS_SHARED_CREDENTIALS_FILE` lingkungan dapat digunakan untuk menunjuk ke file kredensyal yang berbeda. 

Parameter ini bersifat opsional.

## provider\$1name
<a name="odbc20-provider-name-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Penyedia otentikasi yang dibuat oleh pengguna menggunakan kueri CREATE IDENTITY PROVIDER. Ini digunakan dalam otentikasi Amazon Redshift asli.

Parameter ini bersifat opsional.

## ProxyHost
<a name="odbc20-proxyhost-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama host atau alamat IP dari server proxy yang ingin Anda sambungkan.

Parameter ini bersifat opsional.

## ProxyPort
<a name="odbc20-proxyport-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - Integer

Jumlah port yang digunakan server proxy untuk mendengarkan koneksi klien.

Parameter ini bersifat opsional.

## ProxyPwd
<a name="odbc20-proxypwd-option"></a>
+ **Versi driver ValPrevious ODBC default** — Tidak ada
+ **Tipe Data** - String

Kata sandi yang Anda gunakan untuk mengakses server proxy. 

Parameter ini bersifat opsional.

## ProxyUid
<a name="odbc20-proxyuid-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama pengguna yang Anda gunakan untuk mengakses server proxy.

Parameter ini bersifat opsional.

## ReadOnly
<a name="odbc20-readonly-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Boolean

Boolean yang menentukan apakah driver dalam mode read-only. 
+  1 \$1 BENAR: Koneksi dalam mode hanya-baca, dan tidak dapat menulis ke penyimpanan data. 
+  0 \$1 SALAH: Koneksi tidak dalam mode read-only, dan dapat menulis ke penyimpanan data. 

Parameter ini bersifat opsional.

## region
<a name="odbc20-region-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

 AWS Wilayah tempat cluster Anda berada. 

Parameter ini bersifat opsional.

## SecretAccessKey
<a name="odbc20-secretaccesskey-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

 Kunci rahasia IAM untuk pengguna atau peran. Jika Anda mengatur parameter ini, Anda juga harus mengatur **AccessKeyID**. 

Parameter ini bersifat opsional.

## SessionToken
<a name="odbc20-sessiontoken-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

 Token sesi IAM sementara yang terkait dengan peran IAM yang Anda gunakan untuk mengautentikasi. 

Parameter ini bersifat opsional.

## Server \$1 HostName \$1 Tuan rumah
<a name="odbc20-server-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Server endpoint untuk terhubung ke.

Parameter ini diperlukan.

## ssl\$1insecure
<a name="odbc20-ssl-insecure-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Boolean

Boolean yang menentukan apakah driver memeriksa keaslian sertifikat server iDP.
+  1 \$1 BENAR: Driver tidak memeriksa keaslian sertifikat server iDP. 
+  0 \$1 FALSE: Driver memeriksa keaslian sertifikat server iDP 

Parameter ini bersifat opsional.

## SSLMode
<a name="odbc20-sslmode-option"></a>
+ **Nilai Default** - `verify-ca`
+ **Tipe Data** - String

Mode verifikasi sertifikat SSL untuk digunakan saat menghubungkan ke Amazon Redshift. Nilai-nilai berikut dimungkinkan: 
+  `verify-full`: Connect hanya menggunakan SSL, otoritas sertifikat tepercaya, dan nama server yang cocok dengan sertifikat. 
+  `verify-ca`: Connect hanya menggunakan SSL dan otoritas sertifikat tepercaya. 
+  `require`: Connect hanya menggunakan SSL. 
+  `prefer`: Connect menggunakan SSL jika tersedia. Jika tidak, sambungkan tanpa menggunakan SSL. 
+  `allow`: Secara default, sambungkan tanpa menggunakan SSL. Jika server membutuhkan koneksi SSL, maka gunakan SSL. 
+  `disable`: Connect tanpa menggunakan SSL. 

Parameter ini bersifat opsional.

## StsConnectionTimeout
<a name="odbc20-stsconnectiontimeout-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Integer

Waktu tunggu maksimum untuk koneksi IAM, dalam hitungan detik. Jika disetel ke 0 atau tidak ditentukan, driver menunggu 60 detik untuk setiap AWS STS panggilan. 

Parameter ini bersifat opsional.

## StsEndpointUrl
<a name="odbc20-stsendpointurl-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Opsi ini menentukan endpoint utama yang digunakan untuk berkomunikasi dengan (). AWS Security Token Service AWS STS

Parameter ini bersifat opsional.

## token
<a name="jdbc20-token-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Pusat AWS Identitas IAM menyediakan token akses atau OpenID Connect (OIDC) JSON Web Token (JWT) yang disediakan oleh penyedia identitas web yang terhubung dengan IAM Identity Center. AWS Aplikasi Anda harus menghasilkan token ini dengan mengautentikasi pengguna aplikasi Anda dengan AWS IAM Identity Center atau penyedia identitas yang ditautkan dengan AWS IAM Identity Center. 

Parameter ini bekerja dengan`IdpTokenAuthPlugin`.

## token\$1type
<a name="jdbc20-token-type-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Jenis token yang digunakan di`IdpTokenAuthPlugin`.

Anda dapat menentukan salah satu nilai berikut:

**ACCESS\$1TOKEN**  
Masukkan ini jika Anda menggunakan token akses yang disediakan Pusat Identitas AWS IAM.

**EXT\$1JWT**  
Masukkan ini jika Anda menggunakan OpenID Connect (OIDC) JSON Web Token (JWT) yang disediakan oleh penyedia identitas berbasis web yang terintegrasi dengan IAM Identity Center. AWS 

Parameter ini bekerja dengan`IdpTokenAuthPlugin`.

## UID \$1 Pengguna \$1 LogonID
<a name="odbc20-uid-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Nama pengguna yang Anda gunakan untuk mengakses server Amazon Redshift.

Parameter ini diperlukan jika Anda menggunakan otentikasi database.

## UseUnicode
<a name="odbc20-useunicode-option"></a>
+ **Nilai Default** - 0
+ **Tipe Data** - Boolean

Boolean yang menentukan apakah driver mengembalikan data Redshift sebagai Unicode atau tipe SQL biasa.
+  1 \$1 BENAR: Driver mengembalikan tipe SQL lebar untuk tipe data karakter. 
  + SQL\$1WCHAR dikembalikan bukan SQL\$1CHAR.
  + SQL\$1WVARCHAR dikembalikan bukan SQL\$1VARCHAR.
  + SQL\$1WLONGVARCHAR dikembalikan bukan SQL\$1LONGVARCHAR.
+  0 \$1 FALSE: Driver mengembalikan tipe SQL normal untuk tipe data karakter. 
  + SQL\$1CHAR dikembalikan bukan SQL\$1WCHAR.
  + SQL\$1VARCHAR dikembalikan bukan SQL\$1WVARCHAR.
  + SQL\$1LONGVARCHAR dikembalikan bukan SQL\$1WLONGVARCHAR.

Parameter ini bersifat opsional. Ini tersedia dalam versi driver 2.1.15 dan yang lebih baru.

## web\$1identity\$1token
<a name="odbc20-web-identity-token-option"></a>
+ **Nilai Default** - Tidak Ada
+ **Tipe Data** - String

Token OAUTH yang disediakan oleh penyedia identitas. Ini digunakan dalam plugin JWT.

Parameter ini diperlukan jika Anda mengatur parameter **plugin\$1name** ke. BasicJwtCredentialsProvider

# Versi driver ODBC sebelumnya
<a name="odbc20-previous-versions"></a>

Unduh versi driver Amazon Redshift ODBC versi 2.x sebelumnya hanya jika alat Anda memerlukan versi driver tertentu. 

## Menggunakan versi driver ODBC sebelumnya untuk Microsoft Windows
<a name="odbc20-previous-versions-windows"></a>

Berikut ini adalah versi sebelumnya dari driver Amazon Redshift ODBC versi 2.x untuk Microsoft Windows: 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC64-2.1.14.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC64-2.1.14.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC64-2.1.13.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC64-2.1.13.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC64-2.1.12.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC64-2.1.12.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.11.0/AmazonRedshiftODBC64-2.1.11.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.11.0/AmazonRedshiftODBC64-2.1.11.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.10.0/AmazonRedshiftODBC64-2.1.10.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.10.0/AmazonRedshiftODBC64-2.1.10.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.9.0/AmazonRedshiftODBC64-2.1.9.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.9.0/AmazonRedshiftODBC64-2.1.9.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.9.0/AmazonRedshiftODBC64-2.1.9.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.9.0/AmazonRedshiftODBC64-2.1.9.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.8.0/AmazonRedshiftODBC64-2.1.8.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.8.0/AmazonRedshiftODBC64-2.1.8.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.7.0/AmazonRedshiftODBC64-2.1.7.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.7.0/AmazonRedshiftODBC64-2.1.7.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.6.0/AmazonRedshiftODBC64-2.1.6.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.6.0/AmazonRedshiftODBC64-2.1.6.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.4.0/AmazonRedshiftODBC64-2.1.4.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.4.0/AmazonRedshiftODBC64-2.1.4.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.3.0/AmazonRedshiftODBC64-2.1.3.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.3.0/AmazonRedshiftODBC64-2.1.3.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.2.0/AmazonRedshiftODBC64-2.1.2.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.2.0/AmazonRedshiftODBC64-2.1.2.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.1.0/AmazonRedshiftODBC64-2.1.1.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.1.0/AmazonRedshiftODBC64-2.1.1.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.0.0/AmazonRedshiftODBC64-2.1.0.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.0.0/AmazonRedshiftODBC64-2.1.0.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.1.0/AmazonRedshiftODBC64-2.0.1.0.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.1.0/AmazonRedshiftODBC64-2.0.1.0.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.11/AmazonRedshiftODBC64-2.0.0.11.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.11/AmazonRedshiftODBC64-2.0.0.11.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.9/AmazonRedshiftODBC64-2.0.0.9.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.9/AmazonRedshiftODBC64-2.0.0.9.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.8/AmazonRedshiftODBC64-2.0.0.8.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.8/AmazonRedshiftODBC64-2.0.0.8.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.7/AmazonRedshiftODBC64-2.0.0.7.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.7/AmazonRedshiftODBC64-2.0.0.7.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.6/AmazonRedshiftODBC64-2.0.0.6.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.6/AmazonRedshiftODBC64-2.0.0.6.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.5/AmazonRedshiftODBC64-2.0.0.5.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.5/AmazonRedshiftODBC64-2.0.0.5.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.3/AmazonRedshiftODBC64-2.0.0.3.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.3/AmazonRedshiftODBC64-2.0.0.3.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.1/AmazonRedshiftODBC64-2.0.0.1.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.1/AmazonRedshiftODBC64-2.0.0.1.msi) 

## Gunakan versi driver ODBC sebelumnya untuk Linux
<a name="odbc20-previous-versions-linux"></a>

Berikut ini adalah versi sebelumnya dari driver Amazon Redshift ODBC versi 2.x untuk Linux: 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC-64-bit-2.1.14.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC-64-bit-2.1.14.0.x86_64.rpm) -64-bit-2.1.14.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC-64-bit-2.1.14.0.aarch64.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC-64-bit-2.1.14.0.aarch64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC-64-bit-2.1.13.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC-64-bit-2.1.13.0.x86_64.rpm) -64-bit-2.1.13.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC-64-bit-2.1.13.0.aarch64.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC-64-bit-2.1.13.0.aarch64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC-64-bit-2.1.12.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC-64-bit-2.1.12.0.x86_64.rpm) -64-bit-2.1.12.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC-64-bit-2.1.12.0.aarch64.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC-64-bit-2.1.12.0.aarch64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.11.0/AmazonRedshiftODBC-64-bit-2.1.11.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.11.0/AmazonRedshiftODBC-64-bit-2.1.11.0.x86_64.rpm) -64-bit-2.1.11.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.11.0/AmazonRedshiftODBC-64-bit-2.1.11.0.aarch64.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.11.0/AmazonRedshiftODBC-64-bit-2.1.11.0.aarch64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.10.0/AmazonRedshiftODBC-64-bit-2.1.10.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.10.0/AmazonRedshiftODBC-64-bit-2.1.10.0.x86_64.rpm) -64-bit-2.1.10.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.9.0/AmazonRedshiftODBC-64-bit-2.1.9.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.9.0/AmazonRedshiftODBC-64-bit-2.1.9.0.x86_64.rpm) -64-bit-2.1.9.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.8.0/AmazonRedshiftODBC-64-bit-2.1.8.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.8.0/AmazonRedshiftODBC-64-bit-2.1.8.0.x86_64.rpm) -64-bit-2.1.8.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.7.0/AmazonRedshiftODBC-64-bit-2.1.7.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.7.0/AmazonRedshiftODBC-64-bit-2.1.7.0.x86_64.rpm) -64-bit-2.1.7.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.6.0/AmazonRedshiftODBC-64-bit-2.1.6.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.6.0/AmazonRedshiftODBC-64-bit-2.1.6.0.x86_64.rpm) -64-bit-2.1.6.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.4.0/AmazonRedshiftODBC-64-bit-2.1.4.0.x86\$164.rpm Di Wilayah Tiongkok](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.4.0/AmazonRedshiftODBC-64-bit-2.1.4.0.x86_64.rpm)-64-bit-2.1.4.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.3.0/AmazonRedshiftODBC-64-bit-2.1.3.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.3.0/AmazonRedshiftODBC-64-bit-2.1.3.0.x86_64.rpm) -64-bit-2.1.3.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.2.0/AmazonRedshiftODBC-64-bit-2.1.2.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.2.0/AmazonRedshiftODBC-64-bit-2.1.2.0.x86_64.rpm) -64-bit-2.1.2.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.1.0/AmazonRedshiftODBC-64-bit-2.1.1.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.1.0/AmazonRedshiftODBC-64-bit-2.1.1.0.x86_64.rpm) -64-bit-2.1.1.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.0.0/AmazonRedshiftODBC-64-bit-2.1.0.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.0.0/AmazonRedshiftODBC-64-bit-2.1.0.0.x86_64.rpm) -64-bit-2.1.0.0.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.1.0/AmazonRedshiftODBC-64-bit-2.0.1.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.1.0/AmazonRedshiftODBC-64-bit-2.0.1.0.x86_64.rpm) [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.1.0/AmazonRedshiftODBC-64-bit-2.0.1.0.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.1.0/AmazonRedshiftODBC-64-bit-2.0.1.0.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.11/AmazonRedshiftODBC-64-bit-2.0.0.11.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.11/AmazonRedshiftODBC-64-bit-2.0.0.11.x86_64.rpm) [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.11/AmazonRedshiftODBC-64-bit-2.0.0.11.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.11/AmazonRedshiftODBC-64-bit-2.0.0.11.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.9/AmazonRedshiftODBC-64-bit-2.0.0.9.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.9/AmazonRedshiftODBC-64-bit-2.0.0.9.x86_64.rpm) [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.9/AmazonRedshiftODBC-64-bit-2.0.0.9.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.9/AmazonRedshiftODBC-64-bit-2.0.0.9.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.8/AmazonRedshiftODBC-64-bit-2.0.0.8.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.8/AmazonRedshiftODBC-64-bit-2.0.0.8.x86_64.rpm) [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.8/AmazonRedshiftODBC-64-bit-2.0.0.8.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.8/AmazonRedshiftODBC-64-bit-2.0.0.8.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.7/AmazonRedshiftODBC-64-bit-2.0.0.7.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.7/AmazonRedshiftODBC-64-bit-2.0.0.7.x86_64.rpm) [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.7/AmazonRedshiftODBC-64-bit-2.0.0.7.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.7/AmazonRedshiftODBC-64-bit-2.0.0.7.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.6/AmazonRedshiftODBC-64-bit-2.0.0.6.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.6/AmazonRedshiftODBC-64-bit-2.0.0.6.x86_64.rpm) [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.6/AmazonRedshiftODBC-64-bit-2.0.0.6.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.6/AmazonRedshiftODBC-64-bit-2.0.0.6.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.5/AmazonRedshiftODBC-64-bit-2.0.0.5.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.5/AmazonRedshiftODBC-64-bit-2.0.0.5.x86_64.rpm) [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.5/AmazonRedshiftODBC-64-bit-2.0.0.5.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.5/AmazonRedshiftODBC-64-bit-2.0.0.5.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.3/AmazonRedshiftODBC-64-bit-2.0.0.3.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.3/AmazonRedshiftODBC-64-bit-2.0.0.3.x86_64.rpm) [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.3/AmazonRedshiftODBC-64-bit-2.0.0.3.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.3/AmazonRedshiftODBC-64-bit-2.0.0.3.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.1/AmazonRedshiftODBC-64-bit-2.0.0.1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.1/AmazonRedshiftODBC-64-bit-2.0.0.1.x86_64.rpm) [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.1/AmazonRedshiftODBC-64-bit-2.0.0.1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.0.0.1/AmazonRedshiftODBC-64-bit-2.0.0.1.x86_64.rpm) 

## Menggunakan versi driver ODBC sebelumnya untuk Apple macOS
<a name="odbc20-previous-versions-mac"></a>

Berikut ini adalah versi sebelumnya dari driver Amazon Redshift ODBC versi 2.x untuk Apple macOS: 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC-64-bit.2.1.14.0.universal.pkg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.14.0/AmazonRedshiftODBC-64-bit.2.1.14.0.universal.pkg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC-64-bit.2.1.13.0.universal.pkg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.13.0/AmazonRedshiftODBC-64-bit.2.1.13.0.universal.pkg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC-64-bit.2.1.12.0.universal.pkg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/2.1.12.0/AmazonRedshiftODBC-64-bit.2.1.12.0.universal.pkg) 

# Mengkonfigurasi koneksi driver ODBC versi 1.x
<a name="configure-odbc-connection"></a>

Anda dapat menggunakan koneksi ODBC untuk terhubung ke klaster Amazon Redshift Anda dari banyak alat dan aplikasi klien SQL pihak ketiga. Untuk melakukan ini, atur koneksi di komputer klien Anda atau instans Amazon EC2. Jika alat klien Anda mendukung JDBC, Anda mungkin memilih untuk menggunakan jenis koneksi itu daripada ODBC karena kemudahan konfigurasi yang disediakan JDBC. Namun, jika alat klien Anda tidak mendukung JDBC, ikuti langkah-langkah di bagian ini untuk mengonfigurasi koneksi ODBC. 

Amazon Redshift menyediakan driver ODBC 64-bit untuk sistem operasi Linux, Windows, dan macOS X. Driver ODBC 32-bit dihentikan. Pembaruan lebih lanjut tidak akan dirilis, kecuali untuk patch keamanan yang mendesak. 

[Untuk informasi terbaru tentang fungsionalitas dan prasyarat driver ODBC, lihat catatan rilis driver Amazon Redshift ODBC.](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Release+Notes.pdf) 

Untuk informasi penginstalan dan konfigurasi untuk driver Amazon Redshift ODBC, lihat panduan pemasangan dan konfigurasi konektor [Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

**Topics**
+ [Mendapatkan URL ODBC](obtain-odbc-url.md)
+ [Menggunakan driver Amazon Redshift ODBC di Microsoft Windows](install-odbc-driver-windows.md)
+ [Menggunakan driver Amazon Redshift ODBC di Linux](install-odbc-driver-linux.md)
+ [Menggunakan driver Amazon Redshift ODBC di macOS X](install-odbc-driver-mac.md)
+ [Opsi driver ODBC](configure-odbc-options.md)
+ [Versi driver ODBC sebelumnya](odbc-previous-versions.md)

# Mendapatkan URL ODBC
<a name="obtain-odbc-url"></a>

Amazon Redshift menampilkan URL ODBC untuk klaster Anda di konsol Amazon Redshift. URL ini berisi informasi untuk mengatur koneksi antara komputer klien Anda dan database.

 URL ODBC memiliki format berikut: `Driver={driver};Server=endpoint;Database=database_name;UID=user_name;PWD=password;Port=port_number` 

Bidang format yang ditunjukkan sebelumnya memiliki nilai berikut.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/obtain-odbc-url.html)

 Bidang dalam tabel sebelumnya dapat berisi karakter khusus berikut:

```
[]{}(),;?*=!@ 
```

 Jika Anda menggunakan karakter khusus ini, Anda harus melampirkan nilainya dalam kurung kurawal. Misalnya, nilai kata sandi `Your;password123` dalam string koneksi direpresentasikan sebagai`PWD={Your;password123};`. 

 Karena `Field=value` pasangan dipisahkan oleh titik koma, kombinasi `}` dan `;` dengan sejumlah spasi di antaranya dianggap sebagai akhir dari pasangan. `Field={value};` Kami menyarankan Anda menghindari urutan `};` dalam nilai bidang Anda. Misalnya, jika Anda menetapkan nilai kata sandi Anda sebagai`PWD={This is a passwor} ;d};`, kata sandi Anda akan menjadi `This is a passwor} ;` dan URL akan error. 

Berikut ini adalah contoh URL ODBC.

```
Driver={Amazon Redshift (x64)};
                    Server=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com;
                    Database=dev; 
                    UID=adminuser;
                    PWD=insert_your_admin_user_password_here;
                    Port=5439
```

Untuk informasi tentang cara mendapatkan koneksi ODBC Anda, lihat[Menemukan string koneksi cluster Anda](connecting-connection-string.md). 

# Menggunakan driver Amazon Redshift ODBC di Microsoft Windows
<a name="install-odbc-driver-windows"></a>

Anda menginstal driver Amazon Redshift ODBC di komputer klien yang mengakses gudang data Amazon Redshift. Setiap komputer tempat Anda menginstal driver harus memenuhi daftar persyaratan sistem minimum. Untuk informasi tentang persyaratan sistem minimum, lihat panduan [pemasangan dan konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

**Topics**
+ [Mengunduh dan menginstal driver Amazon Redshift ODBC](odbc-driver-windows-how-to-install.md)
+ [Membuat entri DSN sistem untuk koneksi ODBC](create-dsn-odbc-windows.md)

# Mengunduh dan menginstal driver Amazon Redshift ODBC
<a name="odbc-driver-windows-how-to-install"></a>

Gunakan prosedur berikut untuk mengunduh driver Amazon Redshift ODBC untuk sistem operasi Windows. Hanya gunakan driver selain ini jika Anda menjalankan aplikasi pihak ketiga yang disertifikasi untuk digunakan dengan Amazon Redshift dan yang memerlukan driver tertentu. 

**Untuk menginstal driver ODBC**

1. Unduh salah satu dari berikut ini, tergantung pada arsitektur sistem alat atau aplikasi klien SQL Anda: 
   + [64-bit ODBC driver versi 1.6.3](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC64-1.6.3.1008.msi) driver versi 1.6.3.

     Nama driver ini adalah Amazon Redshift (x64).
   + [32-bit ODBC driver versi 1.4.52 Di AWS](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC32-1.4.52.1000.msi) [ 32-bit ODBC driver versi 1.4.52](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC32-1.4.52.1000.msi)

     Nama driver ini adalah Amazon Redshift (x86). Driver ODBC 32-bit dihentikan. Pembaruan lebih lanjut tidak akan dirilis, kecuali untuk patch keamanan yang mendesak.
**catatan**  
Unduh paket MSI yang sesuai dengan arsitektur sistem alat atau aplikasi klien SQL Anda. Misalnya, jika alat klien SQL Anda 64-bit, instal driver 64-bit.

    Kemudian unduh dan tinjau perjanjian [SIM Amazon Redshift ODBC dan JDBC](https://s3.amazonaws.com/redshift-downloads/drivers/Amazon+Redshift+ODBC+and+JDBC+Driver+License+Agreement.pdf). 

1.  Klik dua kali file.msi, lalu ikuti langkah-langkah di wizard untuk menginstal driver. 

# Membuat entri DSN sistem untuk koneksi ODBC
<a name="create-dsn-odbc-windows"></a>

Setelah Anda mengunduh dan menginstal driver ODBC, tambahkan entri nama sumber data (DSN) ke komputer klien atau instans Amazon EC2. Alat klien SQL menggunakan sumber data ini untuk terhubung ke database Amazon Redshift. 

Kami menyarankan Anda membuat sistem DSN bukan DSN pengguna. Beberapa aplikasi memuat data menggunakan akun pengguna yang berbeda. Aplikasi ini mungkin tidak dapat mendeteksi pengguna DSNs yang dibuat di bawah akun pengguna lain.

**catatan**  
Untuk autentikasi menggunakan kredensial AWS Identity and Access Management (IAM) atau kredensial penyedia identitas (iDP), diperlukan langkah-langkah tambahan. Untuk informasi selengkapnya, lihat [Langkah 5: Konfigurasikan koneksi JDBC atau ODBC untuk menggunakan kredensil IAM](generating-iam-credentials-steps.md#generating-iam-credentials-configure-jdbc-odbc).

Untuk informasi tentang cara membuat entri DSN sistem, lihat panduan [pemasangan dan konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

**Untuk membuat entri DSN sistem untuk koneksi ODBC pada Windows**

1. Di menu **Start**, buka **Sumber Data ODBC**.

   Pastikan Anda memilih Administrator Sumber Data ODBC yang memiliki bitness yang sama dengan aplikasi klien yang Anda gunakan untuk terhubung ke Amazon Redshift.

1. Di **Administrator Sumber Data ODBC**, pilih tab **Driver** dan cari folder driver:
   + **Driver Amazon Redshift ODBC (64-bit)**
   + **Driver Amazon Redshift ODBC (32-bit)**

1.  Pilih tab **DSN Sistem** untuk mengonfigurasi driver untuk semua pengguna di komputer, atau tab **DSN Pengguna** untuk mengonfigurasi driver hanya untuk akun pengguna Anda. 

1.  Pilih **Tambahkan**. Jendela **Create New Data Source** terbuka. 

1.  **Pilih driver **Amazon Redshift** ODBC, lalu pilih Selesai.** Jendela **Pengaturan DSN Driver Amazon Redshift ODBC** terbuka.

1. Di bawah **Pengaturan Koneksi**, masukkan informasi berikut:
<a name="rs-mgmt-dsn"></a>
**Nama sumber data**  
Masukkan sebuah nama untuk sumber data. Anda dapat menggunakan nama apa pun yang ingin Anda identifikasi sumber data nanti saat Anda membuat koneksi ke cluster. Misalnya, jika Anda mengikuti *Panduan Memulai Amazon Redshift*, Anda dapat mengetik `exampleclusterdsn` agar mudah mengingat cluster yang Anda kaitkan dengan DSN ini.
<a name="rs-mgmt-server"></a>
**Server**  
Tentukan titik akhir untuk cluster Amazon Redshift Anda. Anda dapat menemukan informasi ini di konsol Amazon Redshift di halaman detail cluster. Untuk informasi selengkapnya, lihat [Mengonfigurasi koneksi di Amazon Redshift](configuring-connections.md).
<a name="rs-mgmt-port"></a>
**Port**  
Masukkan nomor port yang digunakan database. Gunakan port yang cluster dikonfigurasi untuk digunakan ketika diluncurkan atau dimodifikasi.
<a name="rs-mgmt-database"></a>
**Basis Data**  
Masukkan nama database Amazon Redshift. Jika Anda meluncurkan cluster Anda tanpa menentukan nama database, masukkan`dev`. Jika tidak, gunakan nama yang Anda pilih selama proses peluncuran. Jika Anda mengikuti *Panduan Memulai Amazon Redshift, masukkan*. `dev`

1. Di bawah **Otentikasi**, tentukan opsi konfigurasi untuk mengonfigurasi otentikasi standar atau IAM. Untuk informasi tentang opsi otentikasi, lihat “Mengonfigurasi Otentikasi di Windows” di Panduan Pemasangan dan Konfigurasi *Konektor Amazon Redshift ODBC*. 

1. Di bawah **Pengaturan SSL**, tentukan nilai untuk hal berikut:
<a name="rs-mgmt-ssl-authentication"></a>
**Otentikasi SSL**  
Pilih mode untuk menangani Secure Sockets Layer (SSL). Dalam lingkungan pengujian, Anda mungkin menggunakan`prefer`. Namun, untuk lingkungan produksi dan ketika pertukaran data yang aman diperlukan, gunakan `verify-ca` atau`verify-full`. Untuk informasi selengkapnya tentang penggunaan SSL di Windows, lihat “Mengonfigurasi Verifikasi SSL di Windows” di Panduan Pemasangan dan Konfigurasi *Konektor Amazon Redshift ODBC*. 

1. Di bawah **Opsi Tambahan**, tentukan opsi tentang cara mengembalikan hasil kueri ke alat atau aplikasi klien SQL Anda. Untuk informasi selengkapnya, lihat “Mengonfigurasi Opsi Tambahan di Windows” di Panduan *Pemasangan dan Konfigurasi Konektor Amazon Redshift ODBC*. 

1. Di **Opsi Logging**, tentukan nilai untuk opsi logging. Untuk informasi selengkapnya, lihat “Mengonfigurasi Opsi Pencatatan di Windows” di Panduan *Pemasangan dan Konfigurasi Konektor Amazon Redshift ODBC*. 

   Lalu pilih **OK**.

1. Di bawah **Opsi Tipe Data**, tentukan nilai untuk tipe data. Untuk informasi selengkapnya, lihat “Mengonfigurasi Opsi Jenis Data di Windows” di Panduan *Pemasangan dan Konfigurasi Konektor Amazon Redshift ODBC*. 

   Lalu pilih **OK**.

1. Pilih **Uji**. Jika komputer klien dapat terhubung ke database Amazon Redshift, Anda melihat pesan berikut: **Koneksi** berhasil. 

    Jika komputer klien gagal terhubung ke database, Anda dapat memecahkan masalah yang mungkin terjadi. Untuk informasi selengkapnya, lihat [Memecahkan masalah koneksi di Amazon Redshift](troubleshooting-connections.md). 

1. Konfigurasikan keepalives TCP di Windows untuk mencegah koneksi dari waktu habis. Untuk informasi tentang cara mengonfigurasi keepalives TCP di Windows, lihat Panduan Pemasangan dan Konfigurasi Konektor *Amazon Redshift ODBC*.

1. Untuk membantu pemecahan masalah, konfigurasikan logging. Untuk informasi tentang cara mengonfigurasi logging di Windows, lihat Panduan *Instalasi dan Konfigurasi Konektor Amazon Redshift ODBC*. 

# Menggunakan driver Amazon Redshift ODBC di Linux
<a name="install-odbc-driver-linux"></a>

Anda menginstal driver Amazon Redshift ODBC di komputer klien yang mengakses gudang data Amazon Redshift. Setiap komputer tempat Anda menginstal driver harus memenuhi daftar persyaratan sistem minimum. Untuk informasi tentang persyaratan sistem minimum, lihat panduan [pemasangan dan konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

**Topics**
+ [Mengunduh dan menginstal driver Amazon Redshift ODBC](odbc-driver-linux-how-to-install.md)
+ [Menggunakan manajer driver ODBC untuk mengkonfigurasi driver](odbc-driver-configure-linux.md)

# Mengunduh dan menginstal driver Amazon Redshift ODBC
<a name="odbc-driver-linux-how-to-install"></a>

Gunakan langkah-langkah di bagian ini untuk mengunduh dan menginstal driver Amazon Redshift ODBC pada distribusi Linux yang didukung. Proses instalasi menginstal file driver di direktori berikut: 
+ `/opt/amazon/redshiftodbc/lib/64`(untuk driver 64-bit)
+ `/opt/amazon/redshiftodbc/ErrorMessages`
+ `/opt/amazon/redshiftodbc/Setup`
+  `/opt/amazon/redshiftodbc/lib/32`(untuk driver 32-bit)<a name="rs-mgmt-install-odbc-drivers-linux"></a>

**Untuk menginstal driver Amazon Redshift ODBC**

1. Unduh salah satu dari berikut ini, tergantung pada arsitektur sistem alat atau aplikasi klien SQL Anda: 
   + [Versi driver RPM 64-bit 1.6.3](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC-64-bit-1.6.3.1008-1.x86_64.rpm) versi 1.6.3. 
   + [64-bit Debian driver versi 1.6.3](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC-64-bit-1.6.3.1008-1.x86_64.deb) versi 1.6.3. 
   + [Versi driver 32-bit 1.4.52 versi 1.6.3.](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-32-bit-1.4.52.1000-1.i686.rpm) 

   Nama untuk masing-masing driver ini adalah driver Amazon Redshift ODBC. Driver ODBC 32-bit dihentikan. Pembaruan lebih lanjut tidak akan dirilis, kecuali untuk patch keamanan yang mendesak.
**catatan**  
Unduh paket yang sesuai dengan arsitektur sistem alat atau aplikasi klien SQL Anda. Misalnya, jika alat klien Anda 64-bit, instal driver 64-bit.

    Kemudian unduh dan tinjau perjanjian [SIM Amazon Redshift ODBC dan JDBC](https://s3.amazonaws.com/redshift-downloads/drivers/Amazon+Redshift+ODBC+and+JDBC+Driver+License+Agreement.pdf). 

1. Pergi ke lokasi di mana Anda mengunduh paket, dan kemudian jalankan salah satu perintah berikut. Gunakan perintah yang sesuai dengan distribusi Linux Anda. 
   + Pada sistem operasi RHEL dan CentOS, jalankan perintah berikut.

     ```
     yum -nogpgcheck localinstall RPMFileName
     ```

     Ganti *`RPMFileName`* dengan nama file paket RPM. Misalnya, perintah berikut menunjukkan menginstal driver 64-bit.

     ```
     yum -nogpgcheck localinstall AmazonRedshiftODBC-64-bit-1.x.xx.xxxx-x.x86_64.rpm
     ```
   + Pada SLES, jalankan perintah berikut.

     ```
     zypper install RPMFileName
     ```

     Ganti *`RPMFileName`* dengan nama file paket RPM. Misalnya, perintah berikut menunjukkan menginstal driver 64-bit.

     ```
     zypper install AmazonRedshiftODBC-1.x.x.xxxx-x.x86_64.rpm
     ```
   + Pada Debian, jalankan perintah berikut.

     ```
     sudo apt install ./DEBFileName.deb
     ```

     Ganti `DEBFileName.deb` dengan nama file paket Debian. Misalnya, perintah berikut menunjukkan menginstal driver 64-bit.

     ```
     sudo apt install ./AmazonRedshiftODBC-1.x.x.xxxx-x.x86_64.deb
     ```

**penting**  
Setelah Anda selesai menginstal driver, konfigurasikan untuk digunakan pada sistem Anda. Untuk informasi selengkapnya tentang konfigurasi driver, lihat[Menggunakan manajer driver ODBC untuk mengkonfigurasi driverMenggunakan manajer driver ODBC untuk mengkonfigurasi driver](odbc-driver-configure-linux.md).

# Menggunakan manajer driver ODBC untuk mengkonfigurasi driver
<a name="odbc-driver-configure-linux"></a>

Pada sistem operasi Linux, Anda menggunakan manajer driver ODBC untuk mengonfigurasi pengaturan koneksi ODBC. Manajer driver ODBC menggunakan file konfigurasi untuk menentukan dan mengkonfigurasi sumber data dan driver ODBC. Manajer driver ODBC yang Anda gunakan bergantung pada sistem operasi yang Anda gunakan. Untuk Linux, ini adalah manajer driver UnixODBC.

Untuk informasi selengkapnya tentang manajer driver ODBC yang didukung untuk mengonfigurasi driver Amazon Redshift ODBC, [Menggunakan driver Amazon Redshift ODBC di LinuxMenggunakan driver ODBC di Linux](install-odbc-driver-linux.md) lihat untuk sistem operasi Linux. Juga, lihat “Menentukan Manajer Driver ODBC di Mesin Non-Windows” di panduan pemasangan dan [konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

Tiga file diperlukan untuk mengonfigurasi driver Amazon Redshift ODBC`amazon.redshiftodbc.ini`:`odbc.ini`,, dan. `odbcinst.ini`

Jika Anda menginstal ke lokasi default, file `amazon.redshiftodbc.ini` konfigurasi terletak di salah satu direktori berikut:
+ `/opt/amazon/redshiftodbc/lib/64`(untuk driver 64-bit pada sistem operasi Linux)
+ `/opt/amazon/redshiftodbc/lib/32`(untuk driver 32-bit pada sistem operasi Linux)

Selain itu, `/opt/amazon/redshiftodbc/Setup` di Linux, ada sampel `odbc.ini` dan `odbcinst.ini` file. Anda dapat menggunakan file-file ini sebagai contoh untuk mengonfigurasi driver Amazon Redshift ODBC dan nama sumber data (DSN).

Kami tidak menyarankan menggunakan direktori instalasi driver Amazon Redshift ODBC untuk file konfigurasi. File sampel dalam `Setup` direktori hanya untuk tujuan contoh. Jika Anda menginstal ulang driver Amazon Redshift ODBC di lain waktu, atau meningkatkan ke versi yang lebih baru, direktori instalasi akan ditimpa. Anda kemudian kehilangan perubahan apa pun yang mungkin Anda buat pada file-file itu.

Untuk menghindari hal ini, salin `amazon.redshiftodbc.ini` file ke direktori selain direktori instalasi. Jika Anda menyalin file ini ke direktori home pengguna, tambahkan titik (.) ke awal nama file untuk menjadikannya file tersembunyi.

Untuk `odbcinst.ini` file `odbc.ini` dan, gunakan file konfigurasi di direktori home pengguna atau buat versi baru di direktori lain. Secara default, sistem operasi Linux Anda harus memiliki `odbc.ini` file dan `odbcinst.ini` file di direktori home pengguna (`/home/$USER`atau`~/`.). File default ini adalah file tersembunyi, yang ditunjukkan oleh titik (.) di depan setiap nama file. File-file ini hanya ditampilkan ketika Anda menggunakan `-a` bendera untuk daftar isi direktori.

Opsi apa pun yang Anda pilih untuk `odbcinst.ini` file `odbc.ini` dan, ubah file untuk menambahkan informasi konfigurasi driver dan DSN. Jika Anda membuat file baru, Anda juga perlu mengatur variabel lingkungan untuk menentukan di mana file konfigurasi ini berada. 

Secara default, manajer driver ODBC dikonfigurasi untuk menggunakan versi tersembunyi dari file `odbc.ini` dan `odbcinst.ini` konfigurasi (bernama. `odbc.ini`dan. `odbcinst.ini`) terletak di direktori home. Mereka juga dikonfigurasi untuk menggunakan `amazon.redshiftodbc.ini` file di `/lib` subfolder direktori instalasi driver. Jika Anda menyimpan file konfigurasi ini di tempat lain, atur variabel lingkungan yang dijelaskan berikut sehingga manajer driver dapat menemukan file. Untuk informasi selengkapnya, lihat “Menentukan Lokasi File Konfigurasi Driver” di panduan [pemasangan dan konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

## Membuat nama sumber data pada sistem operasi Linux
<a name="configure-odbc-ini-file"></a>

 Saat menghubungkan ke penyimpanan data Anda menggunakan nama sumber data (DSN), konfigurasikan `odbc.ini` file yang akan ditentukan DSNs. Tetapkan properti dalam `odbc.ini` file untuk membuat DSN yang menentukan informasi koneksi untuk penyimpanan data Anda.

Untuk informasi tentang cara mengonfigurasi `odbc.ini` file, lihat “Membuat Nama Sumber Data pada Mesin Non-Windows” di panduan [pemasangan dan konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf) ODBC 

 Gunakan format berikut pada sistem operasi Linux.

```
[ODBC Data Sources]
driver_name=dsn_name

[dsn_name]
Driver=path/driver_file

Host=cluster_endpoint
Port=port_number
Database=database_name
locale=locale
```

Contoh berikut menunjukkan konfigurasi untuk odbc.ini dengan driver ODBC 64-bit pada sistem operasi Linux.

```
[ODBC Data Sources]
Amazon_Redshift_x64=Amazon Redshift (x64)

[Amazon Redshift (x64)]
Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932
Database=dev
locale=en-US
```

Contoh berikut menunjukkan konfigurasi untuk odbc.ini dengan driver ODBC 32-bit pada sistem operasi Linux.

```
[ODBC Data Sources]
Amazon_Redshift_x32=Amazon Redshift (x86)

[Amazon Redshift (x86)]
Driver=/opt/amazon/redshiftodbc/lib/32/libamazonredshiftodbc32.so
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932
Database=dev
locale=en-US
```

## Mengkonfigurasi koneksi tanpa DSN pada sistem operasi Linux
<a name="configure-odbcinst-ini-file"></a>

Untuk terhubung ke penyimpanan data Anda melalui koneksi yang tidak memiliki DSN, tentukan driver dalam `odbcinst.ini` file. Kemudian berikan string koneksi tanpa DSN di aplikasi Anda.

Untuk informasi tentang cara mengonfigurasi `odbcinst.ini` file dalam kasus ini, lihat “Mengonfigurasi Koneksi Tanpa DSN pada Mesin Non-Windows” di panduan pemasangan dan konfigurasi konektor Amazon Redshift [ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

Gunakan format berikut pada sistem operasi Linux.

```
[ODBC Drivers]
driver_name=Installed
...
                            
[driver_name]
Description=driver_description
Driver=path/driver_file
    
...
```

Contoh berikut menunjukkan `odbcinst.ini` konfigurasi untuk driver 64-bit yang diinstal di direktori default pada sistem operasi Linux.

```
[ODBC Drivers]
Amazon Redshift (x64)=Installed

[Amazon Redshift (x64)]
Description=Amazon Redshift ODBC Driver (64-bit)
Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so
```

Contoh berikut menunjukkan `odbcinst.ini` konfigurasi untuk driver 32-bit yang diinstal di direktori default pada sistem operasi Linux.

```
[ODBC Drivers]
Amazon Redshift (x86)=Installed

[Amazon Redshift (x86)]
Description=Amazon Redshift ODBC Driver (32-bit)
Driver=/opt/amazon/redshiftodbc/lib/32/libamazonredshiftodbc32.so
```

## Mengonfigurasi variabel lingkungan
<a name="rs-mgmt-config-global-env-variables"></a>

Gunakan manajer driver ODBC yang benar untuk memuat driver yang benar. Untuk melakukan ini, atur variabel lingkungan jalur perpustakaan. Untuk informasi selengkapnya, lihat “Menentukan Manajer Driver ODBC di Mesin Non-Windows” di panduan pemasangan dan konfigurasi [konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

Secara default, manajer driver ODBC dikonfigurasi untuk menggunakan versi tersembunyi dari file `odbc.ini` dan `odbcinst.ini` konfigurasi (bernama. `odbc.ini`dan. `odbcinst.ini`) terletak di direktori home. Mereka juga dikonfigurasi untuk menggunakan `amazon.redshiftodbc.ini` file di `/lib` subfolder direktori instalasi driver. Jika Anda menyimpan file konfigurasi ini di tempat lain, variabel lingkungan sehingga manajer driver dapat menemukan file. Untuk informasi selengkapnya, lihat “Menentukan Lokasi File Konfigurasi Driver” di Panduan *Pemasangan dan Konfigurasi Konektor Amazon Redshift ODBC*. 

## Mengkonfigurasi fitur koneksi
<a name="connection-config-features"></a>

Anda dapat mengonfigurasi fitur koneksi berikut untuk pengaturan ODBC Anda:
+ Konfigurasikan driver ODBC untuk memberikan kredensi dan mengautentikasi koneksi ke database Amazon Redshift.
+ Konfigurasikan driver ODBC untuk menyambung ke soket yang diaktifkan dengan Secure Sockets Layer (SSL), jika Anda terhubung ke server Amazon Redshift yang mengaktifkan SSL.
+ Konfigurasikan driver ODBC untuk terhubung ke Amazon Redshift melalui server proxy.
+ Konfigurasikan driver ODBC untuk menggunakan mode pemrosesan kueri untuk mencegah kueri menghabiskan terlalu banyak memori.
+ Konfigurasikan driver ODBC untuk meneruskan proses otentikasi IAM melalui server proxy.
+ Konfigurasikan driver ODBC untuk menggunakan keepalives TCP untuk mencegah koneksi dari waktu habis.

Untuk informasi tentang fitur koneksi ini, lihat panduan [pemasangan dan konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

# Menggunakan driver Amazon Redshift ODBC di macOS X
<a name="install-odbc-driver-mac"></a>

Anda menginstal driver di komputer klien yang mengakses gudang data Amazon Redshift. Setiap komputer tempat Anda menginstal driver harus memenuhi daftar persyaratan sistem minimum. Untuk informasi tentang persyaratan sistem minimum, lihat panduan [pemasangan dan konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

**Topics**
+ [Mengunduh dan menginstal driver Amazon Redshift ODBC](odbc-driver-mac-how-to-install.md)
+ [Gunakan manajer driver ODBC untuk mengonfigurasi driver](odbc-driver-configure-mac.md)

# Mengunduh dan menginstal driver Amazon Redshift ODBC
<a name="odbc-driver-mac-how-to-install"></a>

Gunakan langkah-langkah di bagian ini untuk mengunduh dan menginstal driver Amazon Redshift ODBC pada versi macOS X yang didukung. Proses instalasi menginstal file driver di direktori berikut: 
+ `/opt/amazon/redshift/lib/universal`
+ `/opt/amazon/redshift/ErrorMessages`
+ `/opt/amazon/redshift/Setup`<a name="rs-mgmt-install-odbc-drivers-mac"></a>

**Untuk menginstal driver Amazon Redshift ODBC di macOS X**

1. [Untuk menginstal driver Amazon Redshift ODBC di macOS X, unduh driver macOS versi 1.6.3.](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC-64-bit.1.6.3.1008.universal.pkg) 

   Kemudian unduh dan tinjau perjanjian [SIM Amazon Redshift ODBC dan JDBC](https://s3.amazonaws.com/redshift-downloads/drivers/Amazon+Redshift+ODBC+and+JDBC+Driver+License+Agreement.pdf). 

1. Klik dua kali **AmazonRedshiftODBC.pkg** untuk menjalankan installer.

1. Ikuti langkah-langkah di installer untuk menyelesaikan proses instalasi driver. Untuk melakukan instalasi, setujui ketentuan perjanjian lisensi.

**penting**  
Setelah Anda selesai menginstal driver, konfigurasikan untuk digunakan pada sistem Anda. Untuk informasi selengkapnya tentang konfigurasi driver, lihat[Gunakan manajer driver ODBC untuk mengonfigurasi driverGunakan manajer driver ODBC untuk mengonfigurasi driver](odbc-driver-configure-mac.md).

# Gunakan manajer driver ODBC untuk mengonfigurasi driver
<a name="odbc-driver-configure-mac"></a>

Pada sistem operasi macOS X, Anda menggunakan pengelola driver ODBC untuk mengonfigurasi setelan koneksi ODBC. Manajer driver ODBC menggunakan file konfigurasi untuk menentukan dan mengkonfigurasi sumber data dan driver ODBC. Manajer driver ODBC yang Anda gunakan bergantung pada sistem operasi yang Anda gunakan. Untuk sistem operasi macOS X, ini adalah manajer driver IodBC.

Untuk informasi selengkapnya tentang pengelola driver ODBC yang didukung untuk mengonfigurasi driver Amazon Redshift ODBC, lihat [Menggunakan driver Amazon Redshift ODBC di macOS XMenggunakan driver ODBC di macOS X](install-odbc-driver-mac.md) untuk sistem operasi macOS X. Juga, lihat “Menentukan Manajer Driver ODBC di Mesin Non-Windows” di panduan pemasangan dan [konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

Tiga file diperlukan untuk mengonfigurasi driver Amazon Redshift ODBC`amazon.redshiftodbc.ini`:`odbc.ini`,, dan. `odbcinst.ini`

Jika Anda menginstal ke lokasi default, file `amazon.redshiftodbc.ini` konfigurasi terletak di`/opt/amazon/redshift/lib`.

Selain itu, `/opt/amazon/redshift/Setup` di bawah macOS X, ada sampel `odbc.ini` dan `odbcinst.ini` file. Anda dapat menggunakan file-file ini sebagai contoh untuk mengonfigurasi driver Amazon Redshift ODBC dan nama sumber data (DSN).

Kami tidak menyarankan menggunakan direktori instalasi driver Amazon Redshift ODBC untuk file konfigurasi. File sampel dalam `Setup` direktori hanya untuk tujuan contoh. Jika Anda menginstal ulang driver Amazon Redshift ODBC di lain waktu, atau meningkatkan ke versi yang lebih baru, direktori instalasi akan ditimpa. Anda kemudian kehilangan perubahan apa pun yang mungkin Anda buat pada file-file itu.

Untuk menghindari hal ini, salin `amazon.redshiftodbc.ini` file ke direktori selain direktori instalasi. Jika Anda menyalin file ini ke direktori home pengguna, tambahkan titik (.) ke awal nama file untuk menjadikannya file tersembunyi.

Untuk `odbcinst.ini` file `odbc.ini` dan, gunakan file konfigurasi di direktori home pengguna atau buat versi baru di direktori lain. Secara default, sistem operasi macOS X Anda harus memiliki `odbc.ini` file dan `odbcinst.ini` file di direktori home pengguna (`/home/$USER`atau`~/`.). File default ini adalah file tersembunyi, yang ditunjukkan oleh titik (.) di depan setiap nama file. File-file ini hanya ditampilkan ketika Anda menggunakan `-a` bendera untuk daftar isi direktori.

Opsi apa pun yang Anda pilih untuk `odbcinst.ini` file `odbc.ini` dan, ubah file untuk menambahkan informasi konfigurasi driver dan DSN. Jika Anda membuat file baru, Anda juga perlu mengatur variabel lingkungan untuk menentukan di mana file konfigurasi ini berada. 

Secara default, manajer driver ODBC dikonfigurasi untuk menggunakan versi tersembunyi dari file `odbc.ini` dan `odbcinst.ini` konfigurasi (bernama. `odbc.ini`dan. `odbcinst.ini`) terletak di direktori home. Mereka juga dikonfigurasi untuk menggunakan `amazon.redshiftodbc.ini` file di `/lib` subfolder direktori instalasi driver. Jika Anda menyimpan file konfigurasi ini di tempat lain, atur variabel lingkungan yang dijelaskan berikut sehingga manajer driver dapat menemukan file. Untuk informasi selengkapnya, lihat “Menentukan Lokasi File Konfigurasi Driver” di panduan [pemasangan dan konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

## Membuat nama sumber data sistem operasi macOS X
<a name="configure-odbc-ini-file"></a>

 Saat menghubungkan ke penyimpanan data Anda menggunakan nama sumber data (DSN), konfigurasikan `odbc.ini` file yang akan ditentukan DSNs. Tetapkan properti dalam `odbc.ini` file untuk membuat DSN yang menentukan informasi koneksi untuk penyimpanan data Anda.

Untuk informasi tentang cara mengonfigurasi `odbc.ini` file, lihat “Membuat Nama Sumber Data pada Mesin Non-Windows” di panduan [pemasangan dan konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf) ODBC 

Gunakan format berikut pada sistem operasi macOS X.

```
[ODBC Data Sources]
driver_name=dsn_name

[dsn_name]
Driver=path/lib/amazonredshiftodbc.dylib

Host=cluster_endpoint
Port=port_number
Database=database_name
locale=locale
```

 Contoh berikut menunjukkan konfigurasi untuk `odbc.ini` pada sistem operasi macOS X.

```
[ODBC Data Sources]
Amazon_Redshift_dylib=Amazon Redshift DSN for macOS X

[Amazon Redshift DSN for macOS X]
Driver=/opt/amazon/redshift/lib/amazonredshiftodbc.dylib
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932
Database=dev
locale=en-US
```

## Mengkonfigurasi koneksi tanpa DSN pada sistem operasi macOS X
<a name="configure-odbcinst-ini-file"></a>

Untuk terhubung ke penyimpanan data Anda melalui koneksi yang tidak memiliki DSN, tentukan driver dalam `odbcinst.ini` file. Kemudian berikan string koneksi tanpa DSN di aplikasi Anda.

Untuk informasi tentang cara mengonfigurasi `odbcinst.ini` file dalam kasus ini, lihat “Mengonfigurasi Koneksi Tanpa DSN pada Mesin Non-Windows” di panduan pemasangan dan konfigurasi konektor Amazon Redshift [ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). .

Gunakan format berikut pada sistem operasi macOS X.

```
[ODBC Drivers]
driver_name=Installed
...
                            
[driver_name]
Description=driver_description
Driver=path/lib/amazonredshiftodbc.dylib
    
...
```

Contoh berikut menunjukkan `odbcinst.ini` konfigurasi untuk driver yang diinstal di direktori default pada sistem operasi macOS X.

```
[ODBC Drivers]
Amazon RedshiftODBC DSN=Installed

[Amazon RedshiftODBC DSN]
Description=Amazon Redshift ODBC Driver for macOS X
Driver=/opt/amazon/redshift/lib/amazonredshiftodbc.dylib
```

## Mengonfigurasi variabel lingkungan
<a name="rs-mgmt-config-global-env-variables"></a>

Gunakan manajer driver ODBC yang benar untuk memuat driver yang benar. Untuk melakukan ini, atur variabel lingkungan jalur perpustakaan. Untuk informasi selengkapnya, lihat “Menentukan Manajer Driver ODBC di Mesin Non-Windows” di panduan pemasangan dan konfigurasi [konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

Secara default, manajer driver ODBC dikonfigurasi untuk menggunakan versi tersembunyi dari file `odbc.ini` dan `odbcinst.ini` konfigurasi (bernama. `odbc.ini`dan. `odbcinst.ini`) terletak di direktori home. Mereka juga dikonfigurasi untuk menggunakan `amazon.redshiftodbc.ini` file di `/lib` subfolder direktori instalasi driver. Jika Anda menyimpan file konfigurasi ini di tempat lain, variabel lingkungan sehingga manajer driver dapat menemukan file. Untuk informasi selengkapnya, lihat “Menentukan Lokasi File Konfigurasi Driver” di Panduan *Pemasangan dan Konfigurasi Konektor Amazon Redshift ODBC*. 

## Mengkonfigurasi fitur koneksi
<a name="connection-config-features"></a>

Anda dapat mengonfigurasi fitur koneksi berikut untuk pengaturan ODBC Anda:
+ Konfigurasikan driver ODBC untuk memberikan kredensi dan mengautentikasi koneksi ke database Amazon Redshift.
+ Konfigurasikan driver ODBC untuk menyambung ke soket yang diaktifkan dengan Secure Sockets Layer (SSL), jika Anda terhubung ke server Amazon Redshift yang mengaktifkan SSL.
+ Konfigurasikan driver ODBC untuk terhubung ke Amazon Redshift melalui server proxy.
+ Konfigurasikan driver ODBC untuk menggunakan mode pemrosesan kueri untuk mencegah kueri menghabiskan terlalu banyak memori.
+ Konfigurasikan driver ODBC untuk meneruskan proses otentikasi IAM melalui server proxy.
+ Konfigurasikan driver ODBC untuk menggunakan keepalives TCP untuk mencegah koneksi dari waktu habis.

Untuk informasi tentang fitur koneksi ini, lihat panduan [pemasangan dan konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

# Opsi driver ODBC
<a name="configure-odbc-options"></a>

Anda dapat menggunakan opsi konfigurasi untuk mengontrol perilaku driver Amazon Redshift ODBC.

Di Microsoft Windows, Anda biasanya mengatur opsi driver saat mengonfigurasi nama sumber data (DSN). Anda juga dapat mengatur opsi driver dalam string koneksi saat Anda terhubung secara terprogram, atau dengan menambahkan atau mengubah kunci registri. `HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\your_DSN` Untuk informasi selengkapnya tentang mengonfigurasi DSN, lihat. [Menggunakan driver Amazon Redshift ODBC di Microsoft Windows](install-odbc-driver-windows.md)

Di macOS X, Anda mengatur opsi konfigurasi driver di `amazon.redshiftodbc.ini` file `odbc.ini` dan file Anda, seperti yang dijelaskan dalam. [Gunakan manajer driver ODBC untuk mengonfigurasi driverGunakan manajer driver ODBC untuk mengonfigurasi driver](odbc-driver-configure-mac.md) Opsi konfigurasi yang diatur dalam `amazon.redshiftodbc.ini` file berlaku untuk semua koneksi. Sebaliknya, opsi konfigurasi yang diatur dalam `odbc.ini` file khusus untuk koneksi. Opsi konfigurasi yang disetel lebih `odbc.ini` diutamakan daripada opsi konfigurasi yang ditetapkan. `amazon.redshiftodbc.ini`

Untuk informasi tentang cara mengatur opsi konfigurasi driver ODBC, lihat panduan [pemasangan dan konfigurasi konektor Amazon Redshift ODBC](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf). 

# Versi driver ODBC sebelumnya
<a name="odbc-previous-versions"></a>

Unduh versi driver Amazon Redshift ODBC sebelumnya hanya jika alat Anda memerlukan versi driver tertentu. 

## Versi driver ODBC sebelumnya untuk Windows
<a name="odbc-previous-versions-windows"></a>

Berikut ini adalah driver 64-bit: 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1006/AmazonRedshiftODBC64-1.6.3.1006.msi Di Wilayah AWS](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1006/AmazonRedshiftODBC64-1.6.3.1006.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.1.1000/AmazonRedshiftODBC64-1.6.1.1000.msi Di Wilayah AWS](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.1.1000/AmazonRedshiftODBC64-1.6.1.1000.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC64-1.5.20.1024.msi Di Wilayah AWS](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC64-1.5.20.1024.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.16.1019/AmazonRedshiftODBC64-1.5.16.1019.msi Di Wilayah AWS](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.16.1019/AmazonRedshiftODBC64-1.5.16.1019.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.9.1011/AmazonRedshiftODBC64-1.5.9.1011.msi Di Wilayah AWS](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.9.1011/AmazonRedshiftODBC64-1.5.9.1011.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC64-1.5.7.1007.msi Di Wilayah AWS](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC64-1.5.7.1007.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC64-1.4.65.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC64-1.4.65.1000.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.62.1000/AmazonRedshiftODBC64-1.4.62.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.62.1000/AmazonRedshiftODBC64-1.4.62.1000.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC64-1.4.59.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC64-1.4.59.1000.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC64-1.4.56.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC64-1.4.56.1000.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.53.1000/AmazonRedshiftODBC64-1.4.53.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.53.1000/AmazonRedshiftODBC64-1.4.53.1000.msi) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC64-1.4.52.1000.msi](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC64-1.4.52.1000.msi) 

Driver 32-bit dihentikan dan versi sebelumnya tidak didukung.

## Versi driver ODBC sebelumnya untuk Linux
<a name="odbc-previous-versions-linux"></a>

Berikut ini adalah versi driver 64-bit: 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1006/AmazonRedshiftODBC-64-bit-1.6.3.1006-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1006/AmazonRedshiftODBC-64-bit-1.6.3.1006-1.x86_64.rpm) -64-bit-1.6.3.1006-1.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.1.1000/AmazonRedshiftODBC-64-bit-1.6.1.1000-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.1.1000/AmazonRedshiftODBC-64-bit-1.6.1.1000-1.x86_64.rpm) -64-bit-1.6.1.1000-1.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC-64-bit-1.5.20.1024-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC-64-bit-1.5.20.1024-1.x86_64.rpm) -64-bit-1.5.20.1024-1.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.16.1019/AmazonRedshiftODBC-64-bit-1.5.16.1019-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.16.1019/AmazonRedshiftODBC-64-bit-1.5.16.1019-1.x86_64.rpm) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.9.1011/AmazonRedshiftODBC-64-bit-1.5.9.1011-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.9.1011/AmazonRedshiftODBC-64-bit-1.5.9.1011-1.x86_64.rpm) -64-bit-1.5.9.1011-1.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC-64-bit-1.5.7.1007-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC-64-bit-1.5.7.1007-1.x86_64.rpm) -64-bit-1.5.7.1007-1.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC-64-bit-1.4.65.1000-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC-64-bit-1.4.65.1000-1.x86_64.rpm) -64-bit-1.4.65.1000-1.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.62.1000/AmazonRedshiftODBC-64-bit-1.4.62.1000-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.62.1000/AmazonRedshiftODBC-64-bit-1.4.62.1000-1.x86_64.rpm) -64-bit-1.4.62.1000-1.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC-64-bit-1.4.59.1000-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC-64-bit-1.4.59.1000-1.x86_64.rpm) -64-bit-1.4.59.1000-1.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC-64-bit-1.4.59.1000-1.x86\$164.deb](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC-64-bit-1.4.59.1000-1.x86_64.deb) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC-64-bit-1.4.56.1000-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC-64-bit-1.4.56.1000-1.x86_64.rpm) -64-bit-1.4.56.1000-1.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC-64-bit-1.4.56.1000-1.x86\$164.deb](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC-64-bit-1.4.56.1000-1.x86_64.deb) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-64-bit-1.4.52.1000-1.x86\$164.rpm](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-64-bit-1.4.52.1000-1.x86_64.rpm) -64-bit-1.4.52.1000-1.x86\$164.rpm 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-64-bit-1.4.52.1000-1.x86\$164.deb](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-64-bit-1.4.52.1000-1.x86_64.deb) 

Driver 32-bit dihentikan dan versi sebelumnya tidak didukung.

## Versi driver ODBC sebelumnya untuk macOS X
<a name="odbc-previous-versions-mac"></a>

Berikut ini adalah versi driver Amazon Redshift ODBC untuk macOS X: 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1006/AmazonRedshiftODBC-64-bit.1.6.3.1006.universal.pkg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1006/AmazonRedshiftODBC-64-bit.1.6.3.1006.universal.pkg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.1.1000/AmazonRedshiftODBC-64-bit.1.6.1.1000.universal.pkg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.1.1000/AmazonRedshiftODBC-64-bit.1.6.1.1000.universal.pkg) 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC-1.5.20.1024.arm64.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC-1.5.20.1024.arm64.dmg) -1.5.20.1024.arm64.dmg 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC-1.5.20.1024.x86\$164.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.20.1024/AmazonRedshiftODBC-1.5.20.1024.x86_64.dmg) -1.5.20.1024.x86\$164.dmg 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.16.1019/AmazonRedshiftODBC-1.5.16.1019.x86\$164.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.16.1019/AmazonRedshiftODBC-1.5.16.1019.x86_64.dmg) -1.5.16.1019.x86\$164.dmg 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.9.1011/AmazonRedshiftODBC-1.5.9.1011.x86\$164.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.9.1011/AmazonRedshiftODBC-1.5.9.1011.x86_64.dmg) -1.5.9.1011.x86\$164.dmg 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC-1.5.7.1007.x86\$164.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.5.7.1007/AmazonRedshiftODBC-1.5.7.1007.x86_64.dmg) -1.5.7.1007.x86\$164.dmg 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC-1.4.65.1000.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.65.1000/AmazonRedshiftODBC-1.4.65.1000.dmg) -1.4.65.1000.dmg 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.62.1000/AmazonRedshiftODBC-1.4.62.1000.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.62.1000/AmazonRedshiftODBC-1.4.62.1000.dmg) -1.4.62.1000.dmg 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC-1.4.59.1000.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.59.1000/AmazonRedshiftODBC-1.4.59.1000.dmg) -1.4.59.1000.dmg 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC-1.4.56.1000.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.56.1000/AmazonRedshiftODBC-1.4.56.1000.dmg) -1.4.56.1000.dmg 
+ [https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-1.4.52.1000.dmg](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-1.4.52.1000.dmg) -1.4.52.1000.dmg 

# Mengkonfigurasi opsi keamanan untuk koneksi
<a name="connecting-ssl-support"></a>

Amazon Redshift mendukung koneksi Secure Sockets Layer (SSL) untuk mengenkripsi data dan sertifikat server untuk memvalidasi sertifikat server yang terhubung dengan klien. 

## SSL
<a name="connect-using-ssl"></a>

Untuk mendukung koneksi SSL, Amazon Redshift membuat dan menginstal sertifikat SSL [(ACM)AWS Certificate Manager yang](https://aws.amazon.com/certificate-manager/) dikeluarkan pada setiap cluster. Sertifikat ACM dipercaya publik oleh sebagian besar sistem operasi, browser web, dan klien. Anda mungkin perlu mengunduh bundel sertifikat jika klien atau aplikasi SQL Anda terhubung ke Amazon Redshift menggunakan SSL dengan `sslmode` opsi koneksi disetel `require` ke`verify-ca`,, atau. `verify-full` Jika klien Anda memerlukan sertifikat, Amazon Redshift menyediakan sertifikat bundel sebagai berikut:
+ Unduh bundel dari [https://s3.amazonaws.com/redshift-downloads/amazon-trust-ca-bundle.crt](https://s3.amazonaws.com/redshift-downloads/amazon-trust-ca-bundle.crt). 
  + Nomor MD5 checksum yang diharapkan adalah 418dea9b6d5d5de7a8f1ac42e164cdcf.
  + Nomor checksum sha256 adalah 36dba8e4b8041cd14b9d60158893963301bcbb92e1c456847784de2acb5bd550.

  Jangan gunakan bundel sertifikat sebelumnya yang berada di`https://s3.amazonaws.com/redshift-downloads/redshift-ca-bundle.crt`. 
+  Di Wilayah AWS Tiongkok, unduh bundel [https://s3---cn-north-1.amazonaws.com.rproxy.govskope.cadari. cn/redshift-downloads-cn/amazon- trust-ca-bundle .crt](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/amazon-trust-ca-bundle.crt). 
  + Nomor MD5 checksum yang diharapkan adalah 418dea9b6d5d5de7a8f1ac42e164cdcf.
  + Nomor checksum sha256 adalah 36dba8e4b8041cd14b9d60158893963301bcbb92e1c456847784de2acb5bd550.

  Jangan gunakan bundel sertifikat sebelumnya yang berada di `https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/redshift-ca-bundle.crt` dan `https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/redshift-ssl-ca-cert.pem`

**penting**  
Amazon Redshift telah mengubah cara sertifikat SSL dikelola. Anda mungkin perlu memperbarui sertifikat CA root kepercayaan Anda saat ini untuk terus terhubung ke cluster Anda menggunakan SSL. Untuk informasi selengkapnya, lihat [Transisi ke sertifikat ACM untuk koneksi SSL](connecting-transitioning-to-acm-certs.md).

Secara default, database cluster menerima koneksi apakah menggunakan SSL atau tidak. Untuk mengonfigurasi klaster Anda agar memerlukan koneksi SSL, atur `require_SSL` parameter ke `true` dalam grup parameter yang terkait dengan cluster. 

Amazon Redshift mendukung mode SSL yang sesuai dengan Federal Information Processing Standard (FIPS) 140-2. Mode SSL yang sesuai dengan FIPS dinonaktifkan secara default. 

**penting**  
Aktifkan mode SSL yang sesuai dengan FIPS hanya jika sistem Anda harus sesuai dengan FIPS.

Untuk mengaktifkan mode SSL yang sesuai dengan FIPS, setel `use_fips_ssl` parameter dan parameter ke `true` dalam grup `require_SSL` parameter yang terkait dengan cluster Amazon Redshift atau grup kerja Redshift Serverless. Untuk informasi tentang memodifikasi grup parameter pada klaster, lihat[Grup parameter Amazon Redshift](working-with-parameter-groups.md). Untuk informasi tentang memodifikasi grup parameter pada workgroup, lihat. [Mengonfigurasi koneksi SSL yang sesuai dengan FIPS ke Amazon Redshift Tanpa Server](serverless-connecting.md#serverless_secure-fips-ssl) 

 Amazon Redshift mendukung protokol perjanjian kunci Elliptic Curve Diffie—Hellman Ephemeral (ECDHE). Dengan ECDHE, klien dan server masing-masing memiliki elliptic curve public-private key pair yang digunakan untuk membangun rahasia bersama melalui saluran yang tidak aman. Anda tidak perlu mengonfigurasi apa pun di Amazon Redshift untuk mengaktifkan ECDHE. Jika Anda terhubung dari alat klien SQL yang menggunakan ECDHE untuk mengenkripsi komunikasi antara klien dan server, Amazon Redshift menggunakan daftar sandi yang disediakan untuk membuat koneksi yang sesuai. [Untuk informasi lebih lanjut, lihat [Elliptic curve diffie—hellman](https://en.wikipedia.org/wiki/Elliptic_curve_Diffie%E2%80%93Hellman) di Wikipedia dan Ciphers di situs web OpenSSL.](https://www.openssl.org/) 

## SSL dan percaya sertifikat CA di ODBC
<a name="connecting-ssl-support-odbc"></a>

Jika Anda terhubung menggunakan driver Amazon Redshift ODBC terbaru (versi 1.3.7.1000 atau yang lebih baru), Anda dapat melewati bagian ini. Untuk mengunduh driver terbaru, lihat[Mengonfigurasi koneksi untuk driver ODBC versi 2.x untuk Amazon Redshift](odbc20-install.md). 

Anda mungkin perlu memperbarui sertifikat CA root kepercayaan Anda saat ini untuk terus terhubung ke cluster Anda menggunakan SSL. Untuk informasi selengkapnya, lihat [SSL](#connect-using-ssl).

Anda dapat memverifikasi bahwa sertifikat yang Anda unduh cocok dengan nomor MD5 checksum yang diharapkan. Untuk melakukan ini, Anda dapat menggunakan program MD5sum pada sistem operasi Linux, atau alat lain pada sistem operasi Windows dan macOS X.

 ODBC DSNs berisi `sslmode` pengaturan yang menentukan cara menangani enkripsi untuk koneksi klien dan verifikasi sertifikat server. Amazon Redshift mendukung `sslmode` nilai-nilai berikut dari koneksi klien: 
+ `disable`

  SSL dinonaktifkan dan koneksi tidak dienkripsi.
+ `allow`

  SSL digunakan jika server membutuhkannya.
+ `prefer`

  SSL digunakan jika server mendukungnya. Amazon Redshift mendukung SSL, jadi SSL digunakan saat Anda menyetelnya. `sslmode` `prefer`
+ `require`

  SSL diperlukan.
+ `verify-ca`

  SSL harus digunakan dan sertifikat server harus diverifikasi.
+ `verify-full`

  SSL harus digunakan. Sertifikat server harus diverifikasi dan nama host server harus cocok dengan atribut hostname pada sertifikat. 

Anda dapat menentukan apakah SSL digunakan dan sertifikat server diverifikasi dalam koneksi antara klien dan server. Untuk melakukan ini, Anda perlu meninjau `sslmode` pengaturan untuk ODBC DSN Anda pada klien dan `require_SSL` pengaturan untuk cluster Amazon Redshift di server. Tabel berikut menjelaskan hasil enkripsi untuk berbagai kombinasi pengaturan klien dan server: 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/connecting-ssl-support.html)

### Connect menggunakan sertifikat server dengan ODBC di Microsoft Windows
<a name="connecting-ssl-support-odbc-with-cert"></a>

 Jika Anda ingin terhubung ke cluster menggunakan SSL dan sertifikat server, unduh sertifikat terlebih dahulu ke komputer klien Anda atau instans Amazon EC2. Kemudian konfigurasikan ODBC DSN. 

1.  Unduh bundel otoritas sertifikat Amazon Redshift ke komputer klien Anda di `lib` folder di direktori instalasi driver Anda, dan simpan file sebagai. `root.crt` Untuk informasi unduhan, lihat [SSL](#connect-using-ssl).

1.  Buka **Administrator Sumber Data ODBC**, dan tambahkan atau edit entri DSN sistem untuk koneksi ODBC Anda. Untuk **Mode SSL**, pilih `verify-full` kecuali Anda menggunakan alias DNS. Jika Anda menggunakan alias DNS, pilih. `verify-ca` Lalu, pilih **Simpan**. 

    Untuk informasi selengkapnya tentang mengonfigurasi ODBC DSN, lihat. [Mengonfigurasi koneksi untuk driver ODBC versi 2.x untuk Amazon Redshift](odbc20-install.md) 

## Sertifikat SSL dan server di Java
<a name="connecting-ssl-support-java"></a>

SSL menyediakan satu lapisan keamanan dengan mengenkripsi data yang bergerak antara klien dan cluster Anda. Menggunakan sertifikat server memberikan lapisan keamanan tambahan dengan memvalidasi bahwa klaster tersebut adalah klaster Amazon Redshift. Ia melakukannya dengan memeriksa sertifikat server yang secara otomatis diinstal pada semua cluster yang Anda sediakan. Untuk informasi lebih lanjut tentang menggunakan sertifikat server dengan JDBC, buka [Mengkonfigurasi klien dalam](https://jdbc.postgresql.org/documentation/ssl/#configuring-the-client) dokumentasi PostgreSQL.

### Connect menggunakan sertifikat CA trust di Java
<a name="connecting-ssl-support-java-with-cert"></a>

**penting**  
Amazon Redshift telah mengubah cara sertifikat SSL dikelola. Anda mungkin perlu memperbarui sertifikat CA root kepercayaan Anda saat ini untuk terus terhubung ke cluster Anda menggunakan SSL. Untuk informasi selengkapnya, lihat [SSL](#connect-using-ssl).

**Untuk terhubung menggunakan sertifikat CA trust**

Anda dapat menggunakan `redshift-keytool.jar` file untuk mengimpor sertifikat CA di bundel Amazon Redshift Certificate Authority ke Java TrustStore atau private Anda. TrustStore

1. Jika Anda menggunakan `-Djavax.net.ssl.trustStore` opsi baris perintah Java, hapus dari baris perintah, jika memungkinkan.

1. Unduh [redshift-keytool.jar](https://s3.amazonaws.com/redshift-downloads/redshift-keytool.jar).

1. Lakukan salah satu tindakan berikut:
   + Untuk mengimpor bundel Amazon Redshift Certificate Authority ke Java TrustStore, jalankan perintah berikut. 

     ```
     java -jar redshift-keytool.jar -s
     ```
   + Untuk mengimpor bundel Amazon Redshift Certificate Authority ke private Anda TrustStore, jalankan perintah berikut: 

     ```
     java -jar redshift-keytool.jar -k <your_private_trust_store> -p <keystore_password> 
     ```

# Transisi ke sertifikat ACM untuk koneksi SSL
<a name="connecting-transitioning-to-acm-certs"></a>

Amazon Redshift mengganti sertifikat SSL di klaster Anda dengan sertifikat yang dikeluarkan [AWS Certificate Manager (ACM](https://aws.amazon.com/certificate-manager/)). ACM adalah otoritas sertifikat publik tepercaya (CA) yang dipercaya oleh sebagian besar sistem saat ini. Anda mungkin perlu memperbarui sertifikat CA root kepercayaan Anda saat ini untuk terus terhubung ke cluster Anda menggunakan SSL. 

Perubahan ini hanya memengaruhi Anda jika semua hal berikut berlaku:
+  Klien atau aplikasi SQL Anda terhubung ke klaster Amazon Redshift menggunakan SSL dengan `sslMode` opsi koneksi disetel `require` ke`verify-ca`,, atau opsi konfigurasi. `verify-full` 
+ Anda tidak menggunakan driver Amazon Redshift ODBC atau JDBC, atau Anda menggunakan driver Amazon Redshift sebelum ODBC versi 1.3.7.1000 atau JDBC versi 1.2.8.1005. 

Jika perubahan ini memengaruhi Anda di Wilayah Amazon Redshift komersial, maka Anda harus memperbarui sertifikat CA root kepercayaan Anda saat ini sebelum 23 Oktober 2017. Amazon Redshift akan mentransisikan cluster Anda untuk menggunakan sertifikat ACM antara sekarang dan 23 Oktober 2017. Perubahan seharusnya sangat sedikit atau tidak berpengaruh pada kinerja atau ketersediaan cluster Anda.

Jika perubahan ini memengaruhi Anda di Wilayah AWS GovCloud (US) (AS), maka Anda harus memperbarui sertifikat CA root kepercayaan Anda saat ini sebelum 1 April 2020 untuk menghindari gangguan layanan. Mulai tanggal ini, klien yang terhubung ke klaster Amazon Redshift menggunakan koneksi terenkripsi SSL memerlukan otoritas sertifikat tepercaya (CA) tambahan. Klien menggunakan otoritas sertifikat tepercaya untuk mengonfirmasi identitas klaster Amazon Redshift saat mereka terhubung dengannya. Tindakan Anda diperlukan untuk memperbarui klien dan aplikasi SQL Anda untuk menggunakan bundel sertifikat yang diperbarui yang menyertakan CA tepercaya baru. 

**penting**  
Di Wilayah Tiongkok pada 5 Januari 2021, Amazon Redshift mengganti sertifikat SSL di AWS Certificate Manager klaster Anda dengan sertifikat yang dikeluarkan (ACM). Jika perubahan ini memengaruhi Anda di Wilayah Tiongkok (Beijing) atau Wilayah Tiongkok (Ningxia), maka Anda harus memperbarui sertifikat CA root trust Anda saat ini sebelum 5 Januari 2021 untuk menghindari gangguan layanan. Mulai tanggal ini, klien yang terhubung ke klaster Amazon Redshift menggunakan koneksi terenkripsi SSL memerlukan otoritas sertifikat tepercaya (CA) tambahan. Klien menggunakan otoritas sertifikat tepercaya untuk mengonfirmasi identitas klaster Amazon Redshift saat mereka terhubung dengannya. Tindakan Anda diperlukan untuk memperbarui klien dan aplikasi SQL Anda untuk menggunakan bundel sertifikat yang diperbarui yang menyertakan CA tepercaya baru.
+ [Menggunakan driver Amazon Redshift ODBC atau JDBC terbaru](#connecting-transitioning-to-acm-latest-odbc-jdbc)
+ [Menggunakan driver Amazon Redshift ODBC atau JDBC sebelumnya](#connecting-transitioning-to-acm-earlier-odbc-jdbc)
+ [Menggunakan jenis koneksi SSL lainnya](#connecting-transitioning-to-acm-other-ssl-types)

## Menggunakan driver Amazon Redshift ODBC atau JDBC terbaru
<a name="connecting-transitioning-to-acm-latest-odbc-jdbc"></a>

Metode yang disukai adalah menggunakan driver Amazon Redshift ODBC atau JDBC terbaru. Driver Amazon Redshift dimulai dengan ODBC versi 1.3.7.1000 dan JDBC versi 1.2.8.1005 secara otomatis mengelola transisi dari sertifikat yang ditandatangani sendiri Amazon Redshift ke sertifikat ACM. Untuk mengunduh driver terbaru, lihat[Mengonfigurasi koneksi untuk driver JDBC versi 2.x untuk Amazon Redshift](jdbc20-install.md). 

Jika Anda menggunakan driver Amazon Redshift JDBC terbaru, sebaiknya jangan gunakan `-Djavax.net.ssl.trustStore` dalam opsi JVM. Jika Anda harus menggunakan`-Djavax.net.ssl.trustStore`, impor bundel otoritas sertifikat Redshift ke truststore yang ditunjuknya. Untuk informasi unduhan, lihat [SSL](connecting-ssl-support.md#connect-using-ssl). Untuk informasi selengkapnya, lihat [Mengimpor bundel otoritas sertifikat Amazon Redshift ke dalam TrustStore](#importing-the-acm-bundle-to-truststore).

## Menggunakan driver Amazon Redshift ODBC atau JDBC sebelumnya
<a name="connecting-transitioning-to-acm-earlier-odbc-jdbc"></a>
+ Jika ODBC DSN Anda dikonfigurasi`SSLCertPath`, timpa file sertifikat di jalur yang ditentukan.
+ Jika tidak `SSLCertPath` disetel, timpa file sertifikat yang disebutkan `root.crt` di lokasi DLL driver. 

Jika Anda harus menggunakan driver Amazon Redshift JDBC sebelum versi 1.2.8.1005, lakukan salah satu hal berikut:
+ Jika string koneksi JDBC Anda menggunakan `sslCert` opsi, hapus opsi. `sslCert` Kemudian impor bundel otoritas sertifikat Redshift ke Java Anda. TrustStore Untuk informasi unduhan, lihat [SSL](connecting-ssl-support.md#connect-using-ssl). Untuk informasi selengkapnya, lihat [Mengimpor bundel otoritas sertifikat Amazon Redshift ke dalam TrustStore](#importing-the-acm-bundle-to-truststore). 
+ Jika Anda menggunakan `-Djavax.net.ssl.trustStore` opsi baris perintah Java, hapus dari baris perintah, jika memungkinkan. Kemudian impor bundel otoritas sertifikat Redshift ke Java Anda. TrustStore Untuk informasi unduhan, lihat [SSL](connecting-ssl-support.md#connect-using-ssl). Untuk informasi selengkapnya, lihat [Mengimpor bundel otoritas sertifikat Amazon Redshift ke dalam TrustStore](#importing-the-acm-bundle-to-truststore).

### Mengimpor bundel otoritas sertifikat Amazon Redshift ke dalam TrustStore
<a name="importing-the-acm-bundle-to-truststore"></a>

Anda dapat menggunakan `redshift-keytool.jar` untuk mengimpor sertifikat CA di bundel Amazon Redshift Certificate Authority ke Java TrustStore atau truststore pribadi Anda.

**Untuk mengimpor bundel otoritas sertifikat Amazon Redshift ke dalam TrustStore**

1. Unduh [redshift-keytool.jar](https://s3.amazonaws.com/redshift-downloads/redshift-keytool.jar).

1. Lakukan salah satu tindakan berikut:
   + Untuk mengimpor bundel Amazon Redshift Certificate Authority ke Java TrustStore, jalankan perintah berikut. 

     ```
     java -jar redshift-keytool.jar -s
     ```
   + Untuk mengimpor bundel Amazon Redshift Certificate Authority ke private Anda TrustStore, jalankan perintah berikut: 

     ```
     java -jar redshift-keytool.jar -k <your_private_trust_store> -p <keystore_password> 
     ```

## Menggunakan jenis koneksi SSL lainnya
<a name="connecting-transitioning-to-acm-other-ssl-types"></a>

Ikuti langkah-langkah di bagian ini jika Anda terhubung menggunakan salah satu dari berikut ini:
+  Driver ODBC sumber terbuka 
+  Driver JDBC sumber terbuka 
+  Antarmuka [baris perintah Amazon Redshift RSQL](https://docs.aws.amazon.com/redshift/latest/mgmt/rsql-query-tool.html) 
+  Binding bahasa apa pun berdasarkan libpq, seperti psycopg2 (Python) dan ruby-pg (Ruby) 

**Untuk menggunakan sertifikat ACM dengan jenis koneksi SSL lainnya:**

1.  Unduh bundel otoritas sertifikat Amazon Redshift. Untuk informasi unduhan, lihat [SSL](connecting-ssl-support.md#connect-using-ssl).

1. Tempatkan sertifikat dari bundel di `root.crt` file Anda. 
   + Pada sistem operasi Linux dan macOS X, file tersebut adalah. `~/.postgresql/root.crt`
   + Di Microsoft Windows, filenya adalah`%APPDATA%\postgresql\root.crt`.

# Menghubungkan dari alat dan kode klien
<a name="connecting-via-client-tools"></a>

Amazon Redshift menyediakan editor kueri Amazon Redshift v2 untuk terhubung ke cluster dan grup kerja Anda. Untuk informasi selengkapnya, lihat [Menanyakan database menggunakan editor kueri v2Mengkueri database menggunakan editor kueri Amazon Redshift v2](query-editor-v2.md).

Bagian ini menyediakan beberapa opsi untuk alat pihak ketiga untuk terhubung. Selain itu, ini menjelaskan cara terhubung ke cluster Anda secara terprogram. 

**Topics**
+ [Menghubungkan dengan Amazon Redshift RSQL](rsql-query-tool.md)
+ [Connect ke cluster dengan Amazon Redshift RSQL](rsql-query-tool-starting-tool-connection.md)
+ [Perintah meta Amazon Redshift RSQL](rsql-query-tool-commands.md)
+ [Variabel Amazon Redshift RSQL](rsql-query-tool-variables.md)
+ [Kode kesalahan Amazon Redshift RSQL](rsql-query-tool-error-codes.md)
+ [Variabel lingkungan Amazon Redshift RSQL](rsql-query-tool-environment-variables.md)

# Menghubungkan dengan Amazon Redshift RSQL
<a name="rsql-query-tool"></a>

 Amazon Redshift RSQL adalah klien baris perintah untuk berinteraksi dengan cluster dan database Amazon Redshift. Anda dapat terhubung ke klaster Amazon Redshift, menjelaskan objek database, data kueri, dan melihat hasil kueri dalam berbagai format keluaran. 

 Amazon Redshift RSQL mendukung kemampuan alat baris perintah PostgreSQL psql dengan serangkaian kemampuan tambahan khusus untuk Amazon Redshift. Sumber daya yang dimaksud meliputi: 
+ Anda dapat menggunakan otentikasi masuk tunggal menggunakan AD FS,, Okta PingIdentity, Azure ADm atau penyedia identitas berbasis lainnya. SAML/JWT Anda juga dapat menggunakan penyedia identitas SAMP berbasis browser untuk otentikasi multi-faktor (MFA).
+ Anda dapat mendeskripsikan properti atau atribut objek Amazon Redshift seperti kunci distribusi tabel, kunci pengurutan tabel, tampilan pengikatan akhir (LBVs), dan tampilan terwujud. Anda juga dapat menjelaskan properti atau atribut tabel eksternal dalam AWS Glue katalog atau Apache Hive Metastore, database eksternal di Amazon RDS untuk PostgreSQL, Amazon Aurora PostgreSQL Edisi yang kompatibel dengan PostgreSQL, RDS untuk MySQL (pratinjau) dan Amazon Aurora Edisi yang kompatibel dengan MySQL (pratinjau), dan tabel yang dibagikan menggunakan Amazon Redshift Berbagi data.
+ Anda juga dapat menggunakan perintah aliran kontrol yang disempurnakan seperti `IF` (`\ELSEIF`, `\ELSE,``\ENDIF`), `\GOTO` dan`\LABEL`.

 Dengan mode batch Amazon Redshift RSQL, yang menjalankan skrip yang diteruskan sebagai parameter input, Anda dapat menjalankan skrip yang menyertakan SQL dan logika bisnis yang kompleks. Jika Anda memiliki gudang data lokal yang dikelola sendiri, Anda dapat menggunakan Amazon Redshift RSQL untuk mengganti skrip ekstrak, transformasi, pemuatan (ETL), dan otomatisasi yang ada, seperti skrip Teradata BTEQ. Menggunakan RSQL membantu Anda menghindari penerapan ulang skrip secara manual dalam bahasa prosedural. 

 Amazon Redshift RSQL tersedia untuk sistem operasi Linux, Windows, dan macOS X. 

Untuk melaporkan masalah Amazon Redshift RSQL, tulis ke @amazon .com. redshift-rsql-support

**Topics**
+ [Memulai dengan Amazon Redshift RSQL](rsql-query-tool-getting-started.md)
+ [Log perubahan Amazon Redshift RSQL](rsql-query-tool-changelog.md)

# Memulai dengan Amazon Redshift RSQL
<a name="rsql-query-tool-getting-started"></a>

Instal Amazon Redshift RSQL di komputer dengan sistem operasi Linux, macOS, atau Microsoft Windows.

## Unduh RSQL
<a name="rsql-query-tool-download"></a>
+  
  +  
  +  
+  
+  

Lihat log perubahan dan unduhan untuk versi sebelumnya di[Log perubahan Amazon Redshift RSQL](rsql-query-tool-changelog.md).

## Instal RSQL untuk Linux
<a name="rsql-query-tool-linux-install"></a>

Ikuti langkah-langkah di bawah ini untuk menginstal RSQL untuk Linux.

1. Instal manajer driver dengan perintah berikut:

   ```
   sudo yum install unixODBC
   ```

1. Instal driver ODBC:[Mengunduh dan menginstal driver Amazon Redshift ODBCMengunduh dan menginstal driver ODBC](odbc20-install-linux.md).

1. Salin file ini ke direktori home Anda:

   ```
   cp /opt/amazon/redshiftodbcx64/odbc.ini ~/.odbc.ini
   ```

1. Atur variabel lingkungan untuk menunjuk ke lokasi file:

   ```
   export ODBCINI=~/.odbc.ini
   export ODBCSYSINI=/opt/amazon/redshiftodbcx64/
   export AMAZONREDSHIFTODBCINI=/opt/amazon/redshiftodbcx64/amazon.redshiftodbc.ini
   ```

1. Anda sekarang dapat menginstal RSQL dengan menjalankan perintah berikut.

   ```
   sudo rpm -i AmazonRedshiftRsql-<version>.rhel.x86_64.rpm
   ```

## Instal RSQL untuk Mac
<a name="rsql-query-tool-mac-install"></a>

Ikuti langkah-langkah di bawah ini untuk menginstal RSQL for Mac OSX.

1. Instal manajer driver dengan perintah berikut:

   ```
   brew install unixodbc --build-from-source
   ```

1. Instal driver ODBC:[Mengunduh dan menginstal driver Amazon Redshift ODBCMengunduh dan menginstal driver ODBC](odbc-driver-mac-how-to-install.md).

1. Salin file ini ke direktori home Anda:

   ```
   cp /opt/amazon/redshift/Setup/odbc.ini ~/.odbc.ini
   ```

1. Atur variabel lingkungan untuk menunjuk ke lokasi file:

   ```
   export ODBCINI=~/.odbc.ini
   export ODBCSYSINI=/opt/amazon/redshift/Setup
   export AMAZONREDSHIFTODBCINI=/opt/amazon/redshift/lib/amazon.redshiftodbc.ini
   ```

1. Setel `DYLD_LIBRARY_PATH` ke lokasi libodbc.dylib Anda jika tidak masuk. `/usr/local/lib`

   ```
   export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/usr/local/lib
   ```

1. Klik dua kali file pkg untuk menjalankan installer.

1. Ikuti langkah-langkah di installer untuk menyelesaikan instalasi. Setuju dengan ketentuan perjanjian lisensi.

## Instal RSQL untuk Windows
<a name="rsql-query-tool-windows-install"></a>

Ikuti langkah-langkah di bawah ini untuk menginstal RSQL untuk Windows.

1. Instal driver ODBC:[Mengunduh dan menginstal driver Amazon Redshift ODBCMengunduh dan menginstal driver ODBC](odbc-driver-windows-how-to-install.md).

1. Klik dua kali file unduhan RSQL untuk menjalankan penginstal, lalu ikuti petunjuk untuk menyelesaikan instalasi.

# Log perubahan Amazon Redshift RSQL
<a name="rsql-query-tool-changelog"></a>

*1.1.2 (2025-12-11)*

Perbaikan Bug
+ Memperbaiki bug yang menyebabkan kegagalan dengan perintah\$1 goto dan\$1 label.
+ Memperbaiki bug yang mencegah RSQL mencetak nilai variabel saat variabel diapit tanda kutip.
+ Memperbaiki bug yang menyebabkan RSQL crash saat hasil kueri melebihi ukuran parameter ODBC DSN Fetch saat diaktifkan. UseDeclareFetch 
+ Memperbaiki masalah di mana beberapa halaman hasil dikembalikan sekaligus meskipun pager diaktifkan.
+ Memperbaiki bug yang memicu crash RSQL saat kueri gagal dalam blok transaksi.

*1.1.1 (2025-11-20)*

Perbaikan Bug
+ Memperbaiki masalah di mana RSQL salah mengurai kueri saat menggunakan flag -c. Perbaikan ini berlaku untuk semua platform.
+ Perbaiki bug di Mac yang mencegah pengguna menggunakan perintah\$1 s di RSQL.

*1.1.0 (2025-11-11)*

Perbaikan Bug
+ Menyelesaikan masalah kebocoran memori yang menyebabkan crash tak terduga di RSQL.
+ Dihapus ketergantungan OpenSSL dari RSQL.
+ Konflik penautan tetap dengan libpq/psql instalasi di lingkungan yang sama.
+ Kompatibilitas platform yang ditingkatkan untuk Amazon Linux 2023, Windows, dan macOS.
+ Memperbaiki masalah di mana output akan terpotong saat melebihi ukuran tampilan saat ini.

*1.0.8 (2023-06-19)*

Perbaikan Bug
+ Memperbaiki masalah saat output terpotong dengan perintah SHOW.
+ Menambahkan dukungan ke\$1 de untuk menjelaskan aliran Kinesis eksternal dan topik Kafka.

*1.0.7 (2023-03-22)*

Perbaikan Bug
+ Memperbaiki masalah di mana RSQL tidak dapat menggambarkan tampilan terwujud.
+ Memperbaiki kesalahan penolakan izin pada stl\$1connection\$1log saat menggunakan Amazon Redshift Serverless.
+ Memperbaiki masalah di mana RSQL dapat memproses label\$1 GOTO secara tidak benar.
+ Memperbaiki masalah saat pesan SSL dicetak dalam mode senyap.
+ Memperbaiki masalah dengan karakter acak yang ditampilkan saat menjelaskan prosedur yang disimpan.
+ Memperbaiki masalah dengan mencetak ERROR/INFO pesan duplikat.

Baru
+ RSQL sekarang mendapatkan informasi SSL langsung dari driver ODBC.



*1.0.6 (2023-02-21)*

Perbaikan Bug
+ Memperbaiki masalah di mana\$1 d melempar kesalahan - sintaks input tidak valid untuk integer: “xid” - pada patch Redshift 1.0.46086 (P173).

Baru
+ Berganti nama file instalasi untuk mencerminkan arsitektur yang didukung.



*1.0.5 (2022-06-27)*

Perbaikan Bug
+ Kirim pesan kesalahan SQL ke kesalahan standar (stderr).
+ Memperbaiki masalah dengan kode keluar saat menggunakan ON\$1ERROR\$1STOP. Skrip sekarang berakhir setelah mengalami kesalahan dan mengembalikan kode keluar yang benar.
+ Maxerror sekarang tidak peka huruf besar/kecil.

Baru
+ Menambahkan dukungan untuk driver ODBC 2.x.



*1.0.4 (2022-03-19)*
+ Tambahkan dukungan untuk variabel lingkungan RSPASSWORD. Tetapkan kata sandi untuk terhubung ke Amazon Redshift. Misalnya, `export RSPASSWORD=TestPassw0rd`.



*1.0.3 (2021-12-08)*

Perbaikan Bug
+ Dialog tetap muncul saat menggunakan `\c` atau `\logon` beralih antar database di OS Windows.
+ Memperbaiki kerusakan saat memeriksa informasi ssl.



## Amazon Redshift RSQL versi sebelumnya
<a name="rsql-query-tool-changelog-legacy-versions"></a>

Pilih salah satu tautan untuk mengunduh versi Amazon Redshift RSQL yang Anda butuhkan, berdasarkan sistem operasi Anda.

**Linux 64-bit RPM**
+ [RSQL Versi 1.1.1](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.1.1/AmazonRedshiftRsql-1.1.1.rhel.x86_64.rpm)
+ [RSQL Versi 1.1.0](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.1.0/AmazonRedshiftRsql-1.1.0.rhel.x86_64.rpm)
+ [RSQL Versi](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.8/AmazonRedshiftRsql-1.0.8.x86_64.rpm) 
+ [RSQL Versi](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.7/AmazonRedshiftRsql-1.0.7.x86_64.rpm) 
+ [RSQL Versi](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.6/AmazonRedshiftRsql-1.0.6.x86_64.rpm) 
+ [RSQL Versi 1.0.5](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.5/AmazonRedshiftRsql-1.0.5-1.x86_64.rpm)
+ [RSQL Versi](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.4/AmazonRedshiftRsql-1.0.4-1.x86_64.rpm) 
+ [RSQL Versi 1.0.3](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.3/AmazonRedshiftRsql-1.0.3-1.x86_64.rpm) [ 64-bit RSQL Versi 1.0.3]( https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/amazon-redshift-rsql/1.0.3/AmazonRedshiftRsql-1.0.3-1.x86_64.rpm)
+ [RSQL Versi 1.0.1](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.1/AmazonRedshiftRsql-1.0.1-1.x86_64.rpm) [ 64-bit RSQL Versi 1.0.1]( https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/amazon-redshift-rsql/1.0.1/AmazonRedshiftRsql-1.0.1-1.x86_64.rpm)

**Mac OS 64-bit DMG/PKG**
+ [RSQL Versi 1.1.1](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.1.1/AmazonRedshiftRsql-1.1.1.universal.pkg)
+ [RSQL Versi 1.1.0](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.1.0/AmazonRedshiftRsql-1.1.0.universal.pkg)
+ [RSQL Versi](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.8/AmazonRedshiftRsql-1.0.8.x86_64.dmg) 
+ [RSQL Versi](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.7/AmazonRedshiftRsql-1.0.7.x86_64.dmg) 
+ [RSQL Versi](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.6/AmazonRedshiftRsql-1.0.6.x86_64.dmg) 
+ [RSQL Versi 1.0.5](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.5/AmazonRedshiftRsql-1.0.5.dmg) [ 64-bit RSQL Versi 1.0.5](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/amazon-redshift-rsql/1.0.5/AmazonRedshiftRsql-1.0.5.dmg)
+ [RSQL Versi 1.0.4 Di](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.4/AmazonRedshiftRsql-1.0.4.dmg) [: 64-bit RSQL Versi 1.0.4](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/amazon-redshift-rsql/1.0.4/AmazonRedshiftRsql-1.0.4.dmg)
+ [RSQL Versi 1.0.3](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.3/AmazonRedshiftRsql-1.0.3.dmg) [ 64-bit RSQL Versi 1.0.3](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/amazon-redshift-rsql/1.0.3/AmazonRedshiftRsql-1.0.3.dmg)
+ [RSQL Versi 1.0.1](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.1/AmazonRedshiftRsql-1.0.1.dmg) [ 64-bit RSQL Versi 1.0.1](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/amazon-redshift-rsql/1.0.1/AmazonRedshiftRsql-1.0.1.dmg)

**Windows 64-bit MSI**
+ [RSQL Versi 1.1.1](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.1.1/AmazonRedshiftRsql-1.1.1.x86_64.msi)
+ [RSQL Versi 1.1.0](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.1.0/AmazonRedshiftRsql-1.1.0.x86_64.msi)
+ [RSQL Versi](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.8/AmazonRedshiftRsql-1.0.8.x86_64.msi) 
+ [RSQL Versi](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.7/AmazonRedshiftRsql-1.0.7.x86_64.msi) 
+ [RSQL Versi](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.6/AmazonRedshiftRsql-1.0.6.x86_64.msi) 
+ [RSQL Versi 1.0.5](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.5/AmazonRedshiftRsql-1.0.5.msi)
+ [RSQL Versi](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.4/AmazonRedshiftRsql-1.0.4.msi) 
+ [RSQL Versi 1.0.3](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.3/AmazonRedshiftRsql-1.0.3.msi) [ 64-bit RSQL Versi 1.0.3](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/amazon-redshift-rsql/1.0.3/AmazonRedshiftRsql-1.0.3.msi)
+ [RSQL Versi 1.0.1](https://s3.amazonaws.com/redshift-downloads/amazon-redshift-rsql/1.0.1/AmazonRedshiftRsql-1.0.1.msi) [ 64-bit RSQL Versi 1.0.1](https://s3---cn-north-1.amazonaws.com.rproxy.govskope.ca.cn/redshift-downloads-cn/amazon-redshift-rsql/1.0.1/AmazonRedshiftRsql-1.0.1.msi)

# Connect ke cluster dengan Amazon Redshift RSQL
<a name="rsql-query-tool-starting-tool-connection"></a>

Dengan Amazon Redshift, Anda dapat terhubung ke cluster dan berinteraksi dengannya menggunakan RSQL. Ini adalah alat baris perintah yang menyediakan cara aman untuk menanyakan data, membuat objek database, dan mengelola cluster Amazon Redshift Anda. Bagian berikut memandu Anda melalui langkah-langkah untuk membuat koneksi ke cluster Anda menggunakan RSQL dengan dan tanpa nama sumber data (DSN).

## Menghubungkan tanpa DSN
<a name="rsql-query-tool-starting-tool-connection-dsn-less-example"></a>

1. Di konsol Amazon Redshift, pilih cluster yang ingin Anda sambungkan dan catat titik akhir, database, dan port.

1. Pada prompt perintah, tentukan informasi koneksi dengan menggunakan parameter baris perintah.

   ```
   rsql -h <endpoint> -U <username> -d <databasename> -p <port>
   ```

    Di sini, berikut ini berlaku: 
   +  *<endpoint>*adalah **Endpoint** yang Anda rekam pada langkah sebelumnya.
   +  *<username>*adalah nama pengguna dengan izin untuk terhubung ke cluster.
   +  *<databasename>*adalah **Nama Database** yang Anda rekam pada langkah sebelumnya.
   +  *<port>*adalah **Port** yang Anda rekam pada langkah sebelumnya. *<port>*adalah parameter opsional.

   Berikut contohnya.

   ```
   rsql -h testcluster.example.amazonaws.com -U user1 -d dev -p 5439
   ```

1.  Pada prompt kata sandi, masukkan kata sandi untuk *<username>* pengguna.

   Respons koneksi yang berhasil terlihat seperti berikut ini.

   ```
   % rsql -h testcluster.example.com -d dev -U user1 -p 5349
   Password for user user1:
   DSN-less Connected
   DBMS Name: Amazon Redshift
   Driver Name: Amazon Redshift ODBC Driver
   Driver Version: 1.4.27.1000
   Rsql Version: 1.0.1
   Redshift Version: 1.0.29306
   Type "help" for help.
   
   (testcluster) user1@dev=#
   ```

Perintah untuk menghubungkan memiliki parameter yang sama di Linux, Mac OS, dan Windows.

## Menghubungkan dengan DSN
<a name="rsql-query-tool-starting-tool-connection-dsn-example"></a>

Anda dapat menghubungkan RSQL ke Amazon Redshift dengan menggunakan DSN untuk menyederhanakan organisasi properti koneksi. Topik ini mencakup instruksi untuk instalasi ODBC-driver dan deskripsi untuk properti DSN.

### Menggunakan koneksi DSN dengan kata sandi
<a name="rsql-query-tool-starting-tool-connection-dsn-example-password"></a>

Berikut ini menunjukkan contoh konfigurasi koneksi DSN yang menggunakan kata sandi. Default `<path to driver>` untuk Mac OSX adalah `/opt/amazon/redshift/lib/libamazonredshiftodbc.dylib` dan untuk Linux adalah`/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so`.

```
[testuser]
Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so
SSLMode=verify-ca
Min_TLS=1.2
boolsaschar=0
Host=<server endpoint>
Port=<database port>
Database=<dbname>
UID=<username>
PWD=<password>
sslmode=prefer
```

Hasil output berikut dari koneksi yang berhasil.

```
% rsql -D testuser
DSN Connected
DBMS Name: Amazon Redshift
Driver Name: Amazon Redshift ODBC Driver
Driver Version: 1.4.27.1000
Rsql Version: 1.0.1
Redshift Version: 1.0.29306
Type "help" for help.

(testcluster) user1@dev=#
```

### Menggunakan DSN masuk tunggal
<a name="rsql-query-tool-starting-tool-connection-dsn"></a>

Anda dapat mengonfigurasi DSN untuk otentikasi masuk tunggal. Berikut ini menunjukkan contoh konfigurasi koneksi DSN yang menggunakan tanda tunggal Okta.

```
[testokta]
Driver=<path to driver>
SSLMode=verify-ca
Min_TLS=1.2
boolsaschar=0
Host=<server endpoint>
clusterid=<cluster id>
region=<region name>
Database=<dbname>
locale=en-US
iam=1
plugin_name=<plugin name>
uid=<okta username>
pwd=<okta password>
idp_host=<idp endpoint>
app_id=<app id>
app_name=<app name>
preferred_role=<role arn>
```

Contoh output dari koneksi yang berhasil.

```
% rsql -D testokta 
DSN Connected
DBMS Name: Amazon Redshift
Driver Name: Amazon Redshift ODBC Driver
Driver Version: 1.4.27.1000
Rsql Version: 1.0.1
Redshift Version: 1.0.29306
Type "help" for help.

(testcluster) user1@dev=#
```

Contoh berikut menunjukkan contoh konfigurasi koneksi DSN yang menggunakan tanda tunggal Azure.

```
[testazure]
Driver=<path to driver>
SSLMode=verify-ca
Min_TLS=1.2
boolsaschar=0
Host=<server endpoint>
Port=<cluster port>
clusterid=<cluster id>
region=<region name>
Database=<dbname>
locale=en-us
iam=1
plugin_name=<plugin name>
uid=<azure username>
pwd=<azure password>
idp_tenant=<Azure idp tenant uuid>
client_id=<Azure idp client uuid>
client_secret=<Azure idp client secret>
```

### Menggunakan koneksi DSN dengan profil IAM
<a name="rsql-query-tool-starting-tool-connection-dsn-iam"></a>

Anda dapat terhubung ke Amazon Redshift menggunakan profil IAM yang telah dikonfigurasi. Profil IAM harus memiliki hak istimewa untuk menelepon. `GetClusterCredentials` Contoh berikut menunjukkan properti DSN untuk digunakan. `Region`Parameter `ClusterID` dan diperlukan hanya jika `Host` bukan titik akhir yang disediakan Amazon seperti`examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com`.

```
[testiam]
Driver=Default
Host=testcluster.example.com
Database=dev
DbUser=testuser
ClusterID=rsqltestcluster
Region=us-east-1
IAM=1
Profile=default
```

Nilai untuk `Profile` kunci adalah profil bernama yang Anda pilih dari kredenal AWS CLI Anda. Contoh ini menunjukkan kredensil untuk profil bernama. `default`

```
$ cat .aws/credentials
[default]
aws_access_key_id = ASIAIOSFODNN7EXAMPLE 
aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
```

Berikut ini menunjukkan respon koneksi.

```
$ rsql -D testiam
DSN Connected
DBMS Name: Amazon Redshift
Driver Name: Amazon Redshift ODBC Driver
Driver Version: 1.4.27.1000
Rsql Version: 1.0.1
Redshift Version: 1.0.29306
Type "help" for help.

(testcluster) testuser@dev=>
```

### Menggunakan koneksi DSN dengan profil Instance
<a name="rsql-query-tool-starting-tool-connection-dsn-instance"></a>

Anda dapat terhubung ke Amazon Redshift menggunakan profil instans Amazon EC2. Profil instance harus memiliki hak istimewa untuk menelepon`GetClusterCredentials`. Lihat contoh di bawah ini untuk properti DSN yang akan digunakan. `Region`Parameter `ClusterID` dan diperlukan hanya jika `Host` bukan titik akhir yang disediakan Amazon seperti`examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com`.

```
[testinstanceprofile]
Driver=Default
Host=testcluster.example.com
Database=dev
DbUser=testuser
ClusterID=rsqltestcluster
Region=us-east-1
IAM=1
Instanceprofile=1
```

Berikut ini menunjukkan respon koneksi.

```
$ rsql -D testinstanceprofile
DSN Connected
DBMS Name: Amazon Redshift
Driver Name: Amazon Redshift ODBC Driver
Driver Version: 1.4.27.1000
Rsql Version: 1.0.1
Redshift Version: 1.0.29306
Type "help" for help.

(testcluster) testuser@dev=>
```

### Menggunakan koneksi DSN dengan rantai penyedia kredensi default
<a name="rsql-query-tool-starting-tool-connection-dsn-provider-chain"></a>

Untuk menyambung menggunakan rantai penyedia kredensi default, tentukan hanya properti IAM, dan Amazon Redshift RSQL akan mencoba memperoleh kredensil dalam urutan yang dijelaskan dalam Bekerja dengan Kredensial di SDK for [Java](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html). AWS AWS Setidaknya salah satu penyedia dalam rantai harus memiliki `GetClusterCredentials` izin. Ini berguna untuk menghubungkan dari wadah ECS, misalnya.

```
[iamcredentials]
Driver=Default
Host=testcluster.example.com
Database=dev
DbUser=testuser
ClusterID=rsqltestcluster
Region=us-east-1
IAM=1
```

# Perintah meta Amazon Redshift RSQL
<a name="rsql-query-tool-commands"></a>

Perintah meta Amazon Redshift RSQL mengembalikan catatan informasi tentang database atau objek database tertentu. Hasil dapat mencakup berbagai kolom dan metadata. Perintah lain melakukan tindakan tertentu. Perintah ini didahului dengan garis miring terbalik.

## \$1 d [S \$1]
<a name="rsql-query-tool-describe-d"></a>

 Daftar tabel buatan pengguna lokal, tampilan reguler, tampilan yang mengikat akhir, dan tampilan terwujud. `\dS `juga mencantumkan tabel dan tampilan`\d`, seperti, tetapi objek sistem disertakan dalam catatan yang dikembalikan. `+`Hasil di kolom metadata tambahan `description` untuk semua objek yang terdaftar. Berikut ini menunjukkan catatan sampel dikembalikan sebagai hasil dari perintah. 

```
List of relations
 schema |   name    | type  |  owner  
--------+-----------+-------+---------
 public | category  | table | awsuser
 public | date      | table | awsuser
 public | event     | table | awsuser
 public | listing   | table | awsuser
 public | sales     | table | awsuser
 public | users     | table | awsuser
 public | venue     | table | awsuser
(7 rows)
```

## \$1 d [S\$1] NAMA
<a name="rsql-query-tool-describe-s-plus-named"></a>

Menjelaskan tabel, tampilan, atau indeks. Termasuk nama kolom dan jenis. Ini juga menyediakan diststyle, konfigurasi cadangan, membuat tanggal (tabel dibuat setelah Oktober 2018), dan kendala. Misalnya, `\dS+ sample` mengembalikan properti objek. Menambahkan `S+` hasil di kolom tambahan termasuk dalam catatan yang dikembalikan.

```
Table "public.sample"
 Column |            Type             |   Collation    | Nullable | Default Value | Encoding  | DistKey | SortKey
--------+-----------------------------+----------------+----------+---------------+-----------+---------+---------
 col1   | smallint                    |                | NO       |               | none      | t       | 1
 col2   | character(100)              | case_sensitive | YES      |               | none      | f       | 2
 col3   | character varying(100)      | case_sensitive | YES      |               | text32k   | f       | 3
 col4   | timestamp without time zone |                | YES      |               | runlength | f       | 0
 col5   | super                       |                | YES      |               | zstd      | f       | 0
 col6   | bigint                      |                | YES      |               | az64      | f       | 0

Diststyle: KEY
Backup: YES
Created: 2021-07-20 19:47:27.997045
Unique Constraints:
    "sample_pkey" PRIMARY KEY (col1)
    "sample_col2_key" UNIQUE (col2)
Foreign-key constraints:
    "sample_col2_fkey" FOREIGN KEY (col2) REFERENCES lineitem(l_orderkey)
```

Gaya distribusi, atau *Diststyle*, dari tabel bisa KEY, AUTO, EVEN atau ALL.

*Backup* menunjukkan apakah tabel dicadangkan saat snapshot diambil. Nilai-nilai yang valid adalah `YES` atau `NO`.

*Dibuat* adalah stempel waktu untuk saat tabel dibuat. Tanggal pembuatan tidak tersedia untuk tabel Amazon Redshift yang dibuat sebelum November 2018. Tabel yang dibuat sebelum tanggal ini ditampilkan n/a (Tidak Tersedia). 

Kendala *Unik mencantumkan kendala* kunci unik dan primer di atas meja.

*Kendala kunci asing mencantumkan kendala* kunci asing di atas meja.

## \$1 dC [\$1] [POLA]
<a name="rsql-query-tool-describe-dc"></a>

Daftar gips. Termasuk jenis sumber, tipe target, dan apakah pemeran itu implisit.

Berikut ini menunjukkan subset hasil dari`\dC+`.

```
List of casts
         source type         |         target type         |      function       |   implicit?   | description 
-----------------------------+-----------------------------+---------------------+---------------+-------------
 "char"                      | character                   | bpchar              | in assignment | 
 "char"                      | character varying           | text                | in assignment | 
 "char"                      | integer                     | int4                | no            | 
 "char"                      | text                        | text                | yes           | 
 "path"                      | point                       | point               | no            | 
 "path"                      | polygon                     | polygon             | in assignment | 
 abstime                     | date                        | date                | in assignment | 
 abstime                     | integer                     | (binary coercible)  | no            | 
 abstime                     | time without time zone      | time                | in assignment | 
 abstime                     | timestamp with time zone    | timestamptz         | yes           | 
 abstime                     | timestamp without time zone | timestamp           | yes           | 
 bigint                      | bit                         | bit                 | no            | 
 bigint                      | boolean                     | bool                | yes           | 
 bigint                      | character                   | bpchar              | in assignment | 
 bigint                      | character varying           | text                | in assignment | 
 bigint                      | double precision            | float8              | yes           | 
 bigint                      | integer                     | int4                | in assignment | 
 bigint                      | numeric                     | numeric             | yes           | 
 bigint                      | oid                         | oid                 | yes           | 
 bigint                      | real                        | float4              | yes           | 
 bigint                      | regclass                    | oid                 | yes           | 
 bigint                      | regoper                     | oid                 | yes           | 
 bigint                      | regoperator                 | oid                 | yes           | 
 bigint                      | regproc                     | oid                 | yes           | 
 bigint                      | regprocedure                | oid                 | yes           | 
 bigint                      | regtype                     | oid                 | yes           | 
 bigint                      | smallint                    | int2                | in assignment | 
 bigint                      | super                       | int8_partiql        | in assignment |
```

## \$1 dd [S] [POLA]
<a name="rsql-query-tool-describe-dds"></a>

Menampilkan deskripsi objek yang tidak ditampilkan di tempat lain.

## \$1 de
<a name="rsql-query-tool-describe-de"></a>

Daftar tabel eksternal. Ini termasuk tabel di AWS Glue Data Catalog, Hive Metastore dan tabel federasi dari Amazon MySQL, Amazon PostgreSQL, dan tabel data RDS/Aurora Amazon Redshift. RDS/Aurora 

## \$1 NAMA
<a name="rsql-query-tool-describe-de-name"></a>

Menjelaskan tabel eksternal.

Contoh berikut menunjukkan tabel AWS Glue eksternal.

```
# \de spectrum.lineitem
                            Glue External table "spectrum.lineitem"
     Column      | External Type | Redshift Type | Position | Partition Key | Nullable
-----------------+---------------+---------------+----------+---------------+----------
 l_orderkey      | bigint        | bigint        | 1        | 0             |
 l_partkey       | bigint        | bigint        | 2        | 0             |
 l_suppkey       | int           | int           | 3        | 0             |
 l_linenumber    | int           | int           | 4        | 0             |
 l_quantity      | decimal(12,2) | decimal(12,2) | 5        | 0             |
 l_extendedprice | decimal(12,2) | decimal(12,2) | 6        | 0             |
 l_discount      | decimal(12,2) | decimal(12,2) | 7        | 0             |
 l_tax           | decimal(12,2) | decimal(12,2) | 8        | 0             |
 l_returnflag    | char(1)       | char(1)       | 9        | 0             |
 l_linestatus    | char(1)       | char(1)       | 10       | 0             |
 l_shipdate      | date          | date          | 11       | 0             |
 l_commitdate    | date          | date          | 12       | 0             |
 l_receiptdate   | date          | date          | 13       | 0             |
 l_shipinstruct  | char(25)      | char(25)      | 14       | 0             |
 l_shipmode      | char(10)      | char(10)      | 15       | 0             |
 l_comment       | varchar(44)   | varchar(44)   | 16       | 0             |

Location: s3://redshiftbucket/kfhose2019/12/31
Input_format: org.apache.hadoop.mapred.TextInputFormat
Output_format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
Serialization_lib: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
Serde_parameters: {"field.delim":"|","serialization.format":"|"}
Parameters: {"EXTERNAL":"TRUE","numRows":"178196721475","transient_lastDdlTime":"1577771873"}
```

Meja Hive Metastore.

```
# \de emr.lineitem
                     Hive Metastore External Table "emr.lineitem"
     Column      | External Type | Redshift Type | Position | Partition Key | Nullable
-----------------+---------------+---------------+----------+---------------+----------
 l_orderkey      | bigint        | bigint        | 1        | 0             |
 l_partkey       | bigint        | bigint        | 2        | 0             |
 l_suppkey       | int           | int           | 3        | 0             |
 l_linenumber    | int           | int           | 4        | 0             |
 l_quantity      | decimal(12,2) | decimal(12,2) | 5        | 0             |
 l_extendedprice | decimal(12,2) | decimal(12,2) | 6        | 0             |
 l_discount      | decimal(12,2) | decimal(12,2) | 7        | 0             |
 l_tax           | decimal(12,2) | decimal(12,2) | 8        | 0             |
 l_returnflag    | char(1)       | char(1)       | 9        | 0             |
 l_linestatus    | char(1)       | char(1)       | 10       | 0             |
 l_commitdate    | date          | date          | 11       | 0             |
 l_receiptdate   | date          | date          | 12       | 0             |
 l_shipinstruct  | char(25)      | char(25)      | 13       | 0             |
 l_shipmode      | char(10)      | char(10)      | 14       | 0             |
 l_comment       | varchar(44)   | varchar(44)   | 15       | 0             |
 l_shipdate      | date          | date          | 16       | 1             |

Location: s3://redshiftbucket/cetas
Input_format: org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat
Output_format: org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat
Serialization_lib: org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe
Serde_parameters: {"serialization.format":"1"}
Parameters: {"EXTERNAL":"TRUE", "numRows":"4307207", "transient_lastDdlTime":"1626990007"}
```

PostgreSQL tabel eksternal.

```
# \de pgrsql.alltypes
                                Postgres Federated Table "pgrsql.alltypes"
 Column |        External Type        |        Redshift Type        | Position | Partition Key | Nullable
--------+-----------------------------+-----------------------------+----------+---------------+----------
 col1   | bigint                      | bigint                      | 1        | 0             |
 col2   | bigint                      | bigint                      | 2        | 0             |
 col5   | boolean                     | boolean                     | 3        | 0             |
 col6   | box                         | varchar(65535)              | 4        | 0             |
 col7   | bytea                       | varchar(65535)              | 5        | 0             |
 col8   | character(10)               | character(10)               | 6        | 0             |
 col9   | character varying(10)       | character varying(10)       | 7        | 0             |
 col10  | cidr                        | varchar(65535)              | 8        | 0             |
 col11  | circle                      | varchar(65535)              | 9        | 0             |
 col12  | date                        | date                        | 10       | 0             |
 col13  | double precision            | double precision            | 11       | 0             |
 col14  | inet                        | varchar(65535)              | 12       | 0             |
 col15  | integer                     | integer                     | 13       | 0             |
 col16  | interval                    | varchar(65535)              | 14       | 0             |
 col17  | json                        | varchar(65535)              | 15       | 0             |
 col18  | jsonb                       | varchar(65535)              | 16       | 0             |
 col19  | line                        | varchar(65535)              | 17       | 0             |
 col20  | lseg                        | varchar(65535)              | 18       | 0             |
 col21  | macaddr                     | varchar(65535)              | 19       | 0             |
 col22  | macaddr8                    | varchar(65535)              | 20       | 0             |
 col23  | money                       | varchar(65535)              | 21       | 0             |
 col24  | numeric                     | numeric(38,20)              | 22       | 0             |
 col25  | path                        | varchar(65535)              | 23       | 0             |
 col26  | pg_lsn                      | varchar(65535)              | 24       | 0             |
 col28  | point                       | varchar(65535)              | 25       | 0             |
 col29  | polygon                     | varchar(65535)              | 26       | 0             |
 col30  | real                        | real                        | 27       | 0             |
 col31  | smallint                    | smallint                    | 28       | 0             |
 col32  | smallint                    | smallint                    | 29       | 0             |
 col33  | integer                     | integer                     | 30       | 0             |
 col34  | text                        | varchar(65535)              | 31       | 0             |
 col35  | time without time zone      | varchar(65535)              | 32       | 0             |
 col36  | time with time zone         | varchar(65535)              | 33       | 0             |
 col37  | timestamp without time zone | timestamp without time zone | 34       | 0             |
 col38  | timestamp with time zone    | timestamp with time zone    | 35       | 0             |
 col39  | tsquery                     | varchar(65535)              | 36       | 0             |
 col40  | tsvector                    | varchar(65535)              | 37       | 0             |
 col41  | txid_snapshot               | varchar(65535)              | 38       | 0             |
 col42  | uuid                        | varchar(65535)              | 39       | 0             |
 col43  | xml                         | varchar(65535)              | 40       | 0             |
```

## \$1 df [anptw] [S\$1] [POLA]
<a name="rsql-query-tool-df"></a>

 Daftar fungsi dari berbagai jenis. Perintah`\df`, misalnya, mengembalikan daftar fungsi. Hasil mencakup properti seperti nama, tipe data yang dikembalikan, hak akses, dan metadata tambahan. Jenis fungsi dapat mencakup pemicu, prosedur tersimpan, fungsi jendela, dan jenis lainnya. Ketika Anda menambahkan `S+` ke perintah, misalnya`\dfantS+`, kolom metadata tambahan disertakan, seperti`owner`,, dan. `security` `access privileges` 

## \$1 dL [S\$1] [POLA]
<a name="rsql-query-tool-describe-dl"></a>

 Daftar data tentang bahasa prosedural yang terkait dengan database. Informasi mencakup nama, seperti plpgsql, dan metadata tambahan, yang mencakup apakah itu tepercaya, hak akses, dan deskripsi. Contoh panggilan, misalnya`\dLS+`, yang mencantumkan bahasa dan propertinya. Ketika Anda menambahkan `S+` ke perintah, kolom metadata tambahan disertakan, seperti dan. `call handler` `access privileges` 

Hasil sampel:

```
List of languages
   name    | trusted | internal language |      call handler       |                         validator                          | access privileges |          description           
-----------+---------+-------------------+-------------------------+------------------------------------------------------------+-------------------+--------------------------------
 c         | f       | t                 | -                       | fmgr_c_validator(oid)                                      |                   | Dynamically-loaded C functions
 exfunc    | f       | f                 | exfunc_call_handler()   | -                                                          | rdsdb=U/rdsdb     | 
 internal  | f       | t                 | -                       | fmgr_internal_validator(oid)                               |                   | Built-in functions
 mlfunc    | f       | f                 | mlfunc_call_handler()   | -                                                          | rdsdb=U/rdsdb     | 
 plpgsql   | t       | f                 | plpgsql_call_handler()  | plpgsql_validator(oid)                                     |                   | 
 plpythonu | f       | f                 | plpython_call_handler() | plpython_compiler(cstring,cstring,cstring,cstring,cstring) | rdsdb=U/rdsdb     | 
 sql       | t       | t                 | -                       | fmgr_sql_validator(oid)                                    | =U/rdsdb          | SQL-language functions
```

## \$1 dm [S\$1] [POLA]
<a name="rsql-query-tool-describe-dm"></a>

 Daftar tampilan terwujud. Misalnya, `\dmS+` daftar tampilan terwujud dan propertinya. Saat Anda menambahkan `S+` ke perintah, kolom metadata tambahan disertakan. 

## \$1 dn [S\$1] [POLA]
<a name="rsql-query-tool-describe-dn"></a>

 Daftar skema. Ketika Anda menambahkan `S+` ke perintah, misalnya`\dnS+`, kolom metadata tambahan disertakan, seperti dan. `description` `access privileges` 

## \$1 dp [POLA]
<a name="rsql-query-tool-describe-dp"></a>

 Daftar hak akses tabel, tampilan, dan urutan. 

## \$1 dt [S\$1] [POLA]
<a name="rsql-query-tool-describe-dt"></a>

 Daftar tabel. Ketika Anda menambahkan `S+` ke perintah, misalnya`\dtS+`, kolom metadata tambahan disertakan, seperti `description` dalam kasus ini. 

## \$1 du
<a name="rsql-query-tool-describe-du"></a>

 Daftar pengguna untuk database. Termasuk nama dan peran mereka, seperti Superuser, dan atribut. 

## \$1 dv [S\$1] [POLA]
<a name="rsql-query-tool-describe-dv"></a>

 Daftar tampilan. Termasuk skema, jenis, dan data pemilik. Ketika Anda menambahkan `S+` ke perintah, misalnya`\dvS+`, kolom metadata tambahan disertakan. 

## \$1 H
<a name="rsql-query-tool-describe-h"></a>

 Menghidupkan output HTML. Ini berguna untuk mengembalikan hasil yang diformat dengan cepat. Misalnya, `select * from sales; \H` mengembalikan hasil dari tabel penjualan, dalam HTML. Untuk beralih kembali ke hasil tablular, gunakan`\q`, atau diam. 

## \$1 saya
<a name="rsql-query-tool-describe-i"></a>

 Menjalankan perintah dari file. Misalnya, dengan asumsi Anda memiliki rsql\$1steps.sql di direktori kerja Anda, berikut ini menjalankan perintah dalam file:`\i rsql_steps.sql`. 

## \$1 l [\$1] [POLA]
<a name="rsql-query-tool-describe-l"></a>

 Daftar database. Termasuk pemilik, pengkodean, dan informasi tambahan. 

## \$1 q
<a name="rsql-query-tool-describe-q"></a>

 Keluar, atau `\q` perintah, log off sesi database dan keluar dari RSQL. 

## \$1 sv [\$1] NAMA TAMPILAN
<a name="rsql-query-tool-describe-sv-name"></a>

 Menunjukkan definisi tampilan. 

## \$1 waktu
<a name="rsql-query-tool-describe-timing"></a>

 Menunjukkan waktu berjalan, untuk kueri, misalnya. 

## \$1 z [POLA]
<a name="rsql-query-tool-describe-z"></a>

 Output yang sama dengan\$1 dp. 

## \$1?
<a name="rsql-query-tool-help"></a>

 Menampilkan informasi bantuan. Parameter opsional menentukan item untuk menjelaskan. 

## \$1 KELUAR
<a name="rsql-query-tool-flow-control-exit"></a>

 Log off semua sesi database dan keluar dari Amazon Redshift RSQL. Selain itu, Anda dapat menentukan kode keluar opsional. Misalnya, `\EXIT 15` akan keluar dari terminal Amazon Redshift RSQL dan mengembalikan kode keluar 15.

Contoh berikut menunjukkan output dari koneksi dan keluar dari RSQL.

```
% rsql -D testuser
DSN Connected
DBMS Name: Amazon Redshift
Driver Name: Amazon Redshift ODBC Driver
Driver Version: 1.4.34.1000
Rsql Version: 1.0.1
Redshift Version: 1.0.29306 
Type "help" for help.

(testcluster) user1@dev=# \exit 15

% echo $?
15
```

## \$1 EKSPOR
<a name="rsql-query-tool-export"></a>

 Menentukan nama file ekspor yang RSQL gunakan untuk menyimpan informasi database yang dikembalikan oleh pernyataan SQL SELECT berikutnya.

export\$101.sql

```
\export report file='E:\\accounts.out'
\rset rformat off
\rset width 1500
\rset heading "General Title"
\rset titledashes on
select * from td_dwh.accounts;
\export reset
```

Keluaran konsol

```
Rformat is off.
Target width is 1500.
Heading is set to: General Title
Titledashes is on.
(exported 40 rows)
```

## \$1 MASUK
<a name="rsql-query-tool-flow-control-logon"></a>

 Terhubung ke database. Anda dapat menentukan parameter koneksi menggunakan sintaks posisi atau sebagai string koneksi.

Sintaks perintah adalah sebagai berikut: `\logon {[DBNAME|- USERNAME|- HOST|- PORT|- [PASSWORD]] | conninfo}`

`DBNAME`Ini adalah nama database untuk terhubung ke. `USERNAME`Itu adalah nama pengguna untuk terhubung sebagai. `HOST`Defaultnya adalah`localhost`. `PORT`Defaultnya adalah`5439`.

Ketika nama host ditentukan dalam `\LOGON` perintah, itu menjadi nama host default untuk `\LOGON` perintah tambahan. Untuk mengubah nama host default, tentukan yang baru `HOST` dalam `\LOGON` perintah tambahan.

Contoh output dari `\LOGON` perintah untuk `user1` berikut.

```
(testcluster) user1@redshiftdb=# \logon dev
DBMS Name: Amazon Redshift
Driver Name: Amazon Redshift ODBC Driver
Driver Version: 1.4.27.1000
Rsql Version: 1.0.1
You are now connected to database "dev" as user "user1".
(testcluster) user1@dev=#
```

Output sampel untuk *pengguna2*.

```
(testcluster) user1@dev=# \logon dev user2 testcluster2.example.com
Password for user user2: 
DBMS Name: Amazon Redshift
Driver Name: Amazon Redshift ODBC Driver
Driver Version: 1.4.27.1000
Rsql Version: 1.0.1
You are now connected to database "dev" as user "user2" on host "testcluster2.example.com" at port "5439".
(testcluster2) user2@dev=#
```

## \$1 KOMENTAR
<a name="rsql-query-tool-flow-control-remark"></a>

 Perpanjangan `\echo` perintah. `\REMARK`mencetak string yang ditentukan ke aliran output. `\REMARK `meluas `\echo` dengan menambahkan kemampuan untuk memecah output melalui jalur terpisah.

Contoh berikut menunjukkan output dari perintah.

```
(testcluster) user1@dev=# \remark 'hello//world'
hello
world
```

## \$1 RSET
<a name="rsql-query-tool-rset"></a>

Perintah `\rset` menetapkan parameter perintah dan variabel. `\rset`memiliki mode interaktif dan batch. <arg>Itu tidak mendukung opsi sebagai opsi bash, seperti *-x*, atau argumen, misalnya *--*.

Ini menetapkan variabel, seperti berikut ini:
+ TINGKAT KESALAHAN
+ HEADING dan RTITLE
+ RFORMAT
+ MAXERROR
+ TITLEDASHES
+ LEBAR

Contoh berikut menentukan judul.

```
\rset heading "Winter Sales Report"
```

Untuk lebih banyak contoh cara menggunakan`\rset`, Anda dapat menemukan beberapa [Variabel Amazon Redshift RSQL](rsql-query-tool-variables.md) topik.

## \$1 LARI
<a name="rsql-query-tool-flow-control-run"></a>

 Menjalankan skrip Amazon Redshift RSQL yang terdapat dalam file yang ditentukan. `\RUN`memperluas `\i` perintah dengan menambahkan opsi untuk melewati baris header dalam file.

Jika nama file menyertakan koma, titik koma, atau spasi, lampirkan dalam tanda kutip tunggal. Selain itu, jika teks mengikuti nama file, lampirkan dalam tanda kutip. Di UNIX, nama file peka huruf besar/kecil. Di Windows, nama file tidak peka huruf besar/kecil.

Contoh berikut menunjukkan output dari perintah.

```
(testcluster) user1@dev=# \! cat test.sql
select count(*) as lineitem_cnt from lineitem;
select count(*) as customer_cnt from customer;
select count(*) as orders_cnt from orders;



(testcluster) user1@dev=# \run file=test.sql
 lineitem_cnt
--------------
      4307207
(1 row)

 customer_cnt
--------------
     37796166
(1 row)

 orders_cnt
------------
          0
(1 row)


(testcluster) user1@dev=# \run file=test.sql skip=2
2 records skipped in RUN file.
 orders_cnt
------------
          0
(1 row)
```

## \$1 OS
<a name="rsql-query-tool-flow-control-os"></a>

 Sebuah alias untuk `\!` perintah. `\OS`menjalankan perintah sistem operasi yang diteruskan sebagai parameter. Kontrol kembali ke Amazon Redshift RSQL setelah perintah dijalankan. Misalnya, Anda dapat menjalankan perintah berikut untuk mencetak waktu tanggal sistem saat ini dan kembali ke terminal RSQL:. `\os date`

```
(testcluster) user1@dev=# \os date
Tue Sep 7 20:47:54 UTC 2021
```

## \$1 GOTO
<a name="rsql-query-tool-flow-control-goto"></a>

 Perintah baru untuk Amazon Redshift RSQL. `\GOTO`melewatkan semua perintah intervensi dan melanjutkan pemrosesan pada yang ditentukan. `\LABEL` `\LABEL`Harus menjadi referensi ke depan. Anda tidak dapat melompat ke `\LABEL` yang secara leksikal mendahului. `\GOTO`

Berikut menampilkan contoh output.

```
(testcluster) user1@dev=# \! cat test.sql
select count(*) as cnt from lineitem \gset
select :cnt as cnt;
\if :cnt > 100
    \goto LABELB
\endif

\label LABELA
\remark 'this is label LABELA'
\label LABELB
\remark 'this is label LABELB'


(testcluster) user1@dev=# \i test.sql
   cnt
---------
 4307207
(1 row)

\label LABELA ignored
\label LABELB processed
this is label LABELB
```

## \$1 LABEL
<a name="rsql-query-tool-flow-control-label"></a>

 Perintah baru untuk Amazon Redshift RSQL. `\LABEL`menetapkan titik masuk untuk menjalankan program, sebagai target untuk `\GOTO` perintah.

Berikut ini menunjukkan contoh output dari perintah.

```
(testcluster) user1@dev=# \! cat test.sql
select count(*) from lineitem limit 5;
\goto LABELB
\remark "this step was skipped by goto label";
\label LABELA
\remark 'this is label LABELA'
\label LABELB
\remark 'this is label LABELB'



(testcluster) user1@dev=# \i testgoto.sql
  count
 4307193
(1 row)

\label LABELA ignored
\label LABELB processed
this is label LABELB
```

## \$1 IF (\$1 ELSEIF,\$1 ELSE,\$1 ENDIF)
<a name="rsql-query-tool-flow-control-if"></a>

 `\IF`dan perintah terkait menjalankan bagian dari skrip input secara kondisional. Perpanjangan dari perintah PSQL `\if` (`\elif`,`\else`,`\endif`). `\IF`dan `\ELSEIF` mendukung ekspresi boolean termasuk`AND`, `OR` dan `NOT` kondisi. 

Berikut ini menunjukkan contoh output dari perintah.

```
(testcluster) user1@dev=# \! cat test.sql
SELECT query FROM stv_inflight LIMIT 1 \gset
select :query as query;
\if :query > 1000000
    \remark 'Query id is greater than 1000000'
\elseif :query = 1000000
    \remark 'Query id is equal than 1000000'
\else
    \remark 'Query id is less than 1000000'
\endif


(testcluster) user1@dev=# \i test.sql 
 query
--------
 994803
(1 row)
 
Query id is less than 1000000
```

Gunakan `ERRORCODE` dalam logika percabangan Anda.

```
\if :'ERRORCODE' = '00000'
    \remark 'The statement was executed without error'
\else
    \remark :LAST_ERROR_MESSAGE
\endif
```

Gunakan `\GOTO` dalam `\IF` blok untuk mengontrol bagaimana kode dijalankan.

# Variabel Amazon Redshift RSQL
<a name="rsql-query-tool-variables"></a>

 Beberapa kata kunci bertindak sebagai variabel dalam RSQL. Anda dapat mengatur masing-masing ke nilai tertentu, atau mengatur ulang nilainya. Sebagian besar diatur dengan`\rset`, yang memiliki mode interaktif dan mode batch. Perintah dapat didefinisikan dalam huruf kecil atau huruf besar.

## JUMLAH AKTIVITAS
<a name="rsql-query-tool-activitycount"></a>

 Menunjukkan jumlah baris yang dipengaruhi oleh permintaan terakhir yang dikirimkan. Untuk permintaan pengembalian data, ini adalah jumlah baris yang dikembalikan ke RSQL dari database. Nilainya adalah 0 atau bilangan bulat positif. Nilai maksimum adalah 18.446.744.073.709.551.615. 

 Variabel `ACTIVITYCOUNT` yang diperlakukan secara khusus mirip dengan variabel`ROW_COUNT`. Namun, `ROW_COUNT` tidak melaporkan jumlah baris yang terpengaruh ke aplikasi klien pada penyelesaian perintah untuk`SELECT`, `COPY` atau`UNLOAD`. Tapi `ACTIVITYCOUNT` tidak. 

activitycount\$101.sql:

```
select viewname, schemaname
from pg_views
where schemaname = 'not_existing_schema';
\if :ACTIVITYCOUNT = 0
\remark 'views do not exist'
\endif
```

Keluaran konsol:

```
viewname | schemaname
----------+------------
(0 rows)

views do not exist
```

## TINGKAT KESALAHAN
<a name="rsql-query-tool-describe-rset-errorlevel"></a>

Menetapkan tingkat keparahan untuk kesalahan. Gunakan tingkat keparahan untuk menentukan tindakan. Jika `ERRORLEVEL` perintah belum digunakan, nilainya secara `ON` default.

errorlevel\$101.sql:

```
\rset errorlevel 42P01 severity 0

select * from tbl;

select 1 as col;

\echo exit
\quit
```

Keluaran konsol:

```
Errorlevel is on.
rsql: ERROR: relation "tbl" does not exist
(1 row)

col
1

exit
```

## HEADING dan RTITLE
<a name="rsql-query-tool-describe-rset-heading-rtitle"></a>

Memungkinkan pengguna untuk menentukan header yang muncul di bagian atas laporan. Header yang ditentukan oleh `RSET RTITLE` perintah secara otomatis menyertakan tanggal sistem saat ini dari komputer klien.

konten rset\$1heading\$1rtitle\$102.rsql:

```
\remark Starting...
\rset rtitle "Marketing Department||Confidential//Third Quarter//Chicago"
\rset width 70
\rset rformat on
select * from rsql_test.tbl_currency order by id limit 2;
\exit
\remark Finishing...
```

Keluaran konsol:

```
Starting...
Rtitle is set to: &DATE||Marketing Department||Confidential//Third Quarter//Chicago (Changes will take effect after RFORMAT is
switched ON)
Target width is 70.
Rformat is on.
09/11/20       Marketing       Department Confidential
                  Third Quarter
                     Chicago
id  | bankid  | name |      start_date
100 |       1 | USD | 2020-09-11 10:51:39.106905
110 |       1 | EUR | 2020-09-11 10:51:39.106905
(2 rows)

Press any key to continue . . .
```

## MAXERROR
<a name="rsql-query-tool-describe-rset-maxerror"></a>

Menentukan tingkat keparahan kesalahan maksimum di luar mana RSQL menghentikan pemrosesan pekerjaan. Kode pengembalian adalah nilai integer yang RSQL kembali ke sistem operasi klien setelah menyelesaikan setiap pekerjaan atau tugas. Nilai kode pengembalian menunjukkan status penyelesaian pekerjaan atau tugas. Jika skrip berisi pernyataan yang menghasilkan tingkat keparahan kesalahan lebih besar dari `maxerror` nilai yang ditentukan, RSQL segera keluar. Oleh karena itu, untuk memiliki RSQL keluar pada tingkat keparahan kesalahan 8, gunakan. `RSET MAXERROR 7`

konten maxerror\$101.sql:

```
\rset maxerror 0
                        
select 1 as col;

\quit
```

Keluaran konsol:

```
Maxerror is default.
(1 row)

col
1
```

## RFORMAT
<a name="rsql-query-tool-describe-rset-heading-rformat"></a>

Memungkinkan pengguna untuk menentukan apakah akan menerapkan pengaturan untuk perintah pemformatan.

konten rset\$1rformat.rsql:

```
\remark Starting...
\pset border 2
\pset format wrapped
\pset expanded on
\pset title 'Great Title'
select * from rsql_test.tbl_long where id = 500;
\rset rformat
select * from rsql_test.tbl_long where id = 500;
\rset rformat off
select * from rsql_test.tbl_long where id = 500;
\rset rformat on
select * from rsql_test.tbl_long where id = 500;
\exit
\remark Finishing...
```

Keluaran konsol:

```
Starting...
Border style is 2. (Changes will take effect after RFORMAT is switched ON)
Output format is wrapped. (Changes will take effect after RFORMAT is switched ON)
Expanded display is on. (Changes will take effect after RFORMAT is switched ON)
Title is "Great Title". (Changes will take effect after RFORMAT is switched ON)
id  |                                                             long_string
500 | In general, the higher the number the more borders and lines the tables will have, but details depend on the particular
format.
(1 row)

Rformat is on.
Great Title
+-[ RECORD 1 ]+----------------------------------------------------------------------------------------------------------------------
-----------+
| id           | 500
|
| long_string | In general, the higher the number the more borders and lines the tables will have, but details depend on the
particular format. |
+-------------+----------------------------------------------------------------------------------------------------------------------
-----------+

Rformat is off.
id  |                                                             long_string
500 | In general, the higher the number the more borders and lines the tables will have, but details depend on the particular format.
(1 row)

Rformat is on.
Great Title
+-[ RECORD 1 ]+----------------------------------------------------------------------------------------------------------------------
-----------+
| id           | 500
|
| long_string | In general, the higher the number the more borders and lines the tables will have, but details depend on the
particular format. |
+-------------+----------------------------------------------------------------------------------------------------------------------
-----------+
Press any key to continue . . .
```

## ROW\$1COUNT
<a name="rsql-query-tool-describe-rset-row_count"></a>

Mendapat jumlah catatan yang dipengaruhi oleh kueri sebelumnya. Ini biasanya digunakan untuk memeriksa hasil, seperti dalam fragmen kode berikut:

```
SET result = ROW_COUNT;

IF result = 0
...
```

## TITLEDASHES
<a name="rsql-query-tool-describe-rset-heading-titledashes"></a>

Kontrol ini memungkinkan pengguna untuk menentukan apakah garis karakter dasbor akan dicetak di atas data kolom yang dikembalikan untuk pernyataan SQL.

Contoh:

```
\rset titledashes on
select dept_no, emp_no, salary from rsql_test.EMPLOYEE
where dept_no = 100;
\rset titledashes off
select dept_no, emp_no, salary from rsql_test.EMPLOYEE
where dept_no = 100;
```

Keluaran konsol:

```
dept_no      emp_no          salary
----------- ----------- --------------------
100         1000346        1300.00
100         1000245        5000.00
100         1000262        2450.00

dept_no     emp_no         salary
100         1000346        1300.00
100         1000245        5000.00
100         1000262        2450.00
```

## LEBAR
<a name="rsql-query-tool-describe-rset-heading-width"></a>

Menetapkan format output untuk dibungkus dan menentukan lebar target untuk setiap baris dalam laporan. Tanpa parameter, ia mengembalikan pengaturan saat ini untuk format dan lebar target.

konten rset\$1width\$101.rsql:

```
\echo Starting...
\rset width
\rset width 50
\rset width
\quit
\echo Finishing...
```

Keluaran konsol:

```
Starting...
Target width is 75.
Target width is 50.
Target width is 50.
Press any key to continue . . .
```

Contoh dengan parameter:

```
\echo Starting...
\rset rformat on
\pset format wrapped
select * from rsql_test.tbl_long where id = 500;
\rset width 50
select * from rsql_test.tbl_long where id = 500;
\quit
\echo Finishing...
```

Keluaran konsol:

```
Starting...
Rformat is on.
Output format is wrapped.
id  |                                          long_string
500 | In general, the higher the number the more borders and lines the ta.
    |.bles will have, but details depend on the particular format.
(1 row)

Target width is 50.
id  |                                          long_string
500 | In general, the higher the number the more.
    |. borders and lines the tables will have, b.
    |.ut details depend on the particular format.
    |..
(1 row)
Press any key to continue . . .
```

# Kode kesalahan Amazon Redshift RSQL
<a name="rsql-query-tool-error-codes"></a>

Pesan sukses, peringatan, dan pengecualian:

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/rsql-query-tool-error-codes.html)

Pengecualian data:

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/rsql-query-tool-error-codes.html)

Pelanggaran kendala integritas:

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/rsql-query-tool-error-codes.html)

# Variabel lingkungan Amazon Redshift RSQL
<a name="rsql-query-tool-environment-variables"></a>

 Amazon Redshift RSQL dapat menggunakan variabel lingkungan untuk memilih nilai parameter default. 

## RSPASSWORD
<a name="rsql-query-tool-rspassword"></a>

**penting**  
Kami tidak menyarankan menggunakan variabel lingkungan ini untuk alasan keamanan, karena beberapa sistem operasi memungkinkan pengguna non-administratif untuk melihat variabel lingkungan proses.

 Menetapkan kata sandi untuk Amazon Redshift RSQL untuk digunakan saat menghubungkan ke Amazon Redshift. Variabel lingkungan ini memerlukan Amazon Redshift RSQL 1.0.4 ke atas. 

 RSQL memprioritaskan RSPASSWORD jika ada yang disetel. Jika RSPASSWORD tidak disetel dan Anda terhubung menggunakan DSN, RSQL mengambil kata sandi dari parameter file DSN. Akhirnya, jika RSPASSWORD tidak diatur dan Anda tidak menggunakan DSN, RSQL menyediakan prompt kata sandi setelah mencoba untuk terhubung. 

Berikut ini adalah contoh pengaturan RSPASSWORD:

```
export RSPASSWORD=TestPassw0rd
```

# Menggunakan profil otentikasi untuk terhubung ke Amazon Redshift
<a name="connecting-with-authentication-profiles"></a>

Jika Anda memiliki banyak koneksi ke Amazon Redshift, mungkin sulit untuk mengelola pengaturan untuk semuanya. Seringkali, setiap koneksi JDBC atau ODBC menggunakan opsi konfigurasi tertentu. Dengan menggunakan profil otentikasi, Anda dapat menyimpan opsi koneksi bersama-sama. Dengan cara ini, pengguna Anda dapat memilih profil untuk terhubung dan menghindari pengaturan pengaturan untuk opsi individual. Profil dapat diterapkan ke berbagai skenario dan jenis pengguna.

Setelah Anda membuat profil otentikasi, pengguna dapat menambahkan ready-to-use profil ke string koneksi. Dengan melakukan ini, mereka dapat terhubung ke Amazon Redshift dengan pengaturan yang tepat untuk setiap peran dan kasus penggunaan.

Untuk informasi Amazon Redshift API, lihat. [CreateAuthenticationProfile](https://docs.aws.amazon.com/redshift/latest/APIReference/redshift-api.pdf#API_CreateAuthenticationProfile) 

# Membuat profil otentikasi
<a name="connecting-with-authentication-profiles-creating"></a>

Menggunakan AWS CLI, Anda membuat profil otentikasi dengan `create-authentication-profile` perintah. Ini mengasumsikan bahwa Anda memiliki cluster Amazon Redshift yang sudah ada dan database yang ada. Kredensil Anda harus memiliki izin untuk terhubung ke database Amazon Redshift dan hak untuk mengambil profil otentikasi. Anda memberikan opsi konfigurasi sebagai string JSON, atau referensi file yang berisi string JSON Anda. 

```
create-authentication-profile --authentication-profile-name<value: String> --authentication-profile-content<value: String>
```

 Contoh berikut membuat profil yang disebut`ExampleProfileName`. Di sini, Anda dapat menambahkan kunci dan nilai yang menentukan nama cluster Anda dan pengaturan opsi lainnya, sebagai string JSON. 

```
create-authentication-profile --authentication-profile-name "ExampleProfileName" --authentication-profile-content "{\"AllowDBUserOverride\":\"1\",\"Client_ID\":\"ExampleClientID\",\"App_ID\":\"ExampleAppID\",\"AutoCreate\":false,\"enableFetchRingBuffer\":true,\"databaseMetadataCurrentDbOnly\":true}"
}
```

 Perintah ini membuat profil dengan pengaturan JSON yang ditentukan. Berikut ini dikembalikan, yang menunjukkan bahwa profil dibuat. 

 `{"AuthenticationProfileName": "ExampleProfileName", "AuthenticationProfileContent": "{\"AllowDBUserOverride\":\"1\",\"Client_ID\":\"ExampleClientID\",\"App_ID\":\"ExampleAppID\",\"AutoCreate\":false,\"enableFetchRingBuffer\":true,\"databaseMetadataCurrentDbOnly\":true}" } ` 

## Batasan dan kuota untuk membuat profil otentikasi
<a name="connecting-with-authentication-profiles-limitations"></a>

Setiap pelanggan memiliki kuota sepuluh (10) profil otentikasi.

Kesalahan tertentu dapat terjadi dengan profil otentikasi. Contohnya adalah jika Anda membuat profil baru dengan nama yang sudah ada, atau jika Anda melebihi kuota profil Anda. Untuk informasi selengkapnya, lihat [CreateAuthenticationProfile](https://docs.aws.amazon.com/redshift/latest/APIReference/redshift-api.pdf#API_CreateAuthenticationProfile). 

Anda tidak dapat menyimpan kunci dan nilai opsi tertentu untuk string koneksi JDBC, ODBC, dan Python di toko profil otentikasi: 
+ `AccessKeyID`
+ `access_key_id`
+ `SecretAccessKey`
+ `secret_access_key_id`
+ `PWD`
+ `Password`
+ `password`

Anda tidak dapat menyimpan kunci atau nilai `AuthProfile` di toko profil, untuk string koneksi JDBC atau ODBC. Untuk koneksi Python, Anda tidak dapat menyimpan. `auth_profile` 

Profil otentikasi disimpan di Amazon DynamoDB dan dikelola oleh. AWS

# Menghubungkan dengan profil otentikasi
<a name="connecting-with-authentication-profiles-using"></a>

Setelah Anda membuat profil otentikasi, Anda dapat menyertakan nama profil sebagai opsi koneksi untuk JDBC versi 2.0. `AuthProfile` Menggunakan opsi koneksi ini mengambil pengaturan yang disimpan.

```
jdbc:redshift:iam://endpoint:port/database?AuthProfile=<Profile-Name>&AccessKeyID=<Caller-Access-Key>&SecretAccessKey=<Caller-Secret-Key>
```

Berikut ini adalah contoh string URL JDBC.

```
jdbc:redshift:iam://examplecluster:us-west-2/dev?AuthProfile="ExampleProfile"&AccessKeyID="AKIAIOSFODNN7EXAMPLE"&SecretAccessKey="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
```

Tentukan `AccessKeyID` dan `SecretAccessKey` di URL JDBC, bersama dengan nama profil otentikasi.

Anda juga dapat memisahkan opsi konfigurasi dengan pembatas titik koma, seperti pada contoh berikut, yang mencakup opsi untuk logging.

```
jdbc:redshift:iam://my_redshift_end_point:5439/dev?LogLevel=6;LogPath=/tmp;AuthProfile=my_profile;AccessKeyID="AKIAIOSFODNN7EXAMPLE";SecretAccessKey="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
```

**catatan**  
 Jangan menambahkan informasi rahasia ke profil otentikasi. Misalnya, jangan menyimpan `SecretAccessKey` nilai `AccessKeyID` atau dalam profil otentikasi. Toko profil otentikasi memiliki aturan untuk melarang penyimpanan kunci rahasia. Anda mendapatkan kesalahan jika Anda mencoba menyimpan kunci dan nilai yang terkait dengan informasi sensitif. 

# Mendapatkan profil otentikasi
<a name="connecting-with-authentication-profiles-getting"></a>

Untuk membuat daftar profil otentikasi yang ada, hubungi perintah berikut.

```
describe-authentication-profiles --authentication-profile-name <value: String>
```

Contoh berikut menunjukkan dua profil diambil. Semua profil dikembalikan jika Anda tidak menentukan nama profil.

`{ "AuthenticationProfiles": [ { "AuthenticationProfileName": "testProfile1", "AuthenticationProfileContent": "{\"AllowDBUserOverride\":\"1\",\"Client_ID\":\"ExampleClientID\",\"App_ID\":\"ExampleAppID\",\"AutoCreate\":false,\"enableFetchRingBuffer\":true,\"databaseMetadataCurrentDbOnly\":true}" }, { "AuthenticationProfileName": "testProfile2", "AuthenticationProfileContent": "{\"AllowDBUserOverride\":\"1\",\"Client_ID\":\"ExampleClientID\",\"App_ID\":\"ExampleAppID\",\"AutoCreate\":false,\"enableFetchRingBuffer\":true,\"databaseMetadataCurrentDbOnly\":true}" } ] } `

# Memecahkan masalah koneksi di Amazon Redshift
<a name="troubleshooting-connections"></a>

 Jika Anda memiliki masalah dengan menghubungkan ke cluster Anda dari alat klien SQL, ada beberapa hal yang dapat Anda periksa untuk mempersempit masalah. Jika Anda menggunakan sertifikat SSL atau server, pertama-tama hapus kompleksitas ini saat Anda memecahkan masalah koneksi. Kemudian tambahkan ini kembali ketika Anda telah menemukan solusi. Untuk informasi selengkapnya, lihat [Mengkonfigurasi opsi keamanan untuk koneksi](connecting-ssl-support.md). 

Untuk informasi tentang perubahan perilaku dalam fungsionalitas Amazon Redshift yang dapat memengaruhi aplikasi Anda, lihat. [Perubahan perilaku di Amazon Redshift](behavior-changes.md)

**penting**  
Amazon Redshift telah mengubah cara sertifikat SSL dikelola. Jika Anda mengalami masalah saat menghubungkan menggunakan SSL, Anda mungkin perlu memperbarui sertifikat CA root kepercayaan Anda saat ini. Untuk informasi selengkapnya, lihat [Transisi ke sertifikat ACM untuk koneksi SSL](connecting-transitioning-to-acm-certs.md).

 Bagian berikut memiliki beberapa contoh pesan kesalahan dan kemungkinan solusi untuk masalah koneksi. Karena alat klien SQL yang berbeda menyediakan pesan kesalahan yang berbeda, ini bukan daftar lengkap, tetapi harus menjadi titik awal yang baik untuk memecahkan masalah. 

## Menghubungkan dari luar Amazon EC2 dan menghadapi masalah batas waktu firewall
<a name="connecting-firewall-guidance"></a>



 Koneksi klien Anda ke database tampak hang atau batas waktu saat menjalankan kueri panjang, seperti perintah COPY. Dalam kasus ini, Anda mungkin mengamati bahwa konsol Amazon Redshift menampilkan bahwa kueri telah selesai, tetapi alat klien itu sendiri tampaknya masih menjalankan kueri. Hasil kueri mungkin hilang atau tidak lengkap tergantung kapan koneksi berhenti. 

### Solusi yang mungkin
<a name="connecting-firewall-guidance.Solutions"></a>

Masalah ini terjadi saat Anda terhubung ke Amazon Redshift dari mesin selain instans Amazon EC2. Dalam hal ini, koneksi idle diakhiri oleh komponen jaringan perantara, seperti firewall, setelah periode tidak aktif. Perilaku ini khas ketika Anda masuk dari jaringan pribadi virtual (VPN) atau jaringan lokal Anda. 

Untuk menghindari batas waktu ini, kami merekomendasikan perubahan berikut:
+ Tingkatkan nilai sistem klien yang berhubungan dengan TCP/IP batas waktu. Buat perubahan ini di komputer yang Anda gunakan untuk terhubung ke cluster Anda. Periode batas waktu harus disesuaikan untuk klien dan jaringan Anda. Untuk informasi selengkapnya, lihat [Ubah TCP/IP pengaturan batas waktu](#connecting-firewall-guidance.change-tcpip-settings).
+ Secara opsional, atur perilaku keepalive di tingkat DSN. Untuk informasi selengkapnya, lihat [Ubah pengaturan batas waktu DSN](#connecting-firewall-guidance.change-dsn-settings).

### Ubah TCP/IP pengaturan batas waktu
<a name="connecting-firewall-guidance.change-tcpip-settings"></a>

Untuk mengubah pengaturan TCP/IP batas waktu, konfigurasikan pengaturan batas waktu sesuai dengan sistem operasi yang Anda gunakan untuk terhubung ke cluster Anda. 
+ Linux — Jika klien Anda berjalan di Linux, jalankan perintah berikut sebagai pengguna root untuk mengubah pengaturan batas waktu untuk sesi saat ini: 

  ```
  /sbin/sysctl -w net.ipv4.tcp_keepalive_time=200 net.ipv4.tcp_keepalive_intvl=200 net.ipv4.tcp_keepalive_probes=5
  ```

  Untuk mempertahankan pengaturan, membuat atau memodifikasi file `/etc/sysctl.conf` dengan nilai-nilai berikut kemudian reboot sistem Anda. 

  ```
  net.ipv4.tcp_keepalive_time=200
  net.ipv4.tcp_keepalive_intvl=200
  net.ipv4.tcp_keepalive_probes=5
  ```
+ Windows — Jika klien Anda berjalan pada Windows, edit nilai untuk pengaturan registri berikut di bawah HKEY\$1LOCAL\$1MACHINE\$1 SYSTEM\$1\$1 Services\$1 Tcpip\$1 CurrentControlSet Parameters\$1: 
  + KeepAliveTime: 30000
  + KeepAliveInterval: 1000
  + TcpMaxDataRetransmissions: 10

  Pengaturan ini menggunakan tipe data DWORD. Jika tidak ada di bawah jalur registri, Anda dapat membuat pengaturan dan menentukan nilai yang disarankan ini. Untuk informasi lebih lanjut tentang mengedit registri Windows, lihat dokumentasi Windows. 

  Setelah Anda menetapkan nilai-nilai ini, restart komputer Anda agar perubahan diterapkan. 

 
+ Mac - Jika klien Anda berjalan di Mac, jalankan perintah berikut untuk mengubah pengaturan batas waktu untuk sesi saat ini: 

  ```
  sudo sysctl net.inet.tcp.keepintvl=200000
  sudo sysctl net.inet.tcp.keepidle=200000
  sudo sysctl net.inet.tcp.keepinit=200000
  sudo sysctl net.inet.tcp.always_keepalive=1
  ```

  Untuk mempertahankan pengaturan, membuat atau memodifikasi file `/etc/sysctl.conf` dengan nilai-nilai berikut: 

  ```
  net.inet.tcp.keepidle=200000
  net.inet.tcp.keepintvl=200000
  net.inet.tcp.keepinit=200000
  net.inet.tcp.always_keepalive=1
  ```

  Nyalakan kembali komputer Anda, lalu jalankan perintah berikut untuk memverifikasi bahwa nilainya ditetapkan. 

  ```
  sysctl net.inet.tcp.keepidle
  sysctl net.inet.tcp.keepintvl
  sysctl net.inet.tcp.keepinit
  sysctl net.inet.tcp.always_keepalive
  ```

### Ubah pengaturan batas waktu DSN
<a name="connecting-firewall-guidance.change-dsn-settings"></a>

Anda dapat mengatur perilaku keepalive di tingkat DSN jika Anda mau. Anda melakukan ini dengan menambahkan atau memodifikasi parameter berikut dalam file odbc.ini: 

**KeepAlivesCount**  
Jumlah paket TCP keepalive yang dapat hilang sebelum koneksi dianggap rusak.

**KeepAlivesIdle**  
Jumlah detik tidak aktif sebelum driver mengirim paket TCP keepalive.

**KeepAlivesInterval**  
Jumlah detik antara setiap transmisi ulang TCP keepalive.

Jika parameter ini tidak ada, atau jika mereka memiliki nilai 0, sistem menggunakan parameter keepalive yang ditentukan TCP/IP untuk menentukan perilaku DSN keepalive. Di Windows, Anda dapat menemukan TCP/IP parameter di registri di`HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\`. Di Linux dan macOS, Anda dapat menemukan TCP/IP parameter dapat ditemukan di file sysctl.conf. 

## Koneksi ditolak atau gagal
<a name="connecting-refusal-failure-issues"></a>

Ketika koneksi Anda ditolak atau gagal, Anda mungkin menerima kesalahan yang mirip dengan salah satu dari berikut ini.
+ “Gagal membuat koneksi ke*<endpoint>*.”
+ “Tidak dapat terhubung ke server: Waktu koneksi habis. Apakah server berjalan pada host *'<endpoint>'* dan menerima koneksi TCP/IP pada port?” *'<port>'*
+ “Koneksi ditolak. Periksa apakah nama host dan port sudah benar dan bahwa postmaster menerima TCP/IP koneksi.”

### Solusi yang mungkin
<a name="connecting-refusal-failure-issues.Solutions"></a>

Umumnya, ketika Anda menerima pesan kesalahan yang menunjukkan bahwa ada kegagalan untuk membuat koneksi, itu adalah masalah dengan izin untuk mengakses cluster atau dengan lalu lintas jaringan yang mencapai cluster. 

Untuk terhubung ke klaster dari alat klien di luar jaringan tempat klaster berada, Anda menambahkan aturan masuk ke grup keamanan klaster. Konfigurasi aturan tergantung pada apakah cluster Amazon Redshift dibuat di cloud pribadi virtual (VPC):
+ Jika Anda membuat klaster Amazon Redshift di cloud pribadi virtual (VPC) berdasarkan Amazon VPC, tambahkan aturan masuk ke grup keamanan VPC yang menentukan alamat klien, di Amazon VPC. CIDR/IP Untuk informasi selengkapnya tentang mengonfigurasi grup keamanan VPC untuk klaster Anda dan opsi yang dapat diakses publik, lihat. [Sumber daya Redshift dalam VPC](managing-clusters-vpc.md)
+  Jika Anda membuat klaster Amazon Redshift di luar VPC, tambahkan CIDR/IP alamat klien Anda ke grup keamanan klaster di Amazon Redshift. Untuk informasi selengkapnya tentang mengonfigurasi grup keamanan klaster, lihat[Grup keamanan Amazon Redshift](security-network-isolation.md#working-with-security-groups).

Jika Anda mencoba menyambung ke klaster dari alat klien yang berjalan pada instans Amazon EC2, Anda juga menambahkan aturan masuk. Dalam hal ini, tambahkan aturan ke grup keamanan cluster. Aturan harus menentukan grup keamanan Amazon EC2 yang terkait dengan instans Amazon EC2 alat klien.

 Dalam beberapa kasus, Anda mungkin memiliki lapisan antara klien dan server Anda, seperti firewall. Dalam kasus ini, pastikan firewall menerima koneksi masuk melalui port yang Anda konfigurasikan untuk cluster Anda. 

## Klien dan driver tidak kompatibel
<a name="connecting-architecture-mismatch"></a>

 Jika klien dan driver Anda tidak kompatibel, Anda mungkin menerima kesalahan yang mengatakan, “DSN yang ditentukan berisi ketidakcocokan arsitektur antara Driver dan Aplikasi.” 

### Solusi yang mungkin
<a name="connecting-architecture-mismatch.Solutions"></a>

 Ketika Anda mencoba untuk menghubungkan dan mendapatkan kesalahan tentang ketidakcocokan arsitektur, ini berarti bahwa alat klien dan driver tidak kompatibel. Ini terjadi karena arsitektur sistem mereka tidak cocok. Misalnya, ini dapat terjadi jika Anda memiliki alat klien 32-bit tetapi telah menginstal versi 64-bit driver. Terkadang alat klien 64-bit dapat menggunakan driver 32-bit, tetapi Anda tidak dapat menggunakan aplikasi 32-bit dengan driver 64-bit. Pastikan driver dan alat klien menggunakan versi arsitektur sistem yang sama. 

## Kueri tampaknya hang dan terkadang gagal mencapai cluster
<a name="connecting-drop-issues"></a>

Anda mengalami masalah dengan penyelesaian kueri, di mana kueri tampaknya berjalan tetapi hang di alat klien SQL. Terkadang kueri gagal muncul di cluster, seperti di tabel sistem atau konsol Amazon Redshift. 

### Solusi yang mungkin
<a name="connecting-drop-issues.Solutions"></a>

 Masalah ini bisa terjadi karena packet drop. Dalam hal ini, ada perbedaan ukuran unit transmisi maksimum (MTU) di jalur jaringan antara dua host Internet Protocol (IP). Ukuran MTU menentukan ukuran maksimum, dalam byte, dari paket yang dapat ditransfer dalam satu bingkai Ethernet melalui koneksi jaringan. Pada tahun AWS, beberapa jenis instans Amazon EC2 mendukung MTU 1500 (frame Ethernet v2) dan jenis instans lainnya mendukung MTU 9001 (bingkai jumbo TCP/IP). 

 Untuk menghindari masalah yang dapat terjadi dengan perbedaan ukuran MTU, sebaiknya lakukan salah satu hal berikut: 
+ Jika klaster Anda menggunakan platform EC2-VPC, konfigurasikan grup keamanan Amazon VPC dengan aturan Internet Control Message Protocol (ICMP) kustom masuk yang muncul. `Destination Unreachable` Aturan dengan demikian menginstruksikan host asal untuk menggunakan ukuran MTU terendah di sepanjang jalur jaringan. Untuk detail tentang pendekatan ini, lihat[Mengkonfigurasi grup keamanan untuk memungkinkan ICMP “tujuan tidak dapat dijangkau”](#configure-custom-icmp). 
+ Jika cluster Anda menggunakan platform EC2-Classic, atau Anda tidak dapat mengizinkan aturan masuk ICMP, nonaktifkan bingkai TCP/IP jumbo sehingga frame Ethernet v2 digunakan. Untuk detail tentang pendekatan ini, lihat[Mengkonfigurasi MTU dari sebuah instance](#set-mtu).

### Mengkonfigurasi grup keamanan untuk memungkinkan ICMP “tujuan tidak dapat dijangkau”
<a name="configure-custom-icmp"></a>

 Ketika ada perbedaan ukuran MTU di jaringan antara dua host, pertama-tama pastikan bahwa pengaturan jaringan Anda tidak memblokir jalur penemuan MTU (PMTUD). PMTUD memungkinkan host penerima untuk menanggapi host asal dengan pesan ICMP berikut:. `Destination Unreachable: fragmentation needed and DF set (ICMP Type 3, Code 4)` Pesan ini menginstruksikan host asal untuk menggunakan ukuran MTU terendah di sepanjang jalur jaringan untuk mengirim ulang permintaan. Tanpa negosiasi ini, paket drop dapat terjadi karena permintaan terlalu besar untuk diterima oleh host penerima. Untuk informasi lebih lanjut tentang pesan ICMP ini, kunjungi situs *web Internet Engineering Task Force (IETF*). [RFC792](http://tools.ietf.org/html/rfc792) 

 Jika Anda tidak secara eksplisit mengonfigurasi aturan masuk ICMP ini untuk grup keamanan VPC Amazon Anda, PMTUD diblokir. Dalam AWS, grup keamanan adalah firewall virtual yang menentukan aturan untuk lalu lintas masuk dan keluar ke suatu instans. Untuk informasi tentang grup keamanan klaster Amazon Redshift, lihat. [Grup keamanan Amazon Redshift](security-network-isolation.md#working-with-security-groups) Untuk cluster yang menggunakan platform EC2-VPC, Amazon Redshift menggunakan grup keamanan VPC untuk mengizinkan atau menolak lalu lintas ke cluster. Secara default, grup keamanan dikunci dan menolak semua lalu lintas masuk. *Untuk informasi tentang cara menyetel aturan masuk dan keluar untuk instans EC2-Classic atau EC2-VPC, lihat Perbedaan [antara instans di EC2-Classic dan VPC di Panduan Pengguna Amazon](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-classic-platform.html#ec2_classic_platform) EC2.*

 Untuk informasi selengkapnya tentang cara menambahkan aturan ke grup keamanan VPC, lihat. [Grup keamanan VPC](managing-vpc-security-groups.md) *Untuk informasi selengkapnya tentang setelan PMTUD tertentu yang diperlukan dalam aturan ini, lihat [Penemuan Path MTU di Panduan Pengguna](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/network_mtu.html#path_mtu_discovery) Amazon EC2.* 

### Mengkonfigurasi MTU dari sebuah instance
<a name="set-mtu"></a>

Dalam beberapa kasus, klaster Anda mungkin menggunakan platform EC2-Classic atau Anda tidak dapat mengizinkan aturan ICMP khusus untuk lalu lintas masuk. Dalam kasus ini, kami menyarankan Anda menyesuaikan MTU ke 1500 pada antarmuka jaringan (NIC) dari instans EC2 yang Anda sambungkan ke cluster Amazon Redshift Anda. Penyesuaian ini menonaktifkan bingkai TCP/IP jumbo untuk memastikan bahwa koneksi secara konsisten menggunakan ukuran paket yang sama. Namun, opsi ini mengurangi throughput jaringan maksimum untuk instans sepenuhnya, tidak hanya untuk koneksi ke Amazon Redshift. Untuk informasi selengkapnya, lihat prosedur berikut ini. <a name="set-mtu-win-os"></a>

**Untuk mengatur MTU pada sistem operasi Microsoft Windows**

Jika klien Anda berjalan di sistem operasi Microsoft Windows, Anda dapat meninjau dan mengatur nilai MTU untuk adaptor Ethernet dengan menggunakan perintah. `netsh` 

1. Jalankan perintah berikut untuk menentukan nilai MTU saat ini: 

   ```
   netsh interface ipv4 show subinterfaces
   ```

1.  Tinjau `MTU` nilai `Ethernet` adaptor dalam output. 

1. Jika nilainya tidak`1500`, jalankan perintah berikut untuk mengaturnya: 

   ```
   netsh interface ipv4 set subinterface "Ethernet" mtu=1500 store=persistent
   ```

   Setelah Anda menetapkan nilai ini, restart komputer Anda agar perubahan diterapkan.<a name="set-mtu-linux-os"></a>

**Untuk mengatur MTU pada sistem operasi Linux**

 Jika klien Anda berjalan di sistem operasi Linux, Anda dapat meninjau dan mengatur nilai MTU dengan menggunakan `ip` perintah. 

1. Jalankan perintah berikut untuk menentukan nilai MTU saat ini: 

   ```
   $ ip link show eth0
   ```

1. Tinjau nilai berikut `mtu` dalam output. 

1. Jika nilainya tidak`1500`, jalankan perintah berikut untuk mengaturnya: 

   ```
   $ sudo ip link set dev eth0 mtu 1500
   ```<a name="set-mtu-mac-os"></a>

**Untuk mengatur MTU pada sistem operasi Mac**
+ Ikuti petunjuk tentang situs dukungan macOS. `How to change the MTU for troubleshooting purposes` Untuk informasi lebih lanjut, cari [situs dukungan.](https://support.apple.com) 

## Mengatur parameter ukuran pengambilan JDBC
<a name="jdbc_fetch_size"></a>

Secara default, driver Redshift JDBC menggunakan buffer ring untuk mengelola memori secara efisien dan mencegah kesalahan. out-of-memory Parameter ukuran pengambilan hanya berlaku ketika buffer cincin dinonaktifkan secara eksplisit. Untuk informasi lebih lanjut, tinjau [tautannya](https://docs.aws.amazon.com/redshift/latest/mgmt/jdbc20-configuration-options.html#jdbc20-enablefetchringbuffer-option). Dalam konfigurasi ini, Anda harus mengatur ukuran pengambilan untuk mengontrol berapa banyak baris yang diambil di setiap batch.

Gunakan parameter ukuran ambil saat:
+ Anda membutuhkan kontrol halus atas batching berbasis baris
+ Bekerja dengan aplikasi lama yang memerlukan perilaku ukuran pengambilan tradisional

Ketika buffer dering dinonaktifkan, driver JDBC mengumpulkan semua hasil untuk kueri pada satu waktu secara default. Kueri yang mengembalikan set hasil besar dapat menghabiskan memori yang berlebihan. Untuk mengambil set hasil dalam batch, bukan sekaligus, atur parameter ukuran pengambilan JDBC di aplikasi Anda.

**catatan**  
Ukuran pengambilan tidak didukung untuk ODBC.

Untuk kinerja terbaik, atur ukuran pengambilan ke nilai tertinggi yang tidak menyebabkan kesalahan memori. Nilai ukuran pengambilan yang lebih rendah menghasilkan lebih banyak perjalanan server, yang memperpanjang waktu eksekusi. Server menyimpan sumber daya, termasuk slot kueri WLM dan memori terkait, hingga klien mengambil seluruh kumpulan hasil atau kueri dibatalkan. Saat Anda menyetel ukuran pengambilan dengan tepat, sumber daya tersebut dirilis lebih cepat, membuatnya tersedia untuk kueri lain.

**catatan**  
Jika Anda perlu mengekstrak kumpulan data besar, sebaiknya gunakan pernyataan [UNLOAD](https://docs.aws.amazon.com/redshift/latest/dg/r_UNLOAD.html) untuk mentransfer data ke Amazon S3. Saat Anda menggunakan UNLOAD, node komputasi bekerja secara paralel untuk mempercepat transfer data.

Untuk informasi selengkapnya tentang pengaturan parameter ukuran pengambilan JDBC, buka [Mendapatkan hasil berdasarkan kursor dalam dokumentasi PostgreSQL](https://jdbc.postgresql.org/documentation/query/#getting-results-based-on-a-cursor).

# Menggunakan API Data Amazon Redshift
<a name="data-api"></a>

Amazon Redshift Data API menyederhanakan akses ke gudang data Amazon Redshift Anda dengan menghilangkan kebutuhan untuk mengelola driver database, koneksi, konfigurasi jaringan, buffering data, kredensi, dan banyak lagi. Anda dapat menjalankan pernyataan SQL menggunakan operasi Data API dengan AWS SDK. Untuk informasi selengkapnya tentang operasi Data API, lihat Referensi [API Data Amazon Redshift](https://docs.aws.amazon.com/redshift-data/latest/APIReference/).

Data API tidak memerlukan koneksi persisten ke database Anda. Sebaliknya, ia menyediakan titik akhir HTTP yang aman dan integrasi dengan AWS SDKs. Anda dapat menggunakan titik akhir untuk menjalankan pernyataan SQL tanpa mengelola koneksi. Panggilan ke API Data bersifat asinkron. Data API dapat menggunakan kredensil yang disimpan dalam AWS Secrets Manager atau kredenal database sementara. Anda tidak perlu meneruskan kata sandi dalam panggilan API dengan salah satu metode otorisasi. Untuk informasi lebih lanjut tentang AWS Secrets Manager, lihat [Apa itu AWS Secrets Manager?](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) dalam *AWS Secrets Manager User Guide*. Anda juga dapat menggunakan AWS IAM Identity Center untuk otorisasi.

Dengan API Data, Anda dapat mengakses data Amazon Redshift secara terprogram dengan aplikasi berbasis layanan web, AWS Lambda termasuk notebook Amazon AI, dan. SageMaker AWS Cloud9 Untuk informasi lebih lanjut tentang aplikasi ini, lihat [AWS Lambda](https://aws.amazon.com/lambda/), [Amazon SageMaker AI](https://aws.amazon.com/sagemaker/), dan [AWS Cloud9](https://aws.amazon.com/cloud9/). 

Untuk mempelajari API Data selengkapnya, lihat [Memulai API Data Amazon Redshift](https://aws.amazon.com/blogs/big-data/get-started-with-the-amazon-redshift-data-api/) di Blog *AWS Big Data*.

## Bekerja dengan Amazon Redshift Data API
<a name="data-api-workflow"></a>

Sebelum Anda menggunakan Amazon Redshift Data API, tinjau langkah-langkah berikut: 

1. Tentukan apakah Anda, sebagai pemanggil API Data, diotorisasi. Untuk informasi selengkapnya tentang otorisasi, lihat[Mengotorisasi akses ke API Data Amazon Redshift](data-api-access.md).

1. Tentukan apakah Anda berencana untuk memanggil Data API dengan kredensyal otentikasi dari Secrets Manager, kredensyal sementara, atau penggunaan. AWS IAM Identity Center Untuk informasi selengkapnya, lihat [Memilih kredensi otentikasi database saat memanggil Amazon Redshift Data API](#data-api-calling-considerations-authentication).

1. Siapkan rahasia jika Anda menggunakan Secrets Manager untuk kredensi otentikasi. Untuk informasi selengkapnya, lihat [Menyimpan kredensi database di AWS Secrets Manager](data-api-secrets.md).

1. Tinjau pertimbangan dan batasan saat memanggil Data API. Untuk informasi selengkapnya, lihat [Pertimbangan saat memanggil Amazon Redshift Data API](#data-api-calling-considerations).

1. Panggil API Data dari AWS Command Line Interface (AWS CLI), dari kode Anda sendiri, atau menggunakan editor kueri di konsol Amazon Redshift. Untuk contoh panggilan dari AWS CLI, lihat[Memanggil API Data](data-api-calling.md).

## Pertimbangan saat memanggil Amazon Redshift Data API
<a name="data-api-calling-considerations"></a>

Pertimbangkan hal berikut saat memanggil Data API:
+ Amazon Redshift Data API dapat mengakses database di klaster yang disediakan Amazon Redshift dan grup kerja Tanpa Server Redshift. Untuk daftar Wilayah AWS tempat Redshift Data API tersedia, lihat titik akhir yang tercantum untuk [Redshift](https://docs.aws.amazon.com/general/latest/gr/redshift-service.html) Data API di. *Referensi Umum Amazon Web Services* 
+ Durasi maksimum kueri adalah 24 jam. 
+ Jumlah maksimum kueri aktif (`STARTED`dan `SUBMITTED` kueri) per cluster Amazon Redshift adalah 500. 
+ Ukuran hasil kueri maksimum adalah 500 MB (setelah kompresi gzip). Jika panggilan mengembalikan lebih dari 500 MB data respons, panggilan akan berakhir. 
+ Waktu retensi maksimum untuk hasil kueri adalah 24 jam. 
+ Ukuran pernyataan kueri maksimum adalah 100 KB. 
+ Data API tersedia untuk kueri cluster single-node dan multiple-node dari tipe node berikut:
  + dc2.large
  + dc2.8xlarge
  + ra3. besar
  + ra3.xlplus
  + ra3.4xlarge
  + ra3.16xlarge
+ Cluster harus berada di cloud pribadi virtual (VPC) berdasarkan layanan Amazon VPC. 
+ Secara default, pengguna dengan peran IAM yang sama dengan pelari operasi `ExecuteStatement` atau `BatchExecuteStatement` API dapat bertindak berdasarkan pernyataan yang sama dengan`CancelStatement`,,, `DescribeStatement` `GetStatementResult``GetStatementResultV2`, dan operasi `ListStatements` API. Untuk bertindak pada pernyataan SQL yang sama dari pengguna lain, pengguna harus dapat mengambil peran IAM dari pengguna yang menjalankan pernyataan SQL. Untuk informasi selengkapnya tentang cara mengambil peran, lihat[Mengotorisasi akses ke API Data Amazon Redshift](data-api-access.md). 
+ Pernyataan SQL dalam `Sqls` parameter operasi `BatchExecuteStatement` API dijalankan sebagai satu transaksi. Mereka berjalan secara serial dalam urutan array. Pernyataan SQL berikutnya tidak dimulai sampai pernyataan sebelumnya dalam array selesai. Jika pernyataan SQL gagal, maka karena mereka dijalankan sebagai satu transaksi, semua pekerjaan digulirkan kembali.
+ Waktu retensi maksimum untuk token klien yang digunakan dalam `ExecuteStatement` atau operasi `BatchExecuteStatement` API adalah 8 jam.
+ Jika klaster yang disediakan Amazon Redshift dan grup kerja Redshift Serverless dienkripsi menggunakan kunci yang dikelola pelanggan Redshift membuat hibah yang memungkinkan Redshift Data API menggunakan kunci untuk operasinya. Untuk informasi lebih lanjut, lihat[Menggunakan AWS KMS dengan Amazon Redshift Data API](data-api-kms.md). 
+ Setiap API di Redshift Data API memiliki kuota transaksi per detik sebelum membatasi permintaan. Untuk kuota, lihat[Kuota untuk Amazon Redshift Data API](amazon-redshift-limits.md#data-api-quotas-account). Jika tingkat permintaan melebihi kuota, a `ThrottlingException` dengan Kode Status HTTP: 400 dikembalikan. Untuk merespons pelambatan, gunakan strategi coba lagi seperti yang dijelaskan dalam [Perilaku Coba lagi di Panduan Referensi](https://docs.aws.amazon.com/sdkref/latest/guide/feature-retry-behavior.html) Alat *AWS SDKs dan* Alat. Strategi ini diimplementasikan secara otomatis untuk membatasi kesalahan di beberapa. AWS SDKs
**catatan**  
Secara default di AWS Step Functions, percobaan ulang tidak diaktifkan. Jika Anda perlu memanggil Redshift Data API di mesin status Step Functions, sertakan parameter `ClientToken` idempotency dalam panggilan Redshift Data API Anda. Nilai `ClientToken` kebutuhan untuk bertahan di antara percobaan ulang. Dalam contoh cuplikan permintaan `ExecuteStatement` API berikut, ekspresi `States.ArrayGetItem(States.StringSplit($$.Execution.Id, ':'), 7)` menggunakan fungsi intrinsik untuk mengekstrak bagian UUID`$$.Execution.Id`, yang unik untuk setiap eksekusi mesin status. Untuk informasi selengkapnya, lihat [Fungsi intrinsik](https://docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-intrinsic-functions.html) di Panduan *AWS Step Functions Pengembang*.  

  ```
  {
    "Database": "dev",
    "Sql": "select 1;",
    "ClusterIdentifier": "MyCluster",
    "ClientToken.$": "States.ArrayGetItem(States.StringSplit($$.Execution.Id, ':'), 7)"
  }
  ```

## Memilih kredensi otentikasi database saat memanggil Amazon Redshift Data API
<a name="data-api-calling-considerations-authentication"></a>

Saat memanggil Data API, Anda menggunakan salah satu metode otentikasi berikut untuk beberapa operasi API. Setiap metode membutuhkan kombinasi parameter yang berbeda. 

**AWS IAM Identity Center**  
Data API dapat diakses dengan satu pengguna masuk yang terdaftar di. AWS IAM Identity Center Untuk informasi tentang langkah-langkah untuk mengatur Pusat Identitas IAM, lihat[Menggunakan Data API dengan propagasi identitas tepercaya](data-api-trusted-identity-propagation.md).

**AWS Secrets Manager**  
Dengan metode ini, berikan rahasia `secret-arn` yang disimpan di AWS Secrets Manager mana memiliki `username` dan`password`. Rahasia yang ditentukan berisi kredensil untuk terhubung ke yang `database` Anda tentukan. Ketika Anda menghubungkan ke cluster, Anda juga menyediakan nama database, Jika Anda memberikan identifier cluster (`dbClusterIdentifier`), itu harus cocok dengan identifier cluster yang disimpan dalam rahasia. Saat Anda menghubungkan ke workgroup tanpa server, Anda juga menyediakan nama database. Untuk informasi selengkapnya, lihat [Menyimpan kredensi database di AWS Secrets Manager](data-api-secrets.md).   
Dengan metode ini, Anda juga dapat memberikan `region` nilai yang menentukan di Wilayah AWS mana data Anda berada. 

**Kredensial sementara**  
Dengan metode ini, pilih salah satu opsi berikut:  
+ Saat menghubungkan ke workgroup tanpa server, tentukan nama workgroup dan nama database. Nama pengguna database berasal dari identitas IAM. Misalnya, `arn:iam::123456789012:user:foo` memiliki nama pengguna database`IAM:foo`. Juga, izin untuk memanggil `redshift-serverless:GetCredentials` operasi diperlukan.
+ Saat menghubungkan ke cluster sebagai identitas IAM, tentukan pengidentifikasi cluster dan nama database. Nama pengguna database berasal dari identitas IAM. Misalnya, `arn:iam::123456789012:user:foo` memiliki nama pengguna database`IAM:foo`. Juga, izin untuk memanggil `redshift:GetClusterCredentialsWithIAM` operasi diperlukan.
+ Saat menghubungkan ke cluster sebagai pengguna database, tentukan pengidentifikasi cluster, nama database, dan nama pengguna database. Juga, izin untuk memanggil `redshift:GetClusterCredentials` operasi diperlukan. Untuk informasi tentang cara bergabung dengan grup database saat menghubungkan dengan metode ini, lihat[Bergabung dengan grup basis data saat menghubungkan ke klaster](data-api-dbgroups.md).
Dengan metode ini, Anda juga dapat memberikan `region` nilai yang menentukan di Wilayah AWS mana data Anda berada. 

## Memetakan tipe data JDBC saat memanggil Amazon Redshift Data API
<a name="data-api-calling-considerations-jdbc"></a>

 Tabel berikut memetakan tipe data Java Database Connectivity (JDBC) ke jenis data yang Anda tentukan dalam panggilan API Data.


****  

|  Jenis data JDBC  |  Jenis data API Data  | 
| --- | --- | 
|  `INTEGER, SMALLINT, BIGINT`  |  `LONG`  | 
|  `FLOAT, REAL, DOUBLE`  |  `DOUBLE`  | 
|  `DECIMAL`  |  `STRING`  | 
|  `BOOLEAN, BIT`  |  `BOOLEAN`  | 
|  `BLOB, BINARY, LONGVARBINARY`  |  `BLOB`  | 
|  `VARBINARY`  |  `STRING`  | 
|  `CLOB`  |  `STRING`  | 
|  Jenis lainnya (termasuk jenis yang terkait dengan tanggal dan waktu)  |  `STRING`  | 

Nilai string diteruskan ke database Amazon Redshift dan secara implisit diubah menjadi tipe data database.

**catatan**  
Saat ini, Data API tidak mendukung array pengidentifikasi unik universal ()UUIDs.

## Menjalankan pernyataan SQL dengan parameter saat memanggil Amazon Redshift Data API
<a name="data-api-calling-considerations-parameters"></a>

Anda dapat mengontrol teks SQL yang dikirimkan ke mesin database dengan memanggil operasi Data API menggunakan parameter untuk bagian dari pernyataan SQL. Parameter bernama menyediakan cara yang fleksibel untuk meneruskan parameter tanpa hardcoding mereka dalam teks SQL. Mereka membantu Anda menggunakan kembali teks SQL dan menghindari masalah injeksi SQL.

Contoh berikut menunjukkan parameter bernama dari `parameters` bidang `execute-statement` AWS CLI perintah.

```
--parameters "[{\"name\": \"id\", \"value\": \"1\"},{\"name\": \"address\", \"value\": \"Seattle\"}]"
```

Pertimbangkan hal berikut saat menggunakan parameter bernama:
+ Parameter bernama hanya dapat digunakan untuk mengganti nilai dalam pernyataan SQL.
  + Anda dapat mengganti nilai dalam pernyataan INSERT, seperti`INSERT INTO mytable VALUES(:val1)`.

    Parameter bernama dapat dalam urutan apa pun dan parameter dapat digunakan lebih dari satu kali dalam teks SQL. Opsi parameter yang ditunjukkan dalam contoh sebelumnya, nilai-nilai `1` dan `Seattle` dimasukkan ke dalam kolom tabel `id` dan`address`. Dalam teks SQL, Anda menentukan parameter bernama sebagai berikut:

    ```
    --sql "insert into mytable values (:id, :address)"
    ```
  + Anda dapat mengganti nilai dalam klausa kondisi, seperti`WHERE attr >= :val1`,`WHERE attr BETWEEN :val1 AND :val2`, dan`HAVING COUNT(attr) > :val`.
  + Anda tidak dapat mengganti nama kolom dalam pernyataan SQL, seperti`SELECT column-name`,`ORDER BY column-name`, atau`GROUP BY column-name`.

    Misalnya, pernyataan SELECT berikut gagal dengan sintaks yang tidak valid.

    ```
    --sql "SELECT :colname, FROM event" --parameters "[{\"name\": \"colname\", \"value\": \"eventname\"}]"
    ```

    Jika Anda menjelaskan (`describe-statement`operasi) pernyataan dengan kesalahan sintaks, yang `QueryString` dikembalikan tidak menggantikan nama kolom untuk parameter (`"QueryString": "SELECT :colname, FROM event"`), dan kesalahan dilaporkan (ERROR: kesalahan sintaks di atau dekat\$1 "FROM\$1”\$1nPosisi: 12).
  + Anda tidak dapat mengganti nama kolom dalam fungsi agregat, seperti`COUNT(column-name)`,`AVG(column-name)`, atau`SUM(column-name)`.
  + Anda tidak dapat mengganti nama kolom dalam klausa JOIN.
+ Ketika SQL berjalan, data secara implisit dilemparkan ke tipe data. Untuk informasi selengkapnya tentang casting tipe data, lihat Tipe [data](https://docs.aws.amazon.com/redshift/latest/dg/c_Supported_data_types.html) di Panduan *Pengembang Database Amazon Redshift*. 
+ Anda tidak dapat menetapkan nilai ke NULL. Data API menafsirkannya sebagai string `NULL` literal. Contoh berikut menggantikan `id` dengan string `null` literal. Bukan nilai SQL NULL. 

  ```
  --parameters "[{\"name\": \"id\", \"value\": \"null\"}]"
  ```
+ Anda tidak dapat menetapkan nilai panjang nol. Pernyataan Data API SQL gagal. Contoh berikut mencoba untuk mengatur `id` dengan nilai panjang nol dan menghasilkan kegagalan pernyataan SQL. 

  ```
  --parameters "[{\"name\": \"id\", \"value\": \"\"}]"
  ```
+ Anda tidak dapat mengatur nama tabel dalam pernyataan SQL dengan parameter. Data API mengikuti aturan JDBC`PreparedStatement`. 
+ Output dari `describe-statement` operasi mengembalikan parameter query dari pernyataan SQL.
+ Hanya `execute-statement` operasi yang mendukung pernyataan SQL dengan parameter.

## Menjalankan pernyataan SQL dengan token idempotensi saat memanggil Amazon Redshift Data API
<a name="data-api-calling-considerations-idempotency"></a>

Saat Anda membuat permintaan API yang bermutasi, permintaan biasanya menampilkan hasil sebelum alur kerja asinkron operasi selesai. Operasi mungkin juga habis atau mengalami masalah server lain sebelum selesai, meskipun permintaan telah mengembalikan hasilnya. Hal ini dapat membuat sulit untuk menentukan apakah permintaan berhasil atau tidak, dan dapat menyebabkan beberapa percobaan ulang untuk memastikan bahwa operasi selesai dengan sukses. Namun, jika permintaan asli dan percobaan ulang berikutnya berhasil, operasi selesai beberapa kali. Ini berarti Anda dapat memperbarui lebih banyak sumber daya daripada yang Anda inginkan.

*Idempotency* memastikan bahwa permintaan API selesai tidak lebih dari satu kali. Dengan permintaan idempoten, jika permintaan asli berhasil diselesaikan, percobaan ulang berikutnya berhasil diselesaikan tanpa melakukan tindakan lebih lanjut. Data API `ExecuteStatement` dan `BatchExecuteStatement` operasi memiliki parameter `ClientToken` idempoten opsional. `ClientToken`Kedaluwarsa setelah 8 jam.

**penting**  
Jika Anda memanggil `ExecuteStatement` dan `BatchExecuteStatement` mengoperasikannya dari AWS SDK, secara otomatis akan menghasilkan token klien untuk digunakan saat mencoba lagi. Dalam hal ini, kami tidak menyarankan menggunakan `client-token` parameter dengan `ExecuteStatement` dan `BatchExecuteStatement` operasi. Lihat CloudTrail log untuk melihat`ClientToken`. Untuk contoh CloudTrail log, lihat[Contoh API Data Amazon Redshift](logging-with-cloudtrail.md#data-api-cloudtrail).

`execute-statement` AWS CLI Perintah berikut menggambarkan `client-token` parameter opsional untuk idempotensi.

```
aws redshift-data execute-statement 
    --secret-arn arn:aws:secretsmanager:us-west-2:123456789012:secret:myuser-secret-hKgPWn 
    --cluster-identifier mycluster-test 
    --sql "select * from stl_query limit 1" 
    --database dev 
    --client-token b855dced-259b-444c-bc7b-d3e8e33f94g1
```

Tabel berikut menunjukkan beberapa tanggapan umum yang mungkin Anda dapatkan untuk permintaan API idempoten, dan memberikan rekomendasi coba ulang.


| Respons | Rekomendasi | Komentar | 
| --- | --- | --- | 
|  200 (OK)  |  Jangan coba lagi  |  Permintaan asli berhasil diselesaikan. Setiap percobaan ulang berikutnya berhasil kembali.  | 
|  Kode respons 400 seri   |  Jangan coba lagi  |  Ada masalah dengan permintaan, dari antara yang berikut:  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/mgmt/data-api.html) Jika permintaan melibatkan sumber daya yang sedang dalam proses mengubah status, mencoba kembali permintaan mungkin berhasil.  | 
|  Kode respons 500 seri   |  Coba lagi  |  Kesalahan ini disebabkan oleh masalah AWS sisi server dan umumnya bersifat sementara. Ulangi permintaan dengan strategi backoff yang sesuai.  | 

Untuk informasi tentang kode respons Amazon Redshift, lihat [Kesalahan Umum](https://docs.aws.amazon.com/redshift/latest/APIReference/CommonErrors.html) di Referensi API *Amazon Redshift*.

## Menjalankan pernyataan SQL dengan penggunaan kembali sesi saat memanggil Amazon Redshift Data API
<a name="data-api-calling-considerations-session-reuse"></a>

Ketika Anda membuat permintaan API untuk menjalankan pernyataan SQL, sesi di mana SQL berjalan biasanya dihentikan ketika SQL selesai. Untuk menjaga sesi tetap aktif selama beberapa detik tertentu, API Data `ExecuteStatement` dan `BatchExecuteStatement` operasi memiliki `SessionKeepAliveSeconds` parameter opsional. Bidang `SessionId` respons berisi identitas sesi yang kemudian dapat digunakan dalam `BatchExecuteStatement` operasi berikutnya`ExecuteStatement`. Dalam panggilan berikutnya Anda dapat menentukan yang lain `SessionKeepAliveSeconds` untuk mengubah waktu batas waktu idle. Jika `SessionKeepAliveSeconds` tidak diubah, pengaturan batas waktu idle awal tetap ada. Pertimbangkan hal berikut saat menggunakan penggunaan kembali sesi:
+ Nilai maksimum `SessionKeepAliveSeconds` adalah 24 jam.
+ Sesi ini dapat berlangsung paling lama 24 jam. Setelah 24 jam sesi ditutup secara paksa dan kueri yang sedang berlangsung dihentikan.
+ Jumlah maksimum sesi per cluster Amazon Redshift atau grup kerja Redshift Serverless adalah 500.
+ Anda hanya dapat menjalankan satu kueri pada satu waktu dalam satu sesi. Anda harus menunggu sampai kueri selesai untuk menjalankan kueri berikutnya di sesi yang sama. Artinya, Anda tidak dapat menjalankan kueri secara paralel dalam sesi yang disediakan.
+ Data API tidak dapat mengantri kueri untuk sesi tertentu.

Untuk mengambil `SessionId` yang digunakan oleh panggilan ke `ExecuteStatement` dan `BatchExecuteStatement` operasi, panggilan `DescribeStatement` dan `ListStatements` operasi.

Contoh berikut menunjukkan penggunaan `SessionKeepAliveSeconds` dan `SessionId` parameter untuk menjaga sesi tetap hidup dan digunakan kembali. Pertama, panggil `execute-statement` AWS CLI perintah dengan `session-keep-alive-seconds` parameter opsional diatur ke`2`.

```
aws redshift-data execute-statement 
    --session-keep-alive-seconds 2 
    --sql "select 1" 
    --database dev 
    --workgroup-name mywg
```

Respons berisi pengenal sesi.

```
{
    "WorkgroupName": "mywg",
    "CreatedAt": 1703022996.436,
    "Database": "dev",
    "DbUser": "awsuser",
    "Id": "07c5ffea-76d6-4786-b62c-4fe3ef529680",
    "SessionId": "5a254dc6-4fc2-4203-87a8-551155432ee4"
}
```

Kemudian, panggil `execute-statement` AWS CLI perintah dengan yang `SessionId` dikembalikan dari panggilan pertama. Dan secara opsional, tentukan `session-keep-alive-seconds` parameter yang disetel `10` untuk mengubah nilai batas waktu idle.

```
aws redshift-data execute-statement 
    --sql "select 1" 
    --session-id 5a254dc6-4fc2-4203-87a8-551155432ee4
    --session-keep-alive-seconds 10
```

## Mengambil hasil pernyataan SQL
<a name="data-api-calling-considerations-result-format"></a>

Anda menggunakan operasi Data API yang berbeda untuk mengambil hasil SQL tergantung pada format hasil. Saat Anda memanggil `ExecuteStatement` dan `BatchExecuteStatement` operasi, Anda dapat menentukan apakah hasilnya diformat sebagai JSON atau CSV. Jika Anda tidak menentukan, defaultnya adalah JSON. Untuk mengambil hasil JSON, gunakan operasi. `GetStatementResult` Untuk mengambil hasil CSV, gunakan operasi. `GetStatementResultV2`

Hasil yang dikembalikan dalam format JSON adalah catatan yang menyertakan metadata tentang setiap kolom. Setiap rekaman dalam format JSON. Misalnya, respons dari `GetStatementResult` terlihat mirip dengan ini:

```
{
   "ColumnMetadata": [ 
      { 
         "isCaseSensitive": false,
         "isCurrency": false,
         "isSigned": true,
         "label": "?column?",
         "name": "?column?",
         "nullable": 1,
         "precision": 10,
         "scale": 0,
         "schemaName": "",
         "tableName": "",
         "typeName": "int4",
         "length": 0
      }
   ],
   "NextToken": "<token>",
   "Records": [
        [
            {
                "longValue": 1
            }
        ]
    ],
   "TotalNumRows": <number>
}
```

Hasil yang dikembalikan dalam format CSV adalah catatan yang menyertakan metadata tentang setiap kolom. Hasil dikembalikan dalam potongan 1 MB, di mana setiap potongan dapat menyimpan sejumlah baris dalam format CSV. Setiap permintaan mengembalikan hasil hingga 15 MB. Jika hasilnya lebih besar dari 15 MB, maka token halaman berikutnya dikembalikan untuk melanjutkan pengambilan hasilnya. Misalnya, respons dari `GetStatementResultV2` terlihat mirip dengan ini:

```
{
    "ColumnMetadata": [
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "?column?",
            "name": "?column?",
            "nullable": 1,
            "precision": 10,
            "scale": 0,
            "schemaName": "",
            "tableName": "",
            "typeName": "int4",
            "length": 0
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "?column?",
            "name": "?column?",
            "nullable": 1,
            "precision": 10,
            "scale": 0,
            "schemaName": "",
            "tableName": "",
            "typeName": "int4",
            "length": 0
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "?column?",
            "name": "?column?",
            "nullable": 1,
            "precision": 10,
            "scale": 0,
            "schemaName": "",
            "tableName": "",
            "typeName": "int4",
            "length": 0
        }
    ],
    "NextToken": "<token>",
    "Records": [
        [
            {
                "CSVRecords":"1,2,3\r\n4,5,6\r\n7,8,9\rn, .... 1MB" // First 1MB Chunk
            },
            {
                "CSVRecords":"1025,1026,1027\r\n1028,1029,1030\r\n....2MB" // Second 1MB chunk
            }
            ...
        ]
    ],
    "ResultFormat" : "CSV",
    "TotalNumRows": <number>
}
```

# Mengotorisasi akses ke API Data Amazon Redshift
<a name="data-api-access"></a>

Untuk mengakses Data API, pengguna harus diberi wewenang. Anda dapat mengotorisasi pengguna untuk mengakses Data API dengan menambahkan kebijakan terkelola, yang merupakan kebijakan standar AWS Identity and Access Management (IAM), ke pengguna tersebut. Sebagai praktik terbaik, kami merekomendasikan untuk melampirkan kebijakan izin ke peran IAM dan kemudian menetapkannya ke pengguna dan grup sesuai kebutuhan. Untuk informasi selengkapnya, lihat [Identitas dan manajemen akses di Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/redshift-iam-authentication-access-control.html). Untuk melihat izin yang diizinkan dan ditolak oleh kebijakan terkelola, lihat konsol IAM () [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/). 

# Mengonfigurasi izin IAM
<a name="data-api-iam"></a>

Amazon Redshift menyediakan kebijakan `AmazonRedshiftDataFullAccess` terkelola. Kebijakan ini menyediakan akses penuh ke operasi Amazon Redshift Data API. Kebijakan ini juga memungkinkan akses tercakup ke Amazon Redshift tertentu AWS Secrets Manager,, dan operasi IAM API yang diperlukan untuk mengautentikasi dan mengakses klaster Amazon Redshift atau grup kerja Tanpa Server Redshift. 

Anda juga dapat membuat kebijakan IAM Anda sendiri yang memungkinkan akses ke sumber daya tertentu. Untuk membuat kebijakan Anda, gunakan `AmazonRedshiftDataFullAccess` kebijakan sebagai templat awal Anda. Setelah membuat kebijakan, tambahkan ke setiap pengguna yang memerlukan akses ke API Data.

Pertimbangkan persyaratan berikut dari kebijakan IAM yang terkait dengan pengguna:
+ Jika Anda menggunakan AWS Secrets Manager untuk mengautentikasi, konfirmasikan kebijakan mengizinkan penggunaan `secretsmanager:GetSecretValue` tindakan untuk mengambil rahasia yang ditandai dengan kunci. `RedshiftDataFullAccess`
+ Jika Anda menggunakan kredensi sementara untuk mengautentikasi ke kluster, konfirmasikan kebijakan tersebut mengizinkan penggunaan `redshift:GetClusterCredentials` tindakan ke nama pengguna database `redshift_data_api_user` untuk database apa pun di klaster. Nama pengguna ini harus sudah dibuat di database Anda.
+ Jika Anda menggunakan kredensi sementara untuk mengautentikasi ke grup kerja tanpa server, konfirmasikan kebijakan tersebut mengizinkan penggunaan `redshift-serverless:GetCredentials` tindakan untuk mengambil grup kerja yang diberi tag dengan kunci tersebut. `RedshiftDataFullAccess` Pengguna database dipetakan 1:1 ke identitas sumber AWS Identity and Access Management (IAM). Misalnya, pengguna sample\$1user dipetakan ke pengguna database`IAM:sample_user`, dan peran IAM sample\$1role dipetakan ke. `IAMR:sample_role` Untuk informasi selengkapnya tentang identitas IAM, lihat [Identitas IAM (pengguna, grup pengguna, dan peran)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html) di Panduan Pengguna IAM.
+ Tindakan IAM `redshift-data:GetStatementResult` memungkinkan akses ke operasi keduanya `GetStatementResult` dan `GetStatementResultV2` API.

Tautan berikut memberikan informasi lebih lanjut tentang AWS Identity and Access Management *Panduan Pengguna IAM*.
+ Untuk informasi tentang membuat peran IAM, lihat [Membuat peran IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create.html). 
+ Untuk informasi tentang membuat kebijakan IAM, lihat [Membuat kebijakan IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html).
+ Untuk informasi tentang menambahkan kebijakan IAM ke pengguna, lihat [Menambahkan dan menghapus izin identitas IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html). 

## Jalankan kueri pada klaster yang dimiliki oleh akun lain
<a name="data-api-run-query-on-others-cluster"></a>

Untuk menjalankan kueri pada klaster yang dimiliki oleh akun lain, akun pemilik harus menyediakan peran IAM yang dapat diasumsikan oleh API Data di akun panggilan. Misalnya, Akun B memiliki klaster yang perlu diakses oleh Akun A. Akun B dapat melampirkan kebijakan AWS terkelola `AmazonRedshiftDataFullAccess` ke peran IAM Akun B. Kemudian Akun B mempercayai Akun A menggunakan kebijakan kepercayaan seperti berikut: ``

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::111122223333:role/someRoleA"
                ]
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

------

Terakhir, peran IAM Akun A harus dapat mengambil peran Akun B IAM.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": "sts:AssumeRole",
        "Resource": "arn:aws:iam::111122223333:role/someRoleB"
    }
}
```

------

## Tentukan peran IAM yang membatasi sumber daya ke grup kerja Redshift Tanpa Server dan kluster Amazon Redshift di Akun AWS
<a name="data-api-restrict-to-account"></a>

Anda dapat menentukan sumber daya ARNs dalam kebijakan berbasis identitas untuk mengontrol akses ke grup kerja Redshift Tanpa Server dan klaster Amazon Redshift di file. Akun AWS Contoh ini menunjukkan cara Anda membuat kebijakan yang mengizinkan akses ke Data API hanya untuk workgroup dan cluster dalam yang ditentukan. Akun AWS

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "redshift-data:CancelStatement",
                "redshift-data:DescribeStatement",
                "redshift-data:GetStatementResult",
                "redshift-data:ListStatements"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "redshift-data:*",
            "Resource": [
                "arn:aws:redshift:us-east-1:111122223333:workgroup/*",
                "arn:aws:redshift:us-east-1:111122223333:cluster:*"
            ]
        }
    ]
}
```

------

## Mengkonfigurasi kebijakan IAM yang membatasi akses ke informasi pernyataan SQL hanya untuk pemilik pernyataan
<a name="data-api-restrict-to-statement-owner"></a>

Secara default, Amazon Redshift Data API memperlakukan peran IAM yang digunakan saat memanggil `ExecuteStatement` dan `BatchExecuteStatement` sebagai pemilik pernyataan SQL. Siapa pun yang diizinkan untuk mengambil peran dapat mengakses informasi tentang pernyataan SQL, termasuk hasilnya. Untuk membatasi akses informasi pernyataan SQL ke sesi peran IAM dengan pemilik tertentu, tambahkan kondisi. `redshift-data:statement-owner-iam-userid: "${aws:userid}"` Kebijakan IAM berikut membatasi akses.

------
#### [ JSON ]

****  

```
{
"Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "redshift-data:CancelStatement",
                "redshift-data:DescribeStatement",
                "redshift-data:GetStatementResult",
                "redshift-data:ListStatements"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "redshift-data:statement-owner-iam-userid": "${aws:userid}"
                }
            }
        }
    ]
}
```

------

Anda dapat menggunakan kondisi `statement-owner-iam-userid` dengan`CancelStatement`,`DescribeStatement`,`GetStatementResult`, dan`ListStatements`. Untuk informasi selengkapnya, lihat [Tindakan yang ditentukan oleh Amazon Redshift Data API](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonredshiftdataapi.html#amazonredshiftdataapi-redshift-data_statement-owner-iam-userid).

## Konfigurasikan kebijakan IAM yang membatasi akses ke hasil SQL hanya untuk pemilik sesi
<a name="data-api-restrict-session-owner"></a>

Secara default, Amazon Redshift Data API memperlakukan peran IAM yang digunakan saat memanggil `ExecuteStatement` dan `BatchExecuteStatement` sebagai pemilik sesi database yang menjalankan pernyataan SQL. Siapa pun yang diizinkan untuk mengambil peran dapat mengirimkan kueri ke sesi database. Untuk membatasi akses sesi ke sesi peran IAM dengan pemilik tertentu, tambahkan kondisi. ` redshift-data:session-owner-iam-userid: "${aws:userid}"` Kebijakan IAM berikut membatasi akses.

Kebijakan IAM berikut hanya memungkinkan pemilik sesi untuk mendapatkan hasil pernyataan. Kondisi `session-owner-iam-userid` ini digunakan untuk membatasi akses sumber daya ke yang ditentukan`userid`.

------
#### [ JSON ]

****  

```
{
"Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [ 
                "redshift-data:ExecuteStatement",
                "redshift-data:BatchExecuteStatement"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "redshift-data:session-owner-iam-userid": "${aws:userid}"
                }
            }
        }
    ]
}
```

------

Anda dapat menggunakan kondisi `session-owner-iam-userid` dengan `ExecuteStatement` dan`BatchExecuteStatement`. Untuk informasi selengkapnya, lihat [Tindakan yang ditentukan oleh Amazon Redshift Data API](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonredshiftdataapi.html#amazonredshiftdataapi-redshift-data_statement-owner-iam-userid).

# Menyimpan kredensi database di AWS Secrets Manager
<a name="data-api-secrets"></a>

Saat memanggil Data API, Anda dapat meneruskan kredensyal untuk klaster atau grup kerja tanpa server dengan menggunakan secret in. AWS Secrets Manager Untuk memberikan kredensial dengan cara ini, Anda menentukan nama rahasia atau Amazon Resource Name (ARN) rahasia tersebut. 

Untuk menyimpan kredensil dengan Secrets Manager, Anda memerlukan izin kebijakan `SecretManagerReadWrite` terkelola. Untuk informasi selengkapnya tentang izin minimum, lihat [Membuat dan Mengelola Rahasia dengan AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/managing-secrets.html) di *Panduan AWS Secrets Manager Pengguna*. 

**Untuk menyimpan kredensil Anda secara rahasia untuk cluster Amazon Redshift**

1. Gunakan AWS Secrets Manager konsol untuk membuat rahasia yang berisi kredensil untuk klaster Anda:
   + Saat Anda memilih **Simpan rahasia baru**, pilih **Credentials for Redshift cluster**. 
   + Simpan nilai Anda untuk **nama Pengguna** (pengguna basis data), **Kata Sandi**, dan **cluster DB** (pengidentifikasi cluster) dalam rahasia Anda. 
   + Tandai rahasia dengan kuncinya`RedshiftDataFullAccess`. Kebijakan AWS terkelola `AmazonRedshiftDataFullAccess` hanya mengizinkan tindakan `secretsmanager:GetSecretValue` untuk rahasia yang ditandai dengan kunci`RedshiftDataFullAccess`. 

   Untuk instruksi, lihat [Membuat Rahasia Basic](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html) di *Panduan Pengguna AWS Secrets Manager *.

1. Gunakan AWS Secrets Manager konsol untuk melihat detail rahasia yang Anda buat, atau jalankan `aws secretsmanager describe-secret` AWS CLI perintah.

   Catat nama dan ARN rahasia. Anda dapat menggunakan ini dalam panggilan ke Data API.

**Untuk menyimpan kredensil Anda secara rahasia untuk grup kerja tanpa server**

1. Gunakan AWS Secrets Manager AWS CLI perintah untuk menyimpan rahasia yang berisi kredensil untuk workgroup tanpa server Anda:
   + Buat rahasia Anda dalam sebuah file, misalnya file JSON bernama`mycreds.json`. Berikan nilai untuk **nama Pengguna** (pengguna database) dan **Kata Sandi** dalam file.

     ```
     {
           "username": "myusername",
           "password": "mypassword"
     }
     ```
   + Simpan nilai-nilai Anda dalam rahasia Anda dan tandai rahasia dengan kuncinya`RedshiftDataFullAccess`.

     ```
     aws secretsmanager create-secret --name MyRedshiftSecret  --tags Key="RedshiftDataFullAccess",Value="serverless" --secret-string file://mycreds.json
     ```

     Berikut ini menunjukkan output.

     ```
     {
         "ARN": "arn:aws:secretsmanager:region:accountId:secret:MyRedshiftSecret-mvLHxf",
         "Name": "MyRedshiftSecret",
         "VersionId": "a1603925-e8ea-4739-9ae9-e509eEXAMPLE"
     }
     ```

   Untuk informasi selengkapnya, lihat [Membuat Rahasia Dasar dengan AWS CLI](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html#proc-create-api) di *Panduan AWS Secrets Manager Pengguna*.

1. Gunakan AWS Secrets Manager konsol untuk melihat detail rahasia yang Anda buat, atau jalankan `aws secretsmanager describe-secret` AWS CLI perintah.

   Catat nama dan ARN rahasia. Anda dapat menggunakan ini dalam panggilan ke Data API.

# Membuat endpoint (AWS PrivateLink) Amazon VPC untuk API Data
<a name="data-api-vpc-endpoint"></a>

Amazon Virtual Private Cloud (Amazon VPC) memungkinkan Anda meluncurkan AWS sumber daya, seperti kluster dan aplikasi Amazon Redshift, ke cloud pribadi virtual (VPC). AWS PrivateLink menyediakan konektivitas pribadi antara virtual private cloud (VPCs) dan AWS layanan dengan aman di jaringan Amazon. Dengan menggunakan AWS PrivateLink, Anda dapat membuat titik akhir VPC, yang dapat Anda gunakan sambungkan ke layanan di berbagai akun dan VPCs berdasarkan Amazon VPC. Untuk informasi selengkapnya AWS PrivateLink, lihat [Layanan Titik Akhir VPC (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/userguide/endpoint-service.html) di Panduan Pengguna *Amazon Virtual Private Cloud*.

Anda dapat memanggil titik akhir API Data dengan titik akhir Amazon VPC. Dengan menggunakan titik akhir Amazon VPC, Anda akan menjaga lalu lintas antara aplikasi di Amazon VPC Anda dan API Data di jaringan AWS , tanpa menggunakan alamat IP publik. Titik akhir Amazon VPC dapat membantu Anda memenuhi persyaratan kepatuhan dan peraturan yang berkaitan dengan membatasi konektivitas internet publik. Misalnya, jika Anda menggunakan titik akhir Amazon VPC, Anda dapat mempertahankan lalu lintas antara aplikasi yang berjalan pada instans Amazon EC2 dan API Data di VPCs yang memuatnya.

Setelah membuat titik akhir Amazon VPC, Anda dapat mulai menggunakannya tanpa membuat kode atau perubahan konfigurasi apa pun di aplikasi Anda.

**Membuat titik akhir Amazon VPC untuk API Data**

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

1. Pilih **Titik Akhir**, lalu pilih **Buat Titik Akhir**.

1. Di halaman **Buat Titik Akhir**, untuk **Kategori layanan**, pilih **Layanan AWS **. Untuk **Nama Layanan**, pilih **redshift-data ()**. `com.amazonaws.region.redshift-data`

1. Untuk **VPC**, pilih VPC tempat membuat titik akhir.

   Pilih VPC yang berisi aplikasi yang membuat panggilan API Data.

1. Untuk **Subnet**, pilih subnet untuk setiap Availability Zone (AZ) yang digunakan oleh AWS layanan yang menjalankan aplikasi Anda.

   Untuk membuat titik akhir VPC Amazon, tentukan rentang alamat IP pribadi tempat titik akhir dapat diakses. Untuk melakukannya, pilih subnet untuk setiap Zona Ketersediaan. Hal tersebut membatasi titik akhir VPC ke rentang alamat IP pribadi khusus untuk setiap Zona Ketersediaan dan membuat titik akhir Amazon VPC di setiap Zona Ketersediaan.

1. Untuk **Aktifkan nama DNS**, pilih **Aktifkan untuk titik akhir ini**.

   DNS Pribadi menyelesaikan nama host DNS API Data standar (`https://redshift-data.region.amazonaws.com`) ke alamat IP pribadi yang dikaitkan dengan nama host DNS khusus untuk titik akhir Amazon VPC Anda. Akibatnya, Anda dapat mengakses titik akhir VPC API Data menggunakan AWS CLI atau AWS SDKs tanpa membuat perubahan kode atau konfigurasi apa pun untuk memperbarui URL titik akhir API Data.

1. Untuk **Grup keamanan**, pilih satu grup keamanan untuk dikaitkan dengan titik akhir Amazon VPC.

   Pilih grup keamanan yang memungkinkan akses ke AWS layanan yang menjalankan aplikasi Anda. Misalnya, jika instans Amazon EC2 menjalankan aplikasi Anda, pilih grup keamanan yang mengizinkan akses ke instans Amazon EC2. Grup keamanan memungkinkan Anda mengontrol lalu lintas ke titik akhir Amazon VPC dari sumber daya di VPC Anda.

1. Pilih **Buat titik akhir**.

Setelah titik akhir dibuat, pilih tautan di Konsol Manajemen AWS untuk melihat detail titik akhir.

Tab **Detail** titik akhir menunjukkan nama host DNS yang dibuat saat membuat titik akhir Amazon VPC.

Anda dapat menggunakan titik akhir standar (`redshift-data.region.amazonaws.com`) atau salah satu titik akhir khusus VPC untuk memanggil API Data dalam Amazon VPC. Titik akhir API Data standar secara otomatis merutekan ke titik akhir Amazon VPC. Perutean ini terjadi karena nama host DNS Pribadi diaktifkan saat titik akhir Amazon VPC dibuat.

Saat Anda menggunakan titik akhir VPC Amazon dalam panggilan API Data, semua lalu lintas antara aplikasi Anda dan API Data tetap berada di Amazon VPCs yang mengandungnya. Anda dapat menggunakan titik akhir Amazon VPC untuk semua jenis panggilan API Data. Lihat informasi selengkapnya tentang memanggil API Data di [Pertimbangan saat memanggil Amazon Redshift Data API](data-api.md#data-api-calling-considerations).

# Bergabung dengan grup basis data saat menghubungkan ke klaster
<a name="data-api-dbgroups"></a>

Grup database adalah kumpulan pengguna database. Hak istimewa database dapat diberikan kepada grup. Administrator dapat mengonfigurasi peran IAM sedemikian rupa sehingga grup database ini diperhitungkan saat SQL Anda berjalan dengan API Data. Untuk informasi selengkapnya tentang grup database, lihat [Grup](https://docs.aws.amazon.com/redshift/latest/dg/r_Groups.html) di Panduan *Pengembang Database Amazon Redshift*. 

Anda dapat mengonfigurasi peran IAM pemanggil API Data sehingga pengguna database yang ditentukan dalam panggilan bergabung dengan grup database saat API Data terhubung ke klaster. Kemampuan ini hanya didukung saat menghubungkan ke cluster yang disediakan. Itu tidak didukung saat menghubungkan ke grup kerja Redshift Serverless. Peran IAM dari pemanggil Data API juga harus memungkinkan tindakan. `redshift:JoinGroup`

Konfigurasikan ini dengan menambahkan tag ke peran IAM. Administrator peran IAM pemanggil menambahkan tag dengan kunci `RedshiftDbGroups` dan nilai kunci dari daftar grup database. Nilainya adalah daftar nama titik dua (:) dipisahkan dari kelompok database hingga total panjang 256 karakter. Grup database harus didefinisikan sebelumnya dalam database yang terhubung. Jika grup tertentu tidak ditemukan dalam database, itu diabaikan. Misalnya, untuk grup database `accounting` dan`retail`, nilai kunci adalah. `accounting:retail` Pasangan nilai kunci tag `{"Key":"RedshiftDbGroups","Value":"accounting:retail"}` digunakan oleh Data API untuk menentukan grup database mana yang terkait dengan pengguna database yang disediakan dalam panggilan ke Data API.

**Untuk bergabung dengan grup basis data**

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

1. Di panel navigasi konsol, pilih **Peran** lalu pilih nama peran yang ingin Anda edit.

1. Pilih tab **Tag**, lalu pilih **Kelola tag**.

1. Pilih **Tambah tag**, lalu tambahkan kunci **RedshiftDbGroups**dan nilai yang merupakan daftar*database-groups-colon-separated*.

1. Pilih **Simpan perubahan**.

   Sekarang ketika prinsipal IAM (dengan peran IAM ini terpasang) memanggil Data API, pengguna database yang ditentukan bergabung dengan grup database yang ditentukan dalam peran IAM.

*Untuk informasi selengkapnya tentang cara melampirkan tag ke prinsipal, termasuk peran IAM dan pengguna IAM, lihat [Menandai sumber daya IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_tags.html) di Panduan Pengguna IAM.* 

# Menggunakan Data API dengan propagasi identitas tepercaya
<a name="data-api-trusted-identity-propagation"></a>

Sebagai administrator akun Amazon Redshift, Anda dapat mengintegrasikan klaster atau grup kerja Amazon Redshift, yang membantu mengelola akses tenaga kerja Anda ke Amazon Redshift AWS IAM Identity Center dengan sistem masuk tunggal. Untuk informasi selengkapnya, lihat [Menyiapkan integrasi Pusat AWS Identitas IAM dengan Amazon Redshift](redshift-iam-access-control-idp-connect-console.md). Amazon Redshift Data API mendukung penyebaran identitas pengguna IAM Identity Center ke cluster atau workgroup Amazon Redshift, dan ke layanan lain, seperti, di bawah rantai. AWS Lake Formation Anda dapat mengatur dan melakukan kueri menggunakan API Data dengan mengikuti langkah-langkah dalam [AWS layanan Access secara terprogram menggunakan propagasi identitas tepercaya](https://aws.amazon.com/blogs//security/access-aws-services-programmatically-using-trusted-identity-propagation/).

Saat Anda memanggil API Data menggunakan identitas pengguna IAM Identity Center dari sesi peran IAM yang disempurnakan identitas, Anda hanya dapat mengakses pernyataan dan hasil pernyataan yang dihasilkan menggunakan pengguna Pusat Identitas IAM yang sama. Misalnya, AWS CLI perintah berikut memanggil `execute-statement` operasi untuk menjalankan perintah SQL dengan propagasi identitas tepercaya.

```
aws redshift-data execute-statement 
--sql "select current_user;" 
--cluster-id mycluster
--database dev
```

 AWS CLI Perintah berikut memanggil `batch-execute-statement` operasi untuk menjalankan dua perintah SQL.

```
aws redshift-data batch-execute-statement 
--sqls  "select current_user;"  "select current_date;"
--cluster-id mycluster
--database dev
```

Untuk mengakses pernyataan dengan`cancel-statement`,, `describe-statement``get-statement-result`, dan `get-statement-result-v2` dikirimkan oleh sesi peran IAM yang disempurnakan identitas, pengguna Pusat Identitas IAM dan peran IAM harus cocok dengan kredensil yang digunakan untuk menjalankan atau. `execute-statment` `batch-execute-statement` Misalnya, AWS CLI perintah berikut mendapatkan hasil dari pernyataan SQL.

```
aws redshift-data get-statement-result 
--id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
```

Untuk membuat daftar pernyataan, `workgroup-name` parameter `cluster-identifier` atau harus disediakan untuk memastikan bahwa pengguna Pusat Identitas IAM hanya memiliki akses ke aplikasi Pusat Identitas IAM Amazon Redshift tempat mereka ditugaskan. Misalnya, AWS CLI perintah berikut mencantumkan pernyataan untuk cluster tertentu.

```
aws redshift-data list-statements
--cluster-identifier mycluster
```

Anda juga dapat menjalankan operasi Data API yang mengakses objek database dalam klaster atau grup kerja menggunakan propagasi identitas tepercaya. Ini termasuk`list-databases`,`list-schemas`,`list-tables`, dan `describe-table` operasi.

Panggilan API yang dilakukan oleh pengguna IAM Identity Center dapat dilacak. AWS CloudTrail`onBehalfOf`Bagian dari CloudTrail acara menunjukkan id pengguna IAM Identity Center dan ARN toko identitas. Contoh berikut menunjukkan cuplikan CloudTrail peristiwa yang menunjukkan `onBehalfOf` bagian dengan ID pengguna IAM Identity Center `a1b2c3d4-5678-90ab-cdef-EXAMPLE11111` dan ARN penyimpanan Identitas dari. `arn:aws:identitystore::123456789012:identitystore/d-9067bc44d2`

```
{
            "eventVersion":"1.10",
            "userIdentity":{
            "type":"AssumedRole",
            ...
            },
            "onBehalfOf":{
            "userId":"a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
            "identityStoreArn":"arn:aws:identitystore::123456789012:identitystore/d-9067bc44d2"
            }
            },
            "eventTime":"2025-01-13T04:46:27Z",
            "eventSource":"redshift-data.amazonaws.com",
            "eventName":"ExecuteStatement",
            "awsRegion":"us-east-1"
            }
```

Anda dapat menjalankan perintah SQL berikut untuk memeriksa kueri yang dikirimkan oleh pengguna IAM Identity Center. Dalam contoh ini, email yang terdaftar di Pusat Identitas adalah`username@example.com`.

```
SELECT
    h.query_id,
    h.database_name,
    h.status,
    h.query_text,
    u.usename,
    h.start_time,
    h.end_time
FROM
    sys_query_history h
LEFT JOIN
    pg_user u
ON
    h.user_id = u.usesysid
where u.usename='awsidc:username@example.com'    
ORDER BY
    h.start_time DESC;
```

# Memanggil API Data
<a name="data-api-calling"></a>

Anda dapat memanggil Data API atau AWS CLI untuk menjalankan pernyataan SQL pada klaster atau grup kerja tanpa server. Operasi utama untuk menjalankan pernyataan SQL adalah [https://docs.aws.amazon.com/redshift-data/latest/APIReference/API_ExecuteStatement.html](https://docs.aws.amazon.com/redshift-data/latest/APIReference/API_ExecuteStatement.html)dan [https://docs.aws.amazon.com/redshift-data/latest/APIReference/API_BatchExecuteStatement.html](https://docs.aws.amazon.com/redshift-data/latest/APIReference/API_BatchExecuteStatement.html)di Referensi *API Data Amazon Redshift*. Data API mendukung bahasa pemrograman yang didukung oleh AWS SDK. Untuk informasi selengkapnya tentang ini, lihat [Alat untuk Dibangun AWS](https://aws.amazon.com/tools/).

Untuk melihat contoh kode pemanggilan Data API, lihat [Memulai dengan Redshift Data API](https://github.com/aws-samples/getting-started-with-amazon-redshift-data-api#getting-started-with-redshift-data-api) di. *GitHub* Repositori ini memiliki contoh penggunaan AWS Lambda untuk mengakses data Amazon Redshift dari Amazon EC2 AWS Glue Data Catalog,, dan Amazon Runtime. SageMaker Contoh bahasa pemrograman termasuk Python, Go, Java, dan Javascript.

Anda dapat memanggil API Data menggunakan AWS CLI.

Contoh berikut menggunakan AWS CLI untuk memanggil Data API. Untuk menjalankan contoh, edit nilai parameter agar sesuai dengan lingkungan Anda. Dalam banyak contoh, a `cluster-identifier` disediakan untuk dijalankan melawan cluster. Saat Anda menjalankan workgroup tanpa server, Anda menyediakan sebagai gantinya. `workgroup-name` Contoh-contoh ini menunjukkan beberapa operasi Data API. Untuk informasi selengkapnya, lihat* Referensi Perintah AWS AWS CLI *. 

Perintah dalam contoh berikut telah dibagi dan diformat agar mudah dibaca. Tidak semua parameter dan respons ditampilkan dalam semua contoh. Untuk definisi API dari sintaks permintaan lengkap, parameter permintaan, sintaks respons, dan elemen respons, lihat [Referensi API Data Amazon Redshift](https://docs.aws.amazon.com/redshift-data/latest/APIReference/).

# Meneruskan pernyataan SQL ke gudang data Amazon Redshift
<a name="pass-sql-statements"></a>

Contoh di halaman ini mencakup berbagai cara untuk meneruskan pernyataan SQL ke gudang data Anda

## Jalankan pernyataan SQL
<a name="data-api-calling-cli-execute-statement"></a>

Untuk menjalankan pernyataan SQL, gunakan `aws redshift-data execute-statement` AWS CLI perintah.

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap cluster dan mengembalikan identifier untuk mengambil hasil. Contoh ini menggunakan metode AWS Secrets Manager otentikasi.

```
aws redshift-data execute-statement 
    --secret-arn arn:aws:secretsmanager:us-west-2:123456789012:secret:myuser-secret-hKgPWn 
    --cluster-identifier mycluster-test 
    --sql "select * from stl_query limit 1" 
    --database dev
```

Berikut adalah contoh respons tersebut.

```
{
    "ClusterIdentifier": "mycluster-test",
    "CreatedAt": 1598323175.823,
    "Database": "dev",
    "Id": "c016234e-5c6c-4bc5-bb16-2c5b8ff61814",
    "SecretArn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:myuser-secret-hKgPWn"
}
```

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap cluster dan mengembalikan identifier untuk mengambil hasil. Contoh ini menggunakan metode otentikasi kredensial sementara.

```
aws redshift-data execute-statement 
    --db-user myuser 
    --cluster-identifier mycluster-test 
    --database dev 
    --sql "select * from stl_query limit 1"
```

Berikut adalah contoh respons tersebut.

```
{
    "ClusterIdentifier": "mycluster-test",
    "CreatedAt": 1598306924.632,
    "Database": "dev",
    "DbUser": "myuser",
    "Id": "d9b6c0c9-0747-4bf4-b142-e8883122f766"
}
```

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap workgroup tanpa server dan mengembalikan identifier untuk mengambil hasilnya. Contoh ini menggunakan metode otentikasi kredensial sementara.

```
aws redshift-data execute-statement 
    --database dev 
    --workgroup-name myworkgroup 
    --sql "select 1;"
```

Berikut adalah contoh respons tersebut.

```
{
 "CreatedAt": "2022-02-11T06:25:28.748000+00:00",
 "Database": "dev",
 "DbUser": "IAMR:RoleName",
 "Id": "89dd91f5-2d43-43d3-8461-f33aa093c41e",
 "WorkgroupName": "myworkgroup"
}
```

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap cluster dan mengembalikan identifier untuk mengambil hasil. Contoh ini menggunakan metode AWS Secrets Manager otentikasi dan token idempotensi.

```
aws redshift-data execute-statement 
    --secret-arn arn:aws:secretsmanager:us-west-2:123456789012:secret:myuser-secret-hKgPWn 
    --cluster-identifier mycluster-test 
    --sql "select * from stl_query limit 1" 
    --database dev 
    --client-token b855dced-259b-444c-bc7b-d3e8e33f94g1
```

Berikut adalah contoh respons tersebut.

```
{
    "ClusterIdentifier": "mycluster-test",
    "CreatedAt": 1598323175.823,
    "Database": "dev",
    "Id": "c016234e-5c6c-4bc5-bb16-2c5b8ff61814",
    "SecretArn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:myuser-secret-hKgPWn"
}
```

## Jalankan pernyataan SQL dengan parameter
<a name="data-api-calling-cli-execute-statement-parameters"></a>

Untuk menjalankan pernyataan SQL, gunakan `aws redshift-data execute-statement` AWS CLI perintah.

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap cluster dan mengembalikan identifier untuk mengambil hasil. Contoh ini menggunakan metode AWS Secrets Manager otentikasi. Teks SQL memiliki parameter `distance` bernama. Dalam hal ini, jarak yang digunakan dalam predikat adalah`5`. Dalam pernyataan SELECT, parameter bernama untuk nama kolom hanya dapat digunakan dalam predikat. Nilai untuk parameter bernama untuk pernyataan SQL ditentukan dalam `parameters` opsi.

```
aws redshift-data execute-statement 
    --secret-arn arn:aws:secretsmanager:us-west-2:123456789012:secret:myuser-secret-hKgPWn 
    --cluster-identifier mycluster-test 
    --sql "SELECT ratecode FROM demo_table WHERE trip_distance > :distance"  
    --parameters "[{\"name\": \"distance\", \"value\": \"5\"}]"
    --database dev
```

Berikut adalah contoh respons tersebut.

```
{
    "ClusterIdentifier": "mycluster-test",
    "CreatedAt": 1598323175.823,
    "Database": "dev",
    "Id": "c016234e-5c6c-4bc5-bb16-2c5b8ff61814",
    "SecretArn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:myuser-secret-hKgPWn"
}
```

Contoh berikut menggunakan `EVENT` tabel dari database sampel. Untuk informasi selengkapnya, lihat [tabel EVENT](https://docs.aws.amazon.com/redshift/latest/dg/r_eventtable.html) di Panduan *Pengembang Database Amazon Redshift*. 

Jika Anda belum memiliki `EVENT` tabel dalam database Anda, Anda dapat membuatnya menggunakan Data API sebagai berikut:

```
aws redshift-data execute-statement 
--database dev
--cluster-id mycluster-test
--db-user awsuser
--sql "create table event( eventid integer not null distkey, 
                           venueid smallint not null, 
                           catid smallint not null, 
                           dateid smallint not null sortkey, 
                           eventname varchar(200), 
                           starttime timestamp)"
```

Perintah berikut menyisipkan satu baris ke dalam `EVENT` tabel. 

```
aws redshift-data execute-statement 
--database dev
--cluster-id mycluster-test
--db-user awsuser 
--sql "insert into event values(:eventid, :venueid::smallint, :catid, :dateid, :eventname, :starttime)" 
--parameters "[{\"name\": \"eventid\", \"value\": \"1\"}, {\"name\": \"venueid\", \"value\": \"1\"}, 
               {\"name\": \"catid\", \"value\": \"1\"}, 
               {\"name\": \"dateid\", \"value\": \"1\"}, 
               {\"name\": \"eventname\", \"value\": \"event 1\"}, 
               {\"name\": \"starttime\", \"value\": \"2022-02-22\"}]"
```

Perintah berikut menyisipkan baris kedua ke dalam `EVENT` tabel. Contoh ini menunjukkan hal berikut: 
+ Parameter bernama `id` digunakan empat kali dalam teks SQL.
+ Konversi tipe implisit diterapkan secara otomatis saat memasukkan parameter. `starttime`
+ `venueid`Kolom adalah tipe cast ke tipe data SMALLINT.
+ String karakter yang mewakili tipe data DATE secara implisit diubah menjadi tipe data TIMESTAMP.
+ Komentar dapat digunakan dalam teks SQL.

```
aws redshift-data execute-statement 
--database dev
--cluster-id mycluster-test
--db-user awsuser 
--sql "insert into event values(:id, :id::smallint, :id, :id, :eventname, :starttime) /*this is comment, and it won't apply parameterization for :id, :eventname or :starttime here*/" 
--parameters "[{\"name\": \"eventname\", \"value\": \"event 2\"}, 
               {\"name\": \"starttime\", \"value\": \"2022-02-22\"}, 
               {\"name\": \"id\", \"value\": \"2\"}]"
```

Berikut ini menunjukkan dua baris yang disisipkan:

```
 eventid | venueid | catid | dateid | eventname |      starttime
---------+---------+-------+--------+-----------+---------------------
       1 |       1 |     1 |      1 | event 1   | 2022-02-22 00:00:00
       2 |       2 |     2 |      2 | event 2   | 2022-02-22 00:00:00
```

Perintah berikut menggunakan parameter bernama dalam klausa WHERE untuk mengambil baris di mana `eventid` adalah. `1` 

```
aws redshift-data execute-statement 
--database dev
--cluster-id mycluster-test
--db-user awsuser 
--sql "select * from event where eventid=:id"
--parameters "[{\"name\": \"id\", \"value\": \"1\"}]"
```

Jalankan perintah berikut untuk mendapatkan hasil SQL dari pernyataan SQL sebelumnya:

```
aws redshift-data get-statement-result --id 7529ad05-b905-4d71-9ec6-8b333836eb5a        
```

Memberikan hasil sebagai berikut:

```
{
    "Records": [
        [
            {
                "longValue": 1
            },
            {
                "longValue": 1
            },
            {
                "longValue": 1
            },
            {
                "longValue": 1
            },
            {
                "stringValue": "event 1"
            },
            {
                "stringValue": "2022-02-22 00:00:00.0"
            }
        ]
    ],
    "ColumnMetadata": [
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "eventid",
            "length": 0,
            "name": "eventid",
            "nullable": 0,
            "precision": 10,
            "scale": 0,
            "schemaName": "public",
            "tableName": "event",
            "typeName": "int4"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "venueid",
            "length": 0,
            "name": "venueid",
            "nullable": 0,
            "precision": 5,
            "scale": 0,
            "schemaName": "public",
            "tableName": "event",
            "typeName": "int2"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "catid",
            "length": 0,
            "name": "catid",
            "nullable": 0,
            "precision": 5,
            "scale": 0,
            "schemaName": "public",
            "tableName": "event",
            "typeName": "int2"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "dateid",
            "length": 0,
            "name": "dateid",
            "nullable": 0,
            "precision": 5,
            "scale": 0,
            "schemaName": "public",
            "tableName": "event",
            "typeName": "int2"
        },
        {
            "isCaseSensitive": true,
            "isCurrency": false,
            "isSigned": false,
            "label": "eventname",
            "length": 0,
            "name": "eventname",
            "nullable": 1,
            "precision": 200,
            "scale": 0,
            "schemaName": "public",
            "tableName": "event",
            "typeName": "varchar"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": false,
            "label": "starttime",
            "length": 0,
            "name": "starttime",
            "nullable": 1,
            "precision": 29,
            "scale": 6,
            "schemaName": "public",
            "tableName": "event",
            "typeName": "timestamp"
        }
    ],
    "TotalNumRows": 1
}
```

## Jalankan beberapa pernyataan SQL
<a name="data-api-calling-cli-batch-execute-statement"></a>

Untuk menjalankan beberapa pernyataan SQL dengan satu perintah, gunakan `aws redshift-data batch-execute-statement` AWS CLI perintah.

 AWS CLI Perintah berikut menjalankan tiga pernyataan SQL terhadap cluster dan mengembalikan identifier untuk mengambil hasil. Contoh ini menggunakan metode otentikasi kredensial sementara.

```
aws redshift-data batch-execute-statement 
    --db-user myuser 
    --cluster-identifier mycluster-test 
    --database dev 
    --sqls "set timezone to BST" "select * from mytable" "select * from another_table"
```

Berikut adalah contoh respons tersebut.

```
{
    "ClusterIdentifier": "mycluster-test",
    "CreatedAt": 1598306924.632,
    "Database": "dev",
    "DbUser": "myuser",
    "Id": "d9b6c0c9-0747-4bf4-b142-e8883122f766"
}
```

# Daftar metadata tentang pernyataan SQL
<a name="data-api-calling-cli-list-statements"></a>

Untuk daftar metadata tentang pernyataan SQL, gunakan perintah. `aws redshift-data list-statements` AWS CLI Otorisasi untuk menjalankan perintah ini didasarkan pada izin IAM pemanggil.

 AWS CLI Perintah berikut mencantumkan pernyataan SQL yang berjalan.

```
aws redshift-data list-statements 
    --status ALL
```

Berikut adalah contoh respons tersebut.

```
{
    "Statements": [
        {
            "CreatedAt": 1598306924.632,
            "Id": "d9b6c0c9-0747-4bf4-b142-e8883122f766",
            "QueryString": "select * from stl_query limit 1",
            "Status": "FINISHED",
            "UpdatedAt": 1598306926.667
        },
        {
            "CreatedAt": 1598311717.437,
            "Id": "e0ebd578-58b3-46cc-8e52-8163fd7e01aa",
            "QueryString": "select * from stl_query limit 1",
            "Status": "FAILED",
            "UpdatedAt": 1598311719.008
        },
        {
            "CreatedAt": 1598313683.65,
            "Id": "c361d4f7-8c53-4343-8c45-6b2b1166330c",
            "QueryString": "select * from stl_query limit 1",
            "Status": "ABORTED",
            "UpdatedAt": 1598313685.495
        },
        {
            "CreatedAt": 1598306653.333,
            "Id": "a512b7bd-98c7-45d5-985b-a715f3cfde7f",
            "QueryString": "select 1",
            "Status": "FINISHED",
            "UpdatedAt": 1598306653.992
        }
    ]
}
```

# Jelaskan metadata tentang pernyataan SQL
<a name="data-api-calling-cli-describe-statement"></a>

Untuk mendapatkan deskripsi metadata untuk pernyataan SQL, gunakan perintah. `aws redshift-data describe-statement` AWS CLI Otorisasi untuk menjalankan perintah ini didasarkan pada izin IAM pemanggil. 

 AWS CLI Perintah berikut menjelaskan pernyataan SQL. 

```
aws redshift-data describe-statement 
    --id d9b6c0c9-0747-4bf4-b142-e8883122f766
```

Berikut adalah contoh respons tersebut.

```
{
    "ClusterIdentifier": "mycluster-test",
    "CreatedAt": 1598306924.632,
    "Duration": 1095981511,
    "Id": "d9b6c0c9-0747-4bf4-b142-e8883122f766",
    "QueryString": "select * from stl_query limit 1",
    "RedshiftPid": 20859,
    "RedshiftQueryId": 48879,
    "ResultRows": 1,
    "ResultSize": 4489,
    "Status": "FINISHED",
    "UpdatedAt": 1598306926.667
}
```

Berikut ini adalah contoh `describe-statement` respon setelah menjalankan `batch-execute-statement` perintah dengan beberapa pernyataan SQL.

```
{
    "ClusterIdentifier": "mayo",
    "CreatedAt": 1623979777.126,
    "Duration": 6591877,
    "HasResultSet": true,
    "Id": "b2906c76-fa6e-4cdf-8c5f-4de1ff9b7652",
    "RedshiftPid": 31459,
    "RedshiftQueryId": 0,
    "ResultRows": 2,
    "ResultSize": 22,
    "Status": "FINISHED",
    "SubStatements": [
        {
            "CreatedAt": 1623979777.274,
            "Duration": 3396637,
            "HasResultSet": true,
            "Id": "b2906c76-fa6e-4cdf-8c5f-4de1ff9b7652:1",
            "QueryString": "select 1;",
            "RedshiftQueryId": -1,
            "ResultRows": 1,
            "ResultSize": 11,
            "Status": "FINISHED",
            "UpdatedAt": 1623979777.903
        },
        {
            "CreatedAt": 1623979777.274,
            "Duration": 3195240,
            "HasResultSet": true,
            "Id": "b2906c76-fa6e-4cdf-8c5f-4de1ff9b7652:2",
            "QueryString": "select 2;",
            "RedshiftQueryId": -1,
            "ResultRows": 1,
            "ResultSize": 11,
            "Status": "FINISHED",
            "UpdatedAt": 1623979778.076
        }
    ],
    "UpdatedAt": 1623979778.183
}
```

# Ambil hasil dari pernyataan SQL
<a name="data-api-calling-cli-get-statement-result"></a>

Untuk mengambil hasil dari pernyataan SQL yang berjalan, gunakan perintah `redshift-data get-statement-result` or `redshift-data get-statement-result-v2` AWS CLI . Hasil dari `get-statement-result` dalam format JSON. Hasil dari `get-statement-result-v2` dalam format CSV. Anda dapat memberikan `Id` yang Anda terima sebagai tanggapan terhadap `execute-statement` atau`batch-execute-statement`. `Id`Nilai untuk pernyataan SQL dijalankan oleh `batch-execute-statement` dapat diambil dalam hasil `describe-statement` dan diakhiran oleh titik dua dan nomor urut seperti. `b2906c76-fa6e-4cdf-8c5f-4de1ff9b7652:2` Jika Anda menjalankan beberapa pernyataan SQL dengan`batch-execute-statement`, setiap pernyataan SQL memiliki `Id` nilai seperti yang ditunjukkan pada. `describe-statement` Otorisasi untuk menjalankan perintah ini didasarkan pada izin IAM pemanggil. 

Pernyataan berikut mengembalikan hasil dari pernyataan SQL dijalankan oleh `execute-statement` yang membiarkan `ResultFormat` default untuk`JSON`. Untuk mengambil hasilnya, hubungi `get-statement-result` operasi.

```
aws redshift-data get-statement-result 
    --id d9b6c0c9-0747-4bf4-b142-e8883122f766
```

Pernyataan berikut mengembalikan hasil dari pernyataan SQL kedua dijalankan oleh`batch-execute-statement`.

```
aws redshift-data get-statement-result 
    --id b2906c76-fa6e-4cdf-8c5f-4de1ff9b7652:2
```

Berikut ini adalah contoh dari respon untuk panggilan ke `get-statement-result` mana hasil SQL dikembalikan dalam format JSON dalam `Records` kunci respon.

```
{
    "ColumnMetadata": [
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "userid",
            "length": 0,
            "name": "userid",
            "nullable": 0,
            "precision": 10,
            "scale": 0,
            "schemaName": "",
            "tableName": "stll_query",
            "typeName": "int4"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "query",
            "length": 0,
            "name": "query",
            "nullable": 0,
            "precision": 10,
            "scale": 0,
            "schemaName": "",
            "tableName": "stll_query",
            "typeName": "int4"
        },
        {
            "isCaseSensitive": true,
            "isCurrency": false,
            "isSigned": false,
            "label": "label",
            "length": 0,
            "name": "label",
            "nullable": 0,
            "precision": 320,
            "scale": 0,
            "schemaName": "",
            "tableName": "stll_query",
            "typeName": "bpchar"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "xid",
            "length": 0,
            "name": "xid",
            "nullable": 0,
            "precision": 19,
            "scale": 0,
            "schemaName": "",
            "tableName": "stll_query",
            "typeName": "int8"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "pid",
            "length": 0,
            "name": "pid",
            "nullable": 0,
            "precision": 10,
            "scale": 0,
            "schemaName": "",
            "tableName": "stll_query",
            "typeName": "int4"
        },
        {
            "isCaseSensitive": true,
            "isCurrency": false,
            "isSigned": false,
            "label": "database",
            "length": 0,
            "name": "database",
            "nullable": 0,
            "precision": 32,
            "scale": 0,
            "schemaName": "",
            "tableName": "stll_query",
            "typeName": "bpchar"
        },
        {
            "isCaseSensitive": true,
            "isCurrency": false,
            "isSigned": false,
            "label": "querytxt",
            "length": 0,
            "name": "querytxt",
            "nullable": 0,
            "precision": 4000,
            "scale": 0,
            "schemaName": "",
            "tableName": "stll_query",
            "typeName": "bpchar"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": false,
            "label": "starttime",
            "length": 0,
            "name": "starttime",
            "nullable": 0,
            "precision": 29,
            "scale": 6,
            "schemaName": "",
            "tableName": "stll_query",
            "typeName": "timestamp"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": false,
            "label": "endtime",
            "length": 0,
            "name": "endtime",
            "nullable": 0,
            "precision": 29,
            "scale": 6,
            "schemaName": "",
            "tableName": "stll_query",
            "type": 93,
            "typeName": "timestamp"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "aborted",
            "length": 0,
            "name": "aborted",
            "nullable": 0,
            "precision": 10,
            "scale": 0,
            "schemaName": "",
            "tableName": "stll_query",
            "typeName": "int4"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "insert_pristine",
            "length": 0,
            "name": "insert_pristine",
            "nullable": 0,
            "precision": 10,
            "scale": 0,
            "schemaName": "",
            "tableName": "stll_query",
            "typeName": "int4"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "concurrency_scaling_status",
            "length": 0,
            "name": "concurrency_scaling_status",
            "nullable": 0,
            "precision": 10,
            "scale": 0,
            "schemaName": "",
            "tableName": "stll_query",
            "typeName": "int4"
        }
    ],
    "Records": [
        [
            {
                "longValue": 1
            },
            {
                "longValue": 3
            },
            {
                "stringValue": "health"
            },
            {
                "longValue": 1023
            },
            {
                "longValue": 15279
            },
            {
                "stringValue": "dev"
            },
            {
                "stringValue": "select system_status from stv_gui_status;"
            },
            {
                "stringValue": "2020-08-21 17:33:51.88712"
            },
            {
                "stringValue": "2020-08-21 17:33:52.974306"
            },
            {
                "longValue": 0
            },
            {
                "longValue": 0
            },
            {
                "longValue": 6
            }
        ]
    ],
    "TotalNumRows": 1
}
```

Contoh berikut menunjukkan pernyataan SQL dijalankan oleh `execute-statement` untuk mengembalikan hasil sebagai JSON. Tabel `testingtable` memiliki tiga kolom integer (col1, col2, col3) dan ada tiga baris dengan nilai (1, 2, 3), (4, 5, 6), dan (7, 8, 9).

```
aws redshift-data execute-statement 
    --database dev 
    --sql "SELECT col1, col2, col3 FROM testingtable" 
    --cluster-id mycluster-test 
    --result-format JSON
```

```
{
    "ClusterIdentifier": "mycluster-test",
    "CreatedAt": "2024-04-02T16:45:25.144000+00:00",
    "Database": "dev",
    "DbUser": "IAMR:Administrator",
    "Id": "d468d942-6df9-4f85-8ae3-bac01a61aec3"
}
```

Berikut ini adalah contoh dari respon untuk panggilan ke `get-statement-result` mana hasil SQL dikembalikan dalam format JSON dalam `Records` kunci respon.

```
aws redshift-data get-statement-result
    --id d468d942-6df9-4f85-8ae3-bac01a61aec3
```

```
{
    "Records": [
        [
            {
                "longValue": 1
            },
            {
                "longValue": 2
            },
            {
                "longValue": 3
            }
        ],
        [
            {
                "longValue": 4
            },
            {
                "longValue": 5
            },
            {
                "longValue": 6
            }
        ],
        [
            {
                "longValue": 7
            },
            {
                "longValue": 8
            },
            {
                "longValue": 9
            }
        ]
    ],
    "ColumnMetadata": [
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "col1",
            "name": "col1",
            "nullable": 1,
            "precision": 10,
            "scale": 0,
            "schemaName": "public",
            "tableName": "testingtable",
            "typeName": "int4",
            "length": 0
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "col2",
            "name": "col2",
            "nullable": 1,
            "precision": 10,
            "scale": 0,
            "schemaName": "public",
            "tableName": "testingtable",
            "typeName": "int4",
            "length": 0
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "col3",
            "name": "col3",
            "nullable": 1,
            "precision": 10,
            "scale": 0,
            "schemaName": "public",
            "tableName": "testingtable",
            "typeName": "int4",
            "length": 0
        }
    ],
    "TotalNumRows": 3
}
```

Contoh berikut menunjukkan pernyataan SQL dijalankan oleh `execute-statement` untuk mengembalikan hasil sebagai CSV. Tabel `testingtable` memiliki tiga kolom integer (col1, col2, col3) dan ada tiga baris dengan nilai (1, 2, 3), (4, 5, 6), dan (7, 8, 9).

```
aws redshift-data execute-statement 
    --database dev 
    --sql "SELECT col1, col2, col3 FROM testingtable" 
    --cluster-id mycluster-test 
    --result-format CSV
```

```
{
    "ClusterIdentifier": "mycluster-test",
    "CreatedAt": "2024-04-02T16:45:25.144000+00:00",
    "Database": "dev",
    "DbUser": "IAMR:Administrator",
    "Id": "d468d942-6df9-4f85-8ae3-bac01a61aec3"
}
```

Berikut ini adalah contoh respons terhadap panggilan ke `get-statement-result-v2` tempat hasil SQL dikembalikan dalam format CSV di `Records` kunci respons. Baris dipisahkan oleh carriage return dan newline (\$1 r\$1n). Baris pertama yang dikembalikan `Records` adalah header kolom. Hasil yang dikembalikan dalam format CSV dikembalikan dalam 1 MB di mana setiap potongan dapat menyimpan sejumlah baris hingga 1MB. 

```
aws redshift-data get-statement-result-v2
    --id d468d942-6df9-4f85-8ae3-bac01a61aec3
```

```
{
    "Records": [
        {
            "CSVRecords": "col1,col2,col3\r\n1,2,3\r\n4,5,6\r\n7,8,9\r\n"
        }
    ],
    "ColumnMetadata": [
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "col1",
            "name": "col1",
            "nullable": 1,
            "precision": 10,
            "scale": 0,
            "schemaName": "public",
            "tableName": "testingtable",
            "typeName": "int4",
            "length": 0
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "col2",
            "name": "col2",
            "nullable": 1,
            "precision": 10,
            "scale": 0,
            "schemaName": "public",
            "tableName": "testingtable",
            "typeName": "int4",
            "length": 0
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": true,
            "label": "col3",
            "name": "col3",
            "nullable": 1,
            "precision": 10,
            "scale": 0,
            "schemaName": "public",
            "tableName": "testingtable",
            "typeName": "int4",
            "length": 0
        }
    ],
    "TotalNumRows": 3,
    "ResultFormat": "csv"
}
```

# Jelaskan tabel
<a name="data-api-calling-cli-describe-table"></a>

Untuk mendapatkan metadata yang menggambarkan tabel, gunakan perintah. `aws redshift-data describe-table` AWS CLI 

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap cluster dan mengembalikan metadata yang menggambarkan tabel. Contoh ini menggunakan metode AWS Secrets Manager otentikasi.

```
aws redshift-data describe-table  
    --cluster-identifier mycluster-test 
    --database dev 
    --schema information_schema 
    --table sql_features 
    --secret-arn arn:aws:secretsmanager:us-west-2:123456789012:secret:myuser-secret-hKgPWn
```

Berikut adalah contoh respons tersebut.

```
{
    "ColumnList": [
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": false,
            "length": 2147483647,
            "name": "feature_id",
            "nullable": 1,
            "precision": 2147483647,
            "scale": 0,
            "schemaName": "information_schema",
            "tableName": "sql_features",
            "typeName": "character_data"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": false,
            "length": 2147483647,
            "name": "feature_name",
            "nullable": 1,
            "precision": 2147483647,
            "scale": 0,
            "schemaName": "information_schema",
            "tableName": "sql_features",
            "typeName": "character_data"
        }     
    ]
}
```

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap cluster yang menggambarkan tabel. Contoh ini menggunakan metode otentikasi kredensial sementara.

```
aws redshift-data describe-table 
    --db-user myuser 
    --cluster-identifier mycluster-test 
    --database dev 
    --schema information_schema 
    --table sql_features
```

Berikut adalah contoh respons tersebut.

```
{
    "ColumnList": [
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": false,
            "length": 2147483647,
            "name": "feature_id",
            "nullable": 1,
            "precision": 2147483647,
            "scale": 0,
            "schemaName": "information_schema",
            "tableName": "sql_features",
            "typeName": "character_data"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": false,
            "length": 2147483647,
            "name": "feature_name",
            "nullable": 1,
            "precision": 2147483647,
            "scale": 0,
            "schemaName": "information_schema",
            "tableName": "sql_features",
            "typeName": "character_data"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": false,
            "length": 2147483647,
            "name": "sub_feature_id",
            "nullable": 1,
            "precision": 2147483647,
            "scale": 0,
            "schemaName": "information_schema",
            "tableName": "sql_features",
            "typeName": "character_data"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": false,
            "length": 2147483647,
            "name": "sub_feature_name",
            "nullable": 1,
            "precision": 2147483647,
            "scale": 0,
            "schemaName": "information_schema",
            "tableName": "sql_features",
            "typeName": "character_data"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": false,
            "length": 2147483647,
            "name": "is_supported",
            "nullable": 1,
            "precision": 2147483647,
            "scale": 0,
            "schemaName": "information_schema",
            "tableName": "sql_features",
            "typeName": "character_data"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": false,
            "length": 2147483647,
            "name": "is_verified_by",
            "nullable": 1,
            "precision": 2147483647,
            "scale": 0,
            "schemaName": "information_schema",
            "tableName": "sql_features",
            "typeName": "character_data"
        },
        {
            "isCaseSensitive": false,
            "isCurrency": false,
            "isSigned": false,
            "length": 2147483647,
            "name": "comments",
            "nullable": 1,
            "precision": 2147483647,
            "scale": 0,
            "schemaName": "information_schema",
            "tableName": "sql_features",
            "typeName": "character_data"
        }
    ]
}
```

# Daftar database dalam sebuah cluster
<a name="data-api-calling-cli-list-databases"></a>

Untuk membuat daftar database dalam sebuah cluster, gunakan `aws redshift-data list-databases` AWS CLI perintah.

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap cluster untuk daftar database. Contoh ini menggunakan metode AWS Secrets Manager otentikasi.

```
aws redshift-data list-databases  

    --secret-arn arn:aws:secretsmanager:us-west-2:123456789012:secret:myuser-secret-hKgPWn 
    --cluster-identifier mycluster-test 
    --database dev
```

Berikut adalah contoh respons tersebut.

```
{
    "Databases": [
        "dev"
    ]
}
```

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap cluster untuk daftar database. Contoh ini menggunakan metode otentikasi kredensial sementara.

```
aws redshift-data list-databases  
    --db-user myuser 
    --cluster-identifier mycluster-test 
    --database dev
```

Berikut adalah contoh respons tersebut.

```
{
    "Databases": [
        "dev"
    ]
}
```

# Daftar skema dalam database
<a name="data-api-calling-cli-list-schemas"></a>

Untuk membuat daftar skema dalam database, gunakan `aws redshift-data list-schemas` AWS CLI perintah.

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap cluster untuk daftar skema dalam database. Contoh ini menggunakan metode AWS Secrets Manager otentikasi.

```
aws redshift-data list-schemas 
    --secret-arn arn:aws:secretsmanager:us-west-2:123456789012:secret:myuser-secret-hKgPWn 
    --cluster-identifier mycluster-test 
    --database dev
```

Berikut adalah contoh respons tersebut.

```
{
    "Schemas": [
        "information_schema",
        "pg_catalog",
        "pg_internal",
        "public"
    ]
}
```

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap cluster untuk daftar skema dalam database. Contoh ini menggunakan metode otentikasi kredensial sementara.

```
aws redshift-data list-schemas 
    --db-user mysuser 
    --cluster-identifier mycluster-test 
    --database dev
```

Berikut adalah contoh respons tersebut.

```
{
    "Schemas": [
        "information_schema",
        "pg_catalog",
        "pg_internal",
        "public"
    ]
}
```

# Daftar tabel dalam database
<a name="data-api-calling-cli-list-tables"></a>

Untuk membuat daftar tabel dalam database, gunakan `aws redshift-data list-tables` AWS CLI perintah.

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap cluster untuk daftar tabel dalam database. Contoh ini menggunakan metode AWS Secrets Manager otentikasi.

```
aws redshift-data list-tables 
    --secret-arn arn:aws:secretsmanager:us-west-2:123456789012:secret:myuser-secret-hKgPWn 
    --cluster-identifier mycluster-test 
    --database dev 
    --schema information_schema
```

Berikut adalah contoh respons tersebut.

```
{
    "Tables": [
        {
            "name": "sql_features",
            "schema": "information_schema",
            "type": "SYSTEM TABLE"
        },
        {
            "name": "sql_implementation_info",
            "schema": "information_schema",
            "type": "SYSTEM TABLE"
        }
}
```

 AWS CLI Perintah berikut menjalankan pernyataan SQL terhadap cluster untuk daftar tabel dalam database. Contoh ini menggunakan metode otentikasi kredensial sementara.

```
aws redshift-data list-tables  

     --db-user myuser 
     --cluster-identifier mycluster-test 
     --database dev 
     --schema information_schema
```

Berikut adalah contoh respons tersebut.

```
{
    "Tables": [
        {
            "name": "sql_features",
            "schema": "information_schema",
            "type": "SYSTEM TABLE"
        },
        {
            "name": "sql_implementation_info",
            "schema": "information_schema",
            "type": "SYSTEM TABLE"
        }
    ]
}
```

# Memecahkan masalah untuk Amazon Redshift Data API
<a name="data-api-troubleshooting"></a>

Gunakan bagian berikut, yang berjudul pesan kesalahan umum, untuk membantu memecahkan masalah yang Anda alami dengan API Data. 

**Topics**
+ [Paket untuk kueri terlalu besar](#data-api-troubleshooting-packet-too-large)
+ [Respons basis data melebihi batas ukuran](#data-api-troubleshooting-response-size-too-large)

## Paket untuk kueri terlalu besar
<a name="data-api-troubleshooting-packet-too-large"></a>

Jika Anda melihat kesalahan yang menunjukkan bahwa paket untuk kueri terlalu besar, umumnya set hasil yang dikembalikan untuk baris terlalu besar. Batas ukuran API Data adalah 64 KB per baris dalam set hasil yang ditampilkan oleh basis data.

Untuk mengatasi masalah ini, pastikan setiap baris dalam set hasil berukuran 64 KB atau kurang.

## Respons basis data melebihi batas ukuran
<a name="data-api-troubleshooting-response-size-too-large"></a>

Jika Anda melihat kesalahan yang menunjukkan bahwa respons database telah melebihi batas ukuran, umumnya ukuran kumpulan hasil yang dikembalikan oleh database terlalu besar. Batas Data API adalah 500 MB dalam kumpulan hasil yang dikembalikan oleh database.

Untuk mengatasi masalah ini, pastikan panggilan ke Data API mengembalikan 500 MB data atau kurang. Jika Anda perlu mengembalikan lebih dari 500 MB, Anda dapat menjalankan beberapa panggilan pernyataan dengan `LIMIT` klausa dalam kueri Anda.

# Menjadwalkan operasi Amazon Redshift Data API dengan Amazon EventBridge
<a name="data-api-calling-event-bridge"></a>

Anda dapat membuat aturan yang cocok dengan peristiwa yang dipilih dan mengarahkannya ke target untuk mengambil tindakan. Anda juga dapat menggunakan aturan untuk mengambil tindakan pada jadwal yang telah ditentukan. Untuk informasi selengkapnya, lihat [Panduan EventBridge Pengguna Amazon](https://docs.aws.amazon.com/eventbridge/latest/userguide/). 

Untuk menjadwalkan operasi Data API dengan EventBridge, peran IAM terkait harus mempercayai prinsipal untuk CloudWatch Acara (events.amazonaws.com). Peran ini harus setara dengan kebijakan terkelola yang `AmazonEventBridgeFullAccess` dilampirkan. Itu juga harus memiliki izin `AmazonRedshiftDataFullAccess` kebijakan yang dikelola oleh API Data. Anda dapat membuat peran IAM dengan izin ini di konsol IAM. Saat membuat peran di konsol IAM, pilih entitas terpercaya AWS layanan untuk CloudWatch Acara. Tentukan peran IAM dalam nilai `RoleArn` JSON di target. EventBridge Untuk informasi selengkapnya tentang membuat peran IAM, lihat [Membuat Peran untuk AWS Layanan (Konsol)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html#roles-creatingrole-service-console) di *Panduan Pengguna IAM*.

Aturan `name` yang Anda buat di Amazon EventBridge harus cocok dengan `StatementName` di`RedshiftDataParameters`.

Contoh berikut menunjukkan variasi pembuatan EventBridge aturan dengan satu atau beberapa pernyataan SQL dan dengan cluster Amazon Redshift atau grup kerja Amazon Redshift Tanpa Server sebagai gudang data.

## Memanggil dengan satu pernyataan SQL dan cluster
<a name="data-api-calling-event-bridge-sql-cluster"></a>

Contoh berikut menggunakan AWS CLI untuk membuat EventBridge aturan yang digunakan untuk menjalankan pernyataan SQL terhadap cluster Amazon Redshift.

```
aws events put-rule 
--name test-redshift-cluster-data 
--schedule-expression "rate(1 minute)"
```

Kemudian EventBridge target dibuat untuk berjalan pada jadwal yang ditentukan dalam aturan. 

```
aws events put-targets 
--cli-input-json file://data.json
```

File input data.json adalah sebagai berikut. Kunci `Sql` JSON menunjukkan ada pernyataan SQL tunggal. Nilai `Arn` JSON berisi pengidentifikasi cluster. Nilai `RoleArn` JSON berisi peran IAM yang digunakan untuk menjalankan SQL seperti yang dijelaskan sebelumnya. 

```
{
    "Rule": "test-redshift-cluster-data",
    "EventBusName": "default",
    "Targets": [
        {
            "Id": "2",
            "Arn": "arn:aws:redshift:us-east-1:123456789012:cluster:mycluster",
            "RoleArn": "arn:aws:iam::123456789012:role/Administrator",
            "RedshiftDataParameters": {
                "Database": "dev",
                "DbUser": "root",
                "Sql": "select 1;",
                "StatementName": "test-redshift-cluster-data",
                "WithEvent": true
            }
        }
    ]
}
```

## Memanggil dengan satu pernyataan SQL dan workgroup
<a name="data-api-calling-event-bridge-sql-workgroup"></a>

Contoh berikut menggunakan AWS CLI untuk membuat EventBridge aturan yang digunakan untuk menjalankan pernyataan SQL terhadap workgroup Amazon Redshift Tanpa Server.

```
aws events put-rule 
--name  test-redshift-serverless-workgroup-data 
--schedule-expression "rate(1 minute)"
```

Kemudian EventBridge target dibuat untuk berjalan pada jadwal yang ditentukan dalam aturan. 

```
aws events put-targets 
--cli-input-json file://data.json
```

File input data.json adalah sebagai berikut. Kunci `Sql` JSON menunjukkan ada pernyataan SQL tunggal. Nilai `Arn` JSON berisi nama workgroup. Nilai `RoleArn` JSON berisi peran IAM yang digunakan untuk menjalankan SQL seperti yang dijelaskan sebelumnya. 

```
{
    "Rule": "test-redshift-serverless-workgroup-data", 
    "EventBusName": "default", 
    "Targets": [ 
        {
            "Id": "2",
            "Arn": "arn:aws:redshift-serverless:us-east-1:123456789012:workgroup/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
            "RoleArn": "arn:aws:iam::123456789012:role/Administrator", 
            "RedshiftDataParameters": {
                "Database": "dev",
                "Sql": "select 1;",
                "StatementName": "test-redshift-serverless-workgroup-data", 
                "WithEvent": true 
            } 
        } 
    ] 
}
```

## Memanggil dengan beberapa pernyataan SQL dan cluster
<a name="data-api-calling-event-bridge-sqls-cluster"></a>

Contoh berikut menggunakan AWS CLI untuk membuat EventBridge aturan yang digunakan untuk menjalankan beberapa pernyataan SQL terhadap cluster Amazon Redshift.

```
aws events put-rule 
--name  test-redshift-cluster-data 
--schedule-expression "rate(1 minute)"
```

Kemudian EventBridge target dibuat untuk berjalan pada jadwal yang ditentukan dalam aturan. 

```
aws events put-targets 
--cli-input-json file://data.json
```

File input data.json adalah sebagai berikut. Kunci `Sqls` JSON menunjukkan ada beberapa pernyataan SQL. Nilai `Arn` JSON berisi pengidentifikasi cluster. Nilai `RoleArn` JSON berisi peran IAM yang digunakan untuk menjalankan SQL seperti yang dijelaskan sebelumnya. 

```
{
    "Rule": "test-redshift-cluster-data", 
    "EventBusName": "default", 
    "Targets": [ 
        {
            "Id": "2",
            "Arn": "arn:aws:redshift:us-east-1:123456789012:cluster:mycluster",
            "RoleArn": "arn:aws:iam::123456789012:role/Administrator", 
            "RedshiftDataParameters": {
                "Database": "dev",
                "Sqls": ["select 1;", "select 2;", "select 3;"],
                "StatementName": "test-redshift-cluster-data", 
                "WithEvent": true 
            } 
        } 
    ] 
}
```

## Memanggil dengan beberapa pernyataan SQL dan workgroup
<a name="data-api-calling-event-bridge-sqls-workgroup"></a>

Contoh berikut menggunakan AWS CLI untuk membuat EventBridge aturan yang digunakan untuk menjalankan beberapa pernyataan SQL terhadap workgroup Amazon Redshift Tanpa Server.

```
aws events put-rule 
--name  test-redshift-serverless-workgroup-data 
--schedule-expression "rate(1 minute)"
```

Kemudian EventBridge target dibuat untuk berjalan pada jadwal yang ditentukan dalam aturan. 

```
aws events put-targets 
--cli-input-json file://data.json
```

File input data.json adalah sebagai berikut. Kunci `Sqls` JSON menunjukkan ada beberapa pernyataan SQL. Nilai `Arn` JSON berisi nama workgroup. Nilai `RoleArn` JSON berisi peran IAM yang digunakan untuk menjalankan SQL seperti yang dijelaskan sebelumnya. 

```
{
    "Rule": "test-redshift-serverless-workgroup-data", 
    "EventBusName": "default", 
    "Targets": [ 
        {
            "Id": "2",
            "Arn": "arn:aws:redshift-serverless:us-east-1:123456789012:workgroup/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
            "RoleArn": "arn:aws:iam::123456789012:role/Administrator", 
            "RedshiftDataParameters": {
                "Database": "dev",
                "Sqls": ["select 1;", "select 2;", "select 3;"],
                "StatementName": "test-redshift-serverless-workgroup-data", 
                "WithEvent": true 
            } 
        } 
    ] 
}
```

# Memantau API Data
<a name="data-api-monitoring"></a>

Pemantauan adalah bagian penting untuk menjaga keandalan, ketersediaan, dan kinerja API Data dan AWS solusi Anda yang lain. AWS menyediakan alat pemantauan berikut untuk menonton API Data, melaporkan ketika ada sesuatu yang salah, dan mengambil tindakan otomatis bila perlu: 
+ Amazon EventBridge dapat digunakan untuk mengotomatiskan AWS layanan Anda dan merespons secara otomatis peristiwa sistem, seperti masalah ketersediaan aplikasi atau perubahan sumber daya. Acara dari AWS layanan dikirimkan ke EventBridge dalam waktu nyaris nyata. Anda dapat menuliskan aturan sederhana untuk menunjukkan peristiwa mana yang sesuai kepentingan Anda, dan tindakan otomatis mana yang diambil ketika suatu peristiwa sesuai dengan suatu aturan. Untuk informasi selengkapnya, lihat [Panduan EventBridge Pengguna Amazon](https://docs.aws.amazon.com/eventbridge/latest/userguide/). 
+ AWS CloudTrail menangkap panggilan API dan peristiwa terkait yang dibuat oleh atau atas nama AWS akun Anda dan mengirimkan file log ke bucket Amazon S3 yang Anda tentukan. Anda dapat mengidentifikasi pengguna dan akun mana yang dipanggil AWS, alamat IP sumber dari mana panggilan dilakukan, dan kapan panggilan terjadi. Untuk mempelajari selengkapnya tentang cara Amazon Redshift terintegrasi AWS CloudTrail, lihat [Logging](https://docs.aws.amazon.com/redshift/latest/mgmt/logging-with-cloudtrail.html) with. CloudTrail Untuk informasi selengkapnya CloudTrail, lihat [Panduan AWS CloudTrail Pengguna](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/). 

**Topics**
+ [Memantau peristiwa untuk Amazon Redshift Data API di Amazon EventBridge](data-api-monitoring-events.md)

# Memantau peristiwa untuk Amazon Redshift Data API di Amazon EventBridge
<a name="data-api-monitoring-events"></a>

Anda dapat memantau peristiwa API Data di EventBridge, yang mengirimkan aliran data real-time dari aplikasi, aplikasi software-as-a-service (SaaS), dan layanan Anda sendiri. AWS EventBridge merutekan data tersebut ke target seperti AWS Lambda dan Amazon SNS. Peristiwa ini sama dengan yang muncul di CloudWatch Peristiwa, yang memberikan aliran peristiwa sistem yang mendekati waktu nyata yang menggambarkan perubahan sumber daya. AWS Acara dikirim ke akun yang berisi database Amazon Redshift. Misalnya, jika Anda berperan di akun lain, acara akan dikirim ke akun tersebut. Untuk informasi selengkapnya, lihat [ EventBridge Acara Amazon](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events.html) *di Panduan EventBridge Pengguna Amazon.* . 

Peristiwa API data dikirim saat operasi `ExecuteStatement` atau `BatchExecuteStatement` API menetapkan `WithEvent` opsi ke`true`. `state`Bidang acara berisi salah satu nilai berikut: 
+ DIBATALKAN - Proses kueri dihentikan oleh pengguna. 
+ GAGAL — Query run gagal. 
+ SELESAI - Kueri telah selesai berjalan. 

Acara disampaikan secara terjamin. Untuk informasi selengkapnya, lihat [Acara dari AWS layanan](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-service-event.html) di *Panduan EventBridge Pengguna Amazon*. 

## Contoh untuk acara selesai Data API
<a name="data-api-monitoring-events-finished"></a>

Contoh berikut menunjukkan peristiwa untuk Data API saat operasi `ExecuteStatement` API selesai. Dalam contoh ini, pernyataan bernama `test.testtable` selesai berjalan.

```
{
    "version": "0",
    "id": "18e7079c-dd4b-dd64-caf9-e2a31640dab0",
    "detail-type": "Redshift Data Statement Status Change",
    "source": "aws.redshift-data",
    "account": "123456789012",
    "time": "2020-10-01T21:14:26Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:redshift:us-east-1:123456789012:cluster:redshift-cluster-1"
    ],
    "detail": {
        "principal": "arn:aws:iam::123456789012:user/myuser",
        "statementName": "test.testtable",
        "statementId": "dd2e1ec9-2ee3-49a0-819f-905fa7d75a4a",
        "redshiftQueryId": -1,
        "state": "FINISHED",
        "rows": 1,
        "expireAt": 1601673265
    }
}
```

# Menggunakan AWS KMS dengan Amazon Redshift Data API
<a name="data-api-kms"></a>

Saat Anda mengenkripsi klaster Amazon Redshift atau grup kerja Redshift Tanpa Server dengan kunci yang dikelola pelanggan, Amazon Redshift Data API menggunakan kunci yang dikelola pelanggan yang sama untuk menyimpan dan mengenkripsi kueri dan hasil Anda.

Data API mengenkripsi data Anda secara default untuk melindungi informasi sensitif, seperti teks kueri dan hasil kueri. Ini menggunakan kunci AWS KMS enkripsi yang dimiliki oleh AWS untuk perlindungan ini.

Enkripsi default untuk data saat istirahat mengurangi overhead operasional dan kompleksitas saat Anda melindungi data sensitif. Pendekatan ini membantu Anda membangun aplikasi aman yang memenuhi kepatuhan enkripsi yang ketat dan persyaratan peraturan.

## Menggunakan hibah di AWS KMS
<a name="data-api-kms-grants"></a>

Data API memerlukan hibah untuk menggunakan kunci yang dikelola pelanggan Anda.

Saat Anda menelepon `ExecuteStatement` atau `BatchExecuteStatement` melawan kluster yang dienkripsi dengan kunci yang dikelola pelanggan, Amazon Redshift membuat hibah atas nama Anda dengan mengirimkan [https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html)permintaan ke. AWS KMS AWS KMS menggunakan hibah untuk memberikan akses Data API ke kunci KMS di akun Anda.

Data API memerlukan hibah untuk menggunakan kunci terkelola pelanggan Anda untuk operasi berikut:
+ Kirim [https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html)permintaan AWS KMS untuk mengenkripsi metadata kueri dengan kunci terkelola pelanggan Anda.
+ Kirim [https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)permintaan AWS KMS untuk menghasilkan kunci data yang dienkripsi oleh kunci terkelola pelanggan Anda.
+ Kirim [https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)permintaan AWS KMS untuk mendekripsi kunci data terenkripsi sehingga mereka dapat mengenkripsi data Anda.

Anda dapat mencabut akses ke hibah atau menghapus akses Amazon Redshift ke kunci yang dikelola pelanggan kapan saja. Jika Anda melakukannya, API Data tidak dapat lagi mengakses data yang dienkripsi oleh kunci yang dikelola pelanggan Anda, yang memengaruhi operasi yang bergantung pada data tersebut. Misalnya, jika Anda mencoba mengambil hasil kueri atau melacak status kueri setelah mencabut hibah, API Data akan mengembalikan file. `AccessDeniedException`

## Kebijakan utama untuk kunci terkelola pelanggan Anda
<a name="data-api-kms-policy"></a>

Kebijakan utama mengontrol akses ke kunci yang dikelola pelanggan Anda. Setiap kunci yang dikelola pelanggan harus memiliki persis satu kebijakan utama, yang berisi pernyataan yang menentukan siapa yang dapat menggunakan kunci dan bagaimana mereka dapat menggunakannya. Saat membuat kunci terkelola pelanggan, Anda dapat menentukan kebijakan kunci. Untuk informasi selengkapnya, lihat [Kunci terkelola pelanggan](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-mgn-key) di *Panduan AWS Key Management Service Pengembang*.

Untuk menggunakan kunci yang dikelola pelanggan dengan API Data, Anda harus terlebih dahulu mengizinkan akses ke Amazon Redshift. Operasi API berikut harus diizinkan dalam kebijakan utama:
+ `kms:CreateGrant`— Menambahkan hibah ke kunci yang dikelola pelanggan. Memberikan akses kontrol ke AWS KMS kunci tertentu, yang memungkinkan akses untuk memberikan operasi yang diperlukan Amazon Redshift. Untuk informasi selengkapnya, lihat [Menggunakan hibah di AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-grant-operations).

Berikut ini adalah contoh kebijakan kunci:

```
"Statement":[
   {
      "Sid":"Allow access to principals authorized to use Amazon Redshift",
      "Effect":"Allow",
      "Principal":{
         "AWS":"*"
      },
      "Action":[
         "kms:DescribeKey",
         "kms:CreateGrant"
      ],
      "Resource":"*",
      "Condition":{
         "StringEquals":{
            "kms:ViaService":"redshift.amazonaws.com",
            "kms:CallerAccount":"111122223333"
         }
      }
   },
   {
      "Sid":"AllowKeyAdministratorsAccess",
      "Effect":"Allow",
      "Principal":{
         "AWS":"arn:aws:iam::111122223333:role/ExampleAdminRole"
      },
      "Action":"kms:*",
      "Resource":"*"
   },
   {
      "Sid":"AllowKeyUseForExampleRole",
      "Effect":"Allow",
      "Principal":{
         "AWS":"arn:aws:iam::111122223333:role/ExampleUserRole"
      },
      "Action":[
         "kms:Encrypt",
         "kms:Decrypt",
         "kms:ReEncrypt*",
         "kms:GenerateDataKey*",
         "kms:DescribeKey"
      ],
      "Resource":"*"
   }
]
```

## Konteks enkripsi API data
<a name="data-api-kms-encryption"></a>

Konteks enkripsi adalah kumpulan opsional pasangan kunci-nilai yang berisi informasi kontekstual tambahan tentang data. AWS KMS menggunakan konteks enkripsi sebagai data otentikasi tambahan untuk mendukung enkripsi yang diautentikasi. Bila Anda menyertakan konteks enkripsi dalam permintaan untuk mengenkripsi data, AWS KMS mengikat konteks enkripsi ke data terenkripsi. Untuk mendekripsi data, Anda harus menyertakan konteks enkripsi yang sama dalam permintaan. 

Data API menggunakan tiga pasangan nilai kunci konteks enkripsi yang sama di semua operasi AWS KMS kriptografi untuk kluster yang disediakan:
+ `aws:redshift:arn`— Nama Sumber Daya Amazon (ARN) cluster
+ `aws:redshift:createtime`— Stempel waktu saat Anda meminta pembuatan cluster
+ `serviceName` – `RedshiftDataAPI`

```
"EncryptionContextSubset": {
    "aws:redshift:arn": "arn:aws:redshift:us-east-1:123456789012:cluster:redshift-cluster",
    "aws:redshift:createtime": "20250815T0000Z",
    "serviceName": "RedshiftDataAPI",
}
```

Data API menggunakan dua pasangan nilai kunci konteks enkripsi di semua operasi AWS KMS kriptografi untuk grup kerja tanpa server:
+ `aws:redshift-serverless:arn`— Nama Sumber Daya Amazon (ARN) namespace
+ `serviceName`— RedshiftData API

```
"EncryptionContextSubset": {
    "aws:redshift-serverless:arn": "arn:aws:redshift-serverless:us-east-1:123456789012:namespace:12345678-1234-1234-1234-123456789012",
    "serviceName": "RedshiftDataAPI"
}
```

Untuk informasi selengkapnya tentang enkripsi, lihat [Pengantar detail kriptografi. AWS KMS](https://docs.aws.amazon.com/kms/latest/cryptographic-details/intro.html) Untuk informasi selengkapnya tentang Amazon Redshift dan AWS KMS integrasi, lihat [Cara Amazon Redshift menggunakan](https://docs.aws.amazon.com/kms/latest/developerguide/services-redshift.html). AWS KMS

# Menggunakan Amazon Sagemaker Unified Studio untuk menanyakan database Anda di Amazon Redshift dan lakehouse SageMaker
<a name="sagemaker-unified-studio"></a>

Amazon SageMaker Unified Studio menyediakan lingkungan pengembangan di luar konsol dan mendukung analisis SQL pada data di SageMaker lakehouse, Amazon Redshift, dan Amazon Athena untuk analitik SQL. Arahkan ke Amazon SageMaker Unified Studio menggunakan URL dari admin Anda dan gunakan SSO atau AWS kredensional Anda untuk masuk. Untuk informasi selengkapnya tentang menyiapkan project pertama Anda, lihat [Memulai](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/getting-started.html) di *Panduan Pengguna Amazon SageMaker Unified Studio*.

[Di Amazon SageMaker Unified Studio, Anda dapat melakukan [analisis SQL](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/sql-query.html) dengan menjalankan Amazon Redshift dan Amazon Athena dengan editor kueri.](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/query-editor-navigate.html) Gunakan editor kueri untuk menulis dan menjalankan kueri, melihat hasil, dan berbagi pekerjaan Anda dengan tim Anda. Jalankan kueri terhadap gudang data Redshift di (dalam Akun AWS akun yang sama dan di akun Akun AWS lainnya), buat kueri SQL untuk Redshift dan Athena menggunakan antarmuka yang sama, dan jadwalkan kueri SQL menggunakan Alur Kerja Terkelola Amazon untuk Apache Airflow. Anda juga dapat menggunakan SQL generatif Amazon Q untuk menghasilkan SQL dari bahasa alami.