

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

# io/socket/sql/client\$1koneksi
<a name="ams-waits.client-connection"></a>

Peristiwa `io/socket/sql/client_connection` terjadi saat thread sedang dalam proses penanganan koneksi baru.

**Topics**
+ [Versi mesin yang didukung](#ams-waits.client-connection.context.supported)
+ [Konteks](#ams-waits.client-connection.context)
+ [Kemungkinan penyebab peningkatan peristiwa tunggu](#ams-waits.client-connection.causes)
+ [Tindakan](#ams-waits.client-connection.actions)

## Versi mesin yang didukung
<a name="ams-waits.client-connection.context.supported"></a>

Informasi peristiwa tunggu ini didukung untuk versi mesin berikut:
+ Aurora MySQL versi 2 dan 3

## Konteks
<a name="ams-waits.client-connection.context"></a>

Peristiwa `io/socket/sql/client_connection` menunjukkan bahwa mysqld sibuk membuat thread untuk menangani koneksi klien baru yang masuk. Dalam skenario ini, pemrosesan layanan permintaan koneksi klien baru melambat, sementara koneksi menunggu agar thread ditetapkan. Untuk informasi selengkapnya, lihat [Server MySQL (mysqld)](AuroraMySQL.Managing.Tuning.concepts.md#AuroraMySQL.Managing.Tuning.concepts.processes.mysqld).

## Kemungkinan penyebab peningkatan peristiwa tunggu
<a name="ams-waits.client-connection.causes"></a>

Saat peristiwa ini muncul lebih dari biasanya, yang mungkin menunjukkan adanya masalah performa, berikut adalah penyebab umumnya:
+ Terdapat peningkatan mendadak dalam koneksi pengguna baru dari aplikasi ke instans Amazon RDS Anda.
+ Instans DB Anda tidak dapat memproses koneksi baru karena jaringan, CPU, atau memori sedang dibatasi.

## Tindakan
<a name="ams-waits.client-connection.actions"></a>

Jika `io/socket/sql/client_connection` mendominasi aktivitas basis data, hal tersebut tidak selalu menunjukkan adanya masalah performa. Dalam basis data yang tidak idle, peristiwa tunggu selalu berada di atas. Lakukan tindakan hanya bila performa menurun. Kami merekomendasikan berbagai tindakan, tergantung pada penyebab peristiwa tunggu Anda.

**Topics**
+ [Mengidentifikasi sesi dan kueri yang bermasalah](#ams-waits.client-connection.actions.identify-queries)
+ [Mengikuti praktik terbaik untuk manajemen koneksi](#ams-waits.client-connection.actions.manage-connections)
+ [Menskalakan instans jika sumber daya sedang dibatasi](#ams-waits.client-connection.upgrade)
+ [Memeriksa host teratas dan pengguna teratas](#ams-waits.client-connection.top-hosts)
+ [Membuat kueri tabel performance\$1schema](#ams-waits.client-connection.perf-schema)
+ [Memeriksa status thread kueri](#ams-waits.client-connection.thread-states)
+ [Mengaudit permintaan dan kueri](#ams-waits.client-connection.auditing)
+ [Menggabungkan koneksi basis data](#ams-waits.client-connection.pooling)

### Mengidentifikasi sesi dan kueri yang bermasalah
<a name="ams-waits.client-connection.actions.identify-queries"></a>

Jika instans DB Anda mengalami kemacetan, langkah pertama adalah menemukan sesi dan kueri yang menjadi penyebabnya. Untuk postingan blog yang berguna, lihat [Menganalisis Beban Kerja Amazon Aurora MySQL dengan Wawasan Performa](https://aws.amazon.com/blogs/database/analyze-amazon-aurora-mysql-workloads-with-performance-insights/).

**Untuk mengidentifikasi sesi dan kueri yang menyebabkan kemacetan:**

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

1. Di panel navigasi, pilih **Wawasan Performa**.

1. Pilih instans DB Anda.

1. Di **Beban basis data**, pilih **Potong berdasarkan masa tunggu**.

1. Di bagian bawah halaman, pilih **SQL Teratas**.

   Kueri di bagian atas daftar adalah penyebab beban tertinggi pada basis data.

### Mengikuti praktik terbaik untuk manajemen koneksi
<a name="ams-waits.client-connection.actions.manage-connections"></a>

Untuk mengelola koneksi Anda, pertimbangkan strategi berikut:
+ Gunakan penggabungan koneksi.

  Anda dapat secara bertahap meningkatkan jumlah koneksi sesuai yang diperlukan. Untuk informasi selengkapnya, lihat laporan resmi [Buku Panduan Administrator Basis Data Amazon Aurora MySQL](https://d1.awsstatic.com/whitepapers/RDS/amazon-aurora-mysql-database-administrator-handbook.pdf).
+ Gunakan simpul pembaca untuk mendistribusikan kembali lalu lintas hanya-baca.

  Untuk informasi selengkapnya, lihat [Replika Aurora](Aurora.Replication.md#Aurora.Replication.Replicas) dan [Koneksi titik akhir Amazon Aurora](Aurora.Overview.Endpoints.md).

### Menskalakan instans jika sumber daya sedang dibatasi
<a name="ams-waits.client-connection.upgrade"></a>

Cari contoh throttling dalam sumber daya berikut:
+ CPU

  Periksa CloudWatch metrik Amazon Anda untuk penggunaan CPU yang tinggi.
+ Jaringan

  Periksa peningkatan nilai CloudWatch metrik `network receive throughput` dan`network transmit throughput`. Jika instans Anda telah mencapai batas bandwidth jaringan untuk kelas instans, pertimbangkan untuk menskalakan instans RDS ke jenis kelas instans yang lebih tinggi. Untuk informasi selengkapnya, lihat [Kelas instans Amazon Aurora DB](Concepts.DBInstanceClass.md).
+ Memori yang dapat dibebaskan 

  Periksa penurunan CloudWatch metrik`FreeableMemory`. Pertimbangkan juga untuk mengaktifkan Peningkatan Pemantauan. Untuk informasi selengkapnya, lihat [Memantau metrik OS dengan Pemantauan yang Ditingkatkan](USER_Monitoring.OS.md).

### Memeriksa host teratas dan pengguna teratas
<a name="ams-waits.client-connection.top-hosts"></a>

Gunakan Wawasan Performa untuk memeriksa host teratas dan pengguna teratas. Untuk informasi selengkapnya, lihat [Menganalisis metrik dengan dasbor Wawasan Performa](USER_PerfInsights.UsingDashboard.md).

### Membuat kueri tabel performance\$1schema
<a name="ams-waits.client-connection.perf-schema"></a>

Untuk mendapatkan jumlah koneksi total dan saat ini yang akurat, buat kueri tabel `performance_schema`. Dengan teknik ini, Anda mengidentifikasi pengguna sumber atau host yang bertanggung jawab untuk membuat koneksi dalam jumlah besar. Misalnya, buat kueri tabel `performance_schema` sebagai berikut:

```
SELECT * FROM performance_schema.accounts;
SELECT * FROM performance_schema.users;
SELECT * FROM performance_schema.hosts;
```

### Memeriksa status thread kueri
<a name="ams-waits.client-connection.thread-states"></a>

Jika masalah performa terus berlanjut, periksa status thread kueri. Di klien `mysql`, keluarkan perintah berikut.

```
show processlist;
```

### Mengaudit permintaan dan kueri
<a name="ams-waits.client-connection.auditing"></a>

Untuk memeriksa sifat permintaan dan kueri dari akun pengguna, gunakan AuroraAurora MySQL Advanced Auditing. Untuk mempelajari cara mengaktifkan audit, lihat [Menggunakan Audit Lanjutan dengan klaster Amazon Aurora My DB SQL](AuroraMySQL.Auditing.md).

### Menggabungkan koneksi basis data
<a name="ams-waits.client-connection.pooling"></a>

Pertimbangkan untuk menggunakan Proksi Amazon RDS untuk manajemen koneksi. Dengan menggunakan Proksi RDS, Anda dapat mengizinkan aplikasi untuk menggabungkan dan berbagi koneksi basis data guna meningkatkan kemampuan penskalaannya. Proksi RDS membuat aplikasi lebih tangguh terhadap kegagalan basis data dengan secara otomatis terhubung ke sebuah instans DB siaga sekaligus menjaga koneksi aplikasi. Lihat informasi yang lebih lengkap di [Proksi Amazon RDS untuk Aurora](rds-proxy.md).