Home > Server Linux, Tutorial > Mengecek dan Memperbaiki Tabel MySQL

Mengecek dan Memperbaiki Tabel MySQL

Repost artikel dari The Geek Stuff tentang bagaimana cara mengecek dan memperbaiki tabel mysql. Program (tool) yang digunakan adalah mysqlcheck, yang merupakan paket mysql-client (di Linux Ubuntu, LinuxMint, debian). Perintah mysqlcheck dijalankan dari konsole (shell) untuk mengecek, memperbaiki, mengoptimalkan dan menganalisis tabel-tabel mysql.

Untuk menjalankan perintah mysqlcheck, diperlukan akun mysql dengan privilege yang memadai untuk memodifikasi suatu database, misalnya root. Berikut tips untuk memelihara tabel-tabel di database mysql.

  1. Mengecek tabel tertentu dalam suatu database
    Kasus: saat aplikasi menyatakan error bahwa suatu tabel corrupt. Contoh: tabel atable_ex di database adatabase dicek
    $ mysqlcheck -c adatabase atable_ex -u root -p
    Enter password:
    adatabase.atable_ex OK
  2. Mengecek semua tabel dalam suatu database
    Pengecekan tabel dilakukan dengan argumen -a.
    Kasus: saat aplikasi menyatakan error bahwa beberapa tabel corrupt.
    $ mysqlcheck -c adatabase -u root -p
    Enter password:
    adatabase.atable_ex OK
    adatabase.atable_ex1 OK
    ...
  3. Mengecek semua database yang ada di server
    Kasus: saat aplikasi menyatakan error bahwa beberapa tabel di database yang berbeda corrupt.
    $ mysqlcheck -c --all-databases -u root -p
    Enter password:
    adatabase.atable_ex OK
    adatabase.atable_ex1 OK
    ...
    mysql.help_category
    error : Table upgrade required. Please do "REPAIR TABLE `help_category`" or dump/reload to fix it!
    mysql.help_keyword
    error : Table upgrade required. Please do "REPAIR TABLE `help_keyword`" or dump/reload to fix it!
    ...

    Pesan error akan dimunculkan jika ada tabel yang error.
  4. Mengecek tabel di dua atau lebih database
    Kasus: saat aplikasi menyatakan error bahwa beberapa tabel corrupt di beberapa database. Anda sudah tahu database yang error.
    $ mysqlcheck -c -u root -p --databases adatabase bdatabase
    Enter password:
    adatabase.atable_ex OK
    adatabase.atable_ex1 OK
    ...
    bdatabase.atable_ex OK
    bdatabase.atable_ex1 OK
    ...
  5. Menganalisis Tabel
    Analisis tabel dilakukan dengan argumen -a. Perbedaannya dengan pengecekan sebelumnya, yaitu bahwa mysqlcheck dengan menggunakan perintah “ANALYZE TABLE”, sedangkan saat analisis tabel akan dikunci dan proses (program yang sedang dijalankan) lain hanya bisa membaca tabel tersebut.
    Kasus: saat aplikasi menyatakan error bahwa suatu tabel corrupt. Saat pengecekan, aplikasi tersebut hanya bisa membaca tabel saja.
    $ mysqlcheck -a adatabase atable_ex -u root -p
    Enter password:
    adatabase.atable_ex Table is already up to date
  6. Optimasi tabel
    Mysqlcheck dijalankan dengan argumen -o. Argumen ini akan menjalankan perintah “OPTIMIZE TABLE”. Kasus: saat record dalam tabel dihapus, space-nya ingin dibebaskan dan file data akan didefrag, sehingga akan memperbaik performansi tabel yang berukuran besar.
    $ mysqlcheck -o adatabase atable_ex -u root -p
    Enter password:
    adatabase.atable_ex OK
    “.
  7. Memperbaiki tabel
    Mysqlcheck dijalankan dengan argumen -r. Argumen ini akan menjalankan perintah “REPAIR TABLE”. Kasus: saat terdapat tabel yang corrupt. Perintah ini akan memperbaiki MyISAM dan tabel arsip yang corrupt tersebut.
    $ mysqlcheck -r adatabase atable_ex -u root -p
    Enter password:
    adatabase.atable_ex OK
    “.
  8. Mengecek, mengoptimasi dan memperbaiki tabel
    Mysqlcheck dijalankan dengan argumen –auto-repair -o -c.
    $ mysqlcheck --auto-repair adatabase atable_ex -u root -p
    Enter password:
    adatabase.atable_ex OK
    “.
  9. Menampilkan informasi debug
    Mysqlcheck dijalankan dengan argumen –debug-info. Diperlukan saat mencoba mengecek tabel yang besar.
    $ mysqlcheck --debug-info --auto-repair -u root -p --all-databases
    Enter password:
    adatabase.atable_ex OK
    adatabase.atable_ex1 OK
    ...
    bdatabase.atable_ex OK
    bdatabase.atable_ex1 OK
    ...
    “.


Sumber:

Categories: Server Linux, Tutorial
  1. No comments yet.
  1. No trackbacks yet.
*

This blog is kept spam free by WP-SpamFree.

Skip to toolbar