Rumah  >  Artikel  >  pangkalan data  >  Penyataan SQL biasa untuk pengoptimuman pangkalan data dalam MySQL (perkongsian ringkasan)

Penyataan SQL biasa untuk pengoptimuman pangkalan data dalam MySQL (perkongsian ringkasan)

WBOY
WBOYke hadapan
2022-08-24 09:02:162112semak imbas

Pembelajaran yang disyorkan: tutorial video mysql

1.SHOW ENGINES

Lihat enjin pelaksanaan dan enjin lalai.

2.SHOW PROCESSLIST

SHOW PROCESSLIST sangat berguna untuk melihat penggunaan sambungan pangkalan data semasa dan pelbagai maklumat status. SHOW PROCESSLIST; Hanya 100 item pertama yang disenaraikan jika anda ingin menyenaraikan semuanya, sila gunakan SHOW FULL PROCESSLIST;

3.TUNJUKKAN STATUS SEPERTI 'InnoDB_row_lock%'

Pembolehubah status kunci peringkat baris InnoDB.

Pembolehubah status kunci peringkat baris InnoDB bukan sahaja merekodkan bilangan menunggu kunci, tetapi juga merekodkan jumlah tempoh kunci, purata tempoh setiap kali dan tempoh maksimum. Di samping itu, terdapat bukan- Jumlah status terkumpul menunjukkan bilangan menunggu yang sedang menunggu untuk kunci. Penerangan bagi setiap kuantiti status adalah seperti berikut:

  • InnoDB_row_lock_current_waits: bilangan kunci yang sedang menunggu untuk kunci; >
  • InnoDB_row_lock_time_avg: purata masa yang diluangkan untuk menunggu setiap kali; dari permulaan sistem hingga sekarang ;
  • Untuk lima pembolehubah status ini, yang lebih penting ialah InnoDB_row_lock_time_avg (purata masa menunggu), InnoDB_row_lock_waits (jumlah masa menunggu) dan InnoDB_row_lock_time (jumlah masa menunggu). Terutama apabila bilangan penantian adalah tinggi dan tempoh setiap penantian tidak sedikit, kita perlu menganalisis mengapa terdapat begitu banyak penantian dalam sistem, dan kemudian mula menentukan pelan pengoptimuman berdasarkan hasil analisis.
  • Jika anda mendapati bahawa pertikaian kunci adalah serius, seperti nilai InnoDB_row_lock_waits dan InnoDB_row_lock_time_avg adalah agak tinggi, anda juga boleh menetapkan Monitor InnoDB untuk memerhatikan jadual dan baris data di mana konflik kunci berlaku, dan menganalisis sebab-sebab pertikaian kunci.
  • 4.SHOW ENGINE INNODB STATUS
Arahan SHOW ENGINE INNODB STATUS akan mengeluarkan banyak maklumat yang sedang dipantau oleh monitor InnoDB Ia mengeluarkan satu rentetan, tanpa baris dan lajur, dan kandungan Ia dibahagikan kepada banyak bahagian kecil, setiap bahagian sepadan dengan maklumat tentang bahagian berlainan enjin storan innodb Beberapa maklumat sangat berguna untuk pembangun innodb.

Terdapat bahagian DEADLOCK TERKINI YANG DIKESAN, iaitu maklumat kebuntuan yang direkodkan terakhir, seperti yang ditunjukkan dalam kes berikut:

"(1 ) TRANSAKSI" dipaparkan Maklumat tentang transaksi pertama;

"(1) MENUNGGU KUNCI INI DIBERIKAN" memaparkan maklumat kunci yang sedang menunggu transaksi pertama

"(2) TRANSAKSI" memaparkan maklumat Transaksi kedua;

    “(2) MEMEGANG LOCK(S)” memaparkan maklumat kunci yang dipegang oleh transaksi kedua;
  • “(2) MENUNGGU LOCK INI UNTUK BE GRANTED" memaparkan maklumat kunci yang urus niaga kedua sedang menunggu.
  • Barisan terakhir menunjukkan hasil pemprosesan, seperti "WE ROLL BACK TRANSACTION (2), yang bermaksud transaksi kedua ditarik balik. >5.SHOW INDEXS
  • SHOW INDEXS menanyakan maklumat indeks dalam jadual: SHOW INDEXES FROM table_name;
  • Sql untuk mencipta jadual adalah seperti berikut:
  • Sisipan prosedur tersimpan Lima puluh ribu keping data:

Gunakan indeks paparan daripada kenalan; 🎜>

6.ALTER TABLE xx ENGINE = INNODB

Bina semula jadual, termasuk struktur indeks. Boleh menghapuskan pemisahan halaman indeks dan pemecahan cakera yang ditinggalkan apabila data dipadamkan.

7.ANALYZE JADUAL

Ia tidak membina semula jadual, ia hanya mengira semula maklumat indeks jadual tanpa mengubah suai data Kunci baca MDL ditambah dalam proses ini. Ia boleh digunakan untuk membetulkan keadaan di mana Kardinaliti indeks statistik dalam indeks persembahan daripada nama jadual adalah data yang tidak normal.

Pembelajaran yang disyorkan: tutorial video mysql

Atas ialah kandungan terperinci Penyataan SQL biasa untuk pengoptimuman pangkalan data dalam MySQL (perkongsian ringkasan). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:jb51.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam