Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Aurora Utas saya menyatakan SQL
Berikut ini adalah beberapa status benang merah untuk Aurora My. SQL
- memeriksa izin
-
Thread memeriksa apakah server memiliki hak akses yang diperlukan untuk menjalankan pernyataan.
- memeriksa cache kueri untuk kueri
-
Server memeriksa apakah kueri saat ini ada di cache kueri.
- dibersihkan
-
Ini adalah status akhir dari koneksi yang pekerjaannya selesai, tetapi belum ditutup oleh klien. Solusi terbaik adalah secara eksplisit menutup koneksi dalam kode. Atau, Anda dapat menetapkan nilai yang lebih rendah untuk
wait_timeout
di grup parameter Anda. - menutup tabel
-
Thread melakukan flushing data tabel yang diubah ke disk dan menutup tabel yang digunakan. Jika operasi ini tidak cepat, periksa metrik konsumsi bandwidth jaringan berdasarkan bandwidth jaringan kelas instans. Selain itu, periksa apakah nilai untuk parameter
table_open_cache
dantable_definition_cache
memungkinkan tabel yang cukup dibuka secara bersamaan sehingga mesin tidak perlu sering membuka dan menutup tabel. Parameter ini memengaruhi konsumsi memori pada instans. - konversi HEAP ke My ISAM
-
Kueri mengonversi tabel sementara dari dalam memori ke di disk. Konversi ini diperlukan karena tabel sementara yang dibuat oleh My SQL dalam langkah perantara pemrosesan kueri tumbuh terlalu besar untuk memori. Periksa nilai
tmp_table_size
danmax_heap_table_size
. Di versi yang lebih baru, nama status thread ini adalahconverting HEAP to ondisk
. - mengkonversi HEAP ke ondisk
-
Thread mengonversi tabel sementara internal dari tabel dalam memori ke tabel di disk.
- salin ke tabel sementara
-
Thread sedang memproses pernyataan
ALTER TABLE
. Status ini terjadi setelah tabel dengan struktur baru telah dibuat, tetapi sebelum baris disalin ke dalamnya. Untuk thread dalam status ini, Anda dapat menggunakan Skema Performa untuk mendapatkan informasi tentang progres operasi penyalinan. - membuat indeks pengurutan
-
Aurora My SQL melakukan semacam karena tidak dapat menggunakan indeks yang ada untuk memenuhi
ORDER BY
atauGROUP BY
klausa kueri. Untuk informasi selengkapnya, lihat creating sort index. - membuat tabel
-
Thread membuat tabel permanen atau sementara.
- commit tertunda ok selesai
-
Komit asinkron di Aurora My SQL telah menerima pengakuan dan selesai.
- commit tertunda ok diinisiasi
-
SQLUtas Aurora My telah memulai proses komit async tetapi sedang menunggu pengakuan. Status ini biasanya menunjukkan waktu commit yang sebenarnya dari suatu transaksi.
- pengiriman tertunda ok selesai
-
Utas Aurora SQL Pekerja saya yang terikat ke koneksi dapat dibebaskan saat respons dikirim ke klien. Utas dapat memulai pekerjaan lain. Status
delayed send ok
berarti bahwa konfirmasi asinkron ke klien selesai. - pengiriman tertunda ok diinisiasi
-
Utas Aurora SQL Pekerja saya telah mengirim respons secara asinkron ke klien dan sekarang bebas melakukan pekerjaan untuk koneksi lain. Transaksi telah memulai proses commit asinkron yang belum dikonfirmasi.
- mengeksekusi
-
Thread telah mulai menjalankan pernyataan.
- membebaskan item
-
Thread telah menjalankan perintah. Beberapa pembebasan item yang dilakukan selama status ini memerlukan cache kueri. Status ini biasanya diikuti dengan pembersihan.
- inisialisasi
-
Status ini terjadi sebelum inisialisasi pernyataan
ALTER TABLE
,DELETE
,INSERT
,SELECT
, atauUPDATE
. Tindakan dalam status ini termasuk flushing log biner atau log InnoDB, dan beberapa pembersihan cache kueri. - Sumber telah mengirim semua binlog ke replika; menunggu pembaruan lebih lanjut
-
Simpul primer telah menyelesaikan bagiannya dalam replikasi. Thread sedang menunggu lebih banyak kueri untuk dijalankan sehingga dapat menulis ke log biner (binlog).
- membuka tabel
-
Thread mencoba membuka tabel. Operasi ini cepat kecuali jika pernyataan
ALTER TABLE
atauLOCK TABLE
perlu diselesaikan, atau melebihi nilaitable_open_cache
. - mengoptimalkan
-
Server melakukan optimisasi awal untuk kueri.
- mempersiapkan
-
Status ini terjadi selama optimisasi kueri.
- akhir kueri
-
Status ini terjadi setelah memproses kueri, tetapi sebelum status membebaskan item.
- menghapus duplikat
-
Aurora My SQL tidak dapat mengoptimalkan
DISTINCT
operasi pada tahap awal kueri. Aurora My SQL harus menghapus semua baris duplikat sebelum mengirim hasilnya ke klien. - mencari baris untuk pembaruan
-
Thread mencari semua baris yang cocok sebelum memperbaruinya. Tahap ini diperlukan jika
UPDATE
mengubah indeks yang digunakan mesin untuk menemukan baris. - mengirim peristiwa binlog ke slave
-
Thread membaca peristiwa dari log biner dan mengirimkannya ke replika.
- mengirim hasil yang di-cache ke klien
-
Server mengambil hasil kueri dari cache kueri dan mengirimkannya ke klien.
- mengirim data
-
Thread sedang membaca dan memproses baris untuk pernyataan
SELECT
, tetapi belum mulai mengirim data ke klien. Proses ini mengidentifikasi halaman mana yang berisi hasil yang diperlukan untuk memenuhi kueri. Untuk informasi selengkapnya, lihat sending data. - mengirim ke klien
-
Server menulis paket ke klien. Dalam SQL versi saya sebelumnya, acara tunggu ini diberi label
writing to net
. - memulai
-
Ini adalah tahap pertama di awal eksekusi pernyataan.
- statistik
-
Server menghitung statistik untuk mengembangkan rencana eksekusi kueri. Jika thread dalam status ini dalam waktu yang lama, server mungkin terikat pada disk sambil melakukan pekerjaan lain.
- menyimpan hasil dalam cache kueri
-
Server menyimpan hasil kueri dalam cache kueri.
- kunci sistem
-
Thread telah memanggil
mysql_lock_tables
, tetapi status thread belum diperbarui sejak panggilan ini. Status umum ini terjadi karena berbagai alasan. - perbarui
-
Thread sedang bersiap untuk mulai memperbarui tabel.
- memperbarui
-
Thread sedang mencari baris dan memperbaruinya.
- kunci pengguna
-
Thread mengeluarkan panggilan
GET_LOCK
. Thread meminta kunci advisory dan sedang menunggunya, atau berencana untuk memintanya. - menunggu pembaruan lainnya
-
Simpul primer telah menyelesaikan bagiannya dalam replikasi. Thread sedang menunggu lebih banyak kueri untuk dijalankan sehingga dapat menulis ke log biner (binlog).
- menunggu kunci metadata skema
-
Ini adalah peristiwa tunggu untuk kunci metadata.
- menunggu kunci metadata fungsi tersimpan
-
Ini adalah peristiwa tunggu untuk kunci metadata.
- menunggu kunci metadata prosedur tersimpan
-
Ini adalah peristiwa tunggu untuk kunci metadata.
- menunggu flushing tabel
-
Thread sedang menjalankan
FLUSH TABLES
dan sedang menunggu semua thread untuk menutup tabelnya. Atau, thread menerima notifikasi bahwa struktur dasar untuk tabel berubah, sehingga harus membuka kembali tabel untuk mendapatkan struktur baru. Untuk membuka kembali tabel, thread harus menunggu sampai semua thread lainnya menutup tabel. Notifikasi ini terjadi jika thread lain telah menggunakan salah satu pernyataan berikut di tabel:FLUSH TABLES
,ALTER TABLE
,RENAME TABLE
,REPAIR TABLE
,ANALYZE TABLE
, atauOPTIMIZE TABLE
. - menunggu kunci tingkat tabel
-
Satu sesi mempertahankan kunci di tabel sementara sesi lain mencoba mendapatkan kunci yang sama di tabel yang sama.
- menunggu kunci metadata tabel
-
Aurora My SQL menggunakan penguncian metadata untuk mengelola akses bersamaan ke objek database dan untuk memastikan konsistensi data. Dalam peristiwa tunggu ini, satu sesi mempertahankan kunci metadata di tabel sementara sesi lain mencoba mendapatkan kunci yang sama di tabel yang sama. Saat Skema Performa diaktifkan, status thread ini dilaporkan sebagai peristiwa tunggu
synch/cond/sql/MDL_context::COND_wait_status
. - menulis ke net
-
Server sedang menulis paket ke jaringan. Di SQL versi saya yang lebih baru, acara tunggu ini diberi label
Sending to client
.