Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mengawal Saiz Fail MySQL ibdata1 Saya?

Bagaimanakah Saya Boleh Mengawal Saiz Fail MySQL ibdata1 Saya?

DDD
DDDasal
2024-12-13 11:43:12165semak imbas

How Can I Control the Size of My MySQL ibdata1 File?

Cara Mengurus Saiz Fail Ibdata1 dalam MySQL

Fail ibdata1 MySQL menyimpan data penting, tetapi boleh berkembang secara berlebihan di bawah corak penggunaan tertentu. Ini boleh menjadi masalah, terutamanya apabila menggunakan MySQL untuk tujuan tertentu seperti aplikasi alat pertanyaan.

Punca Pertumbuhan Fail Ibdata1

Apabila menggunakan MySQL sebagai alat pertanyaan, mencipta dan menjatuhkan pangkalan data dan jadual dengan kerap boleh membawa kepada pertumbuhan fail ibdata1 yang pesat. Ini kerana MySQL biasanya menyimpan data dan indeks jadual dalam fail ibdata1 secara lalai.

Pilihan untuk Mengurus Saiz Fail Ibdata1

  • Dayakan Asingkan Fail Meja:

Setakat versi MySQL 5.6.6, MySQL menyokong penggunaan fail berasingan untuk setiap jadual. Mendayakan ciri ini menghalang fail ibdata1 daripada berkembang secara berlebihan. Untuk melakukan ini, tambahkan baris berikut pada fail my.cnf anda:

innodb_file_per_table=1
  • Purge Ibdata1 File:

Untuk menuntut semula ruang yang digunakan oleh ibdata1, ikut langkah berikut:

  1. Buang semua pangkalan data dan objek pelayan yang berkaitan, tidak termasuk MySQL dan performance_schema.
  2. Lepaskan semua pangkalan data kecuali MySQL dan performance_schema.
  3. Hentikan MySQL.
  4. Padam fail ibdata1 dan ib_log.
  5. Mulakan MySQL.
  6. Pulihkan data daripada dump.

Selepas memulakan semula MySQL, fail ibdata1 dan ib_log akan dicipta semula.

  • Ekstrak Halaman Data dan Indeks:

Menggunakan arahan ALTER TABLE atau OPTIMIZE TABLE, anda boleh mengekstrak data dan indeks halaman daripada ibdata1 untuk memisahkan fail. Walau bagaimanapun, ibdata1 tidak akan mengecut melainkan anda melakukan pembersihan penuh seperti yang diterangkan di atas.

Nota tentang Skema_Maklumat

Skema_maklumat tidak boleh digugurkan dan tidak memerlukan storan failnya sendiri, kerana ia menggunakan enjin db memori dan dicipta/dimusnahkan apabila MySQL mula/berhenti.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengawal Saiz Fail MySQL ibdata1 Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn