Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Memadam Berjuta-juta Baris MySQL Tanpa Masa Henti?
Cara Memadam Berjuta-juta Baris MySQL tanpa Masa Henti
Dalam menghadapi pepijat yang mengakibatkan berjuta-juta baris pendua, mencari pemadaman strategi yang meminimumkan masa henti adalah penting.
Satu pilihan melibatkan melaksanakan banyak pertanyaan pemadaman yang lebih kecil dalam satu gelung. Walau bagaimanapun, pendekatan ini boleh membebankan pangkalan data dan memanjangkan proses pemadaman.
Pilihan lain ialah menamakan semula jadual sedia ada, mencipta satu kosong baharu, melakukan pembersihan pada jadual yang dinamakan semula dan kemudian menggabungkan data semula ke dalam meja asal. Walaupun kaedah ini menawarkan gangguan yang minimum, ia datang dengan cabaran logistik, termasuk potensi kehilangan data dan keperluan untuk penggabungan data yang teliti.
Penyelesaian yang lebih cekap ialah melaksanakan pertanyaan berikut dalam satu gelung, dengan tempoh tidur yang singkat antara lelaran:
DELETE FROM `table` WHERE (whatever criteria) ORDER BY `id` LIMIT 1000
Dengan mengehadkan pemadaman kepada 1000 baris pada satu-satu masa dan menambah selang tidur yang singkat, teknik ini membenarkan pertanyaan lain untuk bersilang dan menghalang penguncian meja. Apabila lelaran berterusan, bilangan baris yang terjejas akan berkurangan secara beransur-ansur sehingga kekal sifar.
Pendekatan ini menggabungkan kecekapan dengan masa henti yang minimum, menjadikannya pilihan yang sesuai untuk memadamkan volum baris yang besar tanpa mengganggu fungsi tapak atau pengalaman pengguna.
Atas ialah kandungan terperinci Bagaimana untuk Memadam Berjuta-juta Baris MySQL Tanpa Masa Henti?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!