Rumah > Artikel > pangkalan data > Apakah pengetahuan tentang pengoptimuman pangkalan data MySQL?
Di satu pihak, pengoptimuman pangkalan data adalah untuk mengenal pasti kesesakan sistem dan meningkatkan prestasi keseluruhan pangkalan data MySQL Sebaliknya, ia memerlukan reka bentuk struktur yang munasabah dan pelarasan parameter untuk meningkatkan kelajuan tindak balas pengguna. ia juga perlu untuk menjimatkan sumber sistem sebanyak mungkin supaya pengguna dapat Sistem menyediakan beban yang lebih besar.
Pengarang membahagikan pengoptimuman kepada dua kategori, pengoptimuman lembut dan pengoptimuman keras secara amnya melibatkan pengendalian pangkalan data, manakala pengoptimuman keras melibatkan pengendalian perkakasan pelayan dan tetapan parameter 2.1 Pengoptimuman lembut
2.Contoh:
PILIH DESC * DARI `pengguna`
Paparan:
Maklumat seperti bilangan indeks dan data bacaan data pertanyaan akan dipaparkan
2.1.2 Mengoptimumkan subkueri
2.1.3 Menggunakan indeks
Op: Menunjukkan operasi yang akan dilakukan.
query_cache_size dan query_cache_type: Yang pertama ialah saiz penimbal pertanyaan, yang kedua ialah suis parameter sebelumnya, 0 bermaksud tidak menggunakan penimbal, 1 bermaksud menggunakan penimbal, tetapi boleh digunakan dalam pertanyaan SQL_NO_CACHE bermaksud tidak menggunakan penimbal, 2 bermakna dalam pertanyaan Jelas menunjukkan bahawa penimbal harus digunakan hanya apabila menggunakan penimbal, iaitu, SQL_CACHE.
Oleh kerana pangkalan data berada di bawah tekanan yang terlalu tinggi, masalah pertama ialah prestasi sistem mungkin berkurangan semasa tempoh puncak, kerana beban pangkalan data yang berlebihan akan memberi kesan kepada prestasi. Satu lagi, apakah yang perlu anda lakukan jika pangkalan data anda ranap kerana tekanan yang berlebihan? Jadi pada masa ini, anda mesti membahagikan sistem kepada pangkalan data dan jadual + pemisahan baca-tulis, iaitu, pecahkan pangkalan data kepada berbilang pangkalan data, gunakannya pada pelbagai perkhidmatan pangkalan data, dan kemudian berfungsi sebagai pangkalan data utama untuk mengendalikan permintaan tulis. Kemudian setiap perpustakaan induk memasang sekurang-kurangnya satu perpustakaan hamba, dan perpustakaan hamba mengendalikan permintaan baca.
Jika bilangan pengguna bertambah, anda boleh terus menambah mesin Contohnya, jika anda terus menambah mesin pada peringkat sistem, anda boleh mengendalikan permintaan serentak yang lebih tinggi. Kemudian, jika konkurensi tulis pada peringkat pangkalan data menjadi lebih tinggi dan lebih tinggi, pelayan pangkalan data akan diperluaskan dan mesin akan diperluaskan melalui sub-pangkalan data dan pembahagian jadual Jika konkurensi baca pada peringkat pangkalan data menjadi lebih tinggi dan lebih tinggi, kapasiti akan diperluaskan dan lebih banyak pangkalan data hamba akan ditambah. Tetapi terdapat masalah besar di sini: pangkalan data itu sendiri sebenarnya tidak digunakan untuk membawa permintaan serentak yang tinggi, jadi secara amnya, konkurensi yang dibawa oleh mesin pangkalan data tunggal sesaat adalah dalam susunan beribu-ribu, dan mesin yang digunakan oleh pangkalan data adalah konfigurasi yang agak tinggi, mesin yang agak mahal, kosnya sangat tinggi. Jika anda terus menambah mesin, ia sebenarnya salah. Oleh itu, cache biasanya disertakan dalam seni bina konkurensi tinggi Sistem cache direka untuk membawa konkurensi tinggi. Oleh itu, jumlah konkurensi yang dibawa oleh satu mesin adalah puluhan ribu, atau bahkan ratusan ribu sesaat, dan kapasiti bawaan konkurensi tinggi adalah satu hingga dua pesanan magnitud lebih tinggi daripada sistem pangkalan data. Oleh itu, anda boleh memperkenalkan gugusan cache sepenuhnya mengikut ciri perniagaan sistem untuk permintaan yang memerlukan kurang penulisan dan lebih banyak bacaan. Khususnya, apabila menulis ke pangkalan data, salinan data ditulis ke gugusan cache pada masa yang sama, dan kemudian gugusan cache digunakan untuk membawa kebanyakan permintaan baca. Dalam kes ini, melalui pengelompokan cache, sumber mesin yang lebih sedikit boleh digunakan untuk mengehoskan konkurensi yang lebih tinggi.
Atas ialah kandungan terperinci Apakah pengetahuan tentang pengoptimuman pangkalan data MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!