MySQL veritabanlarının nasıl tamir edileceğini ve tabloların nasıl optimize edileceğini göreceğiz. MySQL / MariaDB tablolarını ve veritabanlarını kontrol etmenizi, analiz etmenizi, onarmanızı ve optimize etmenizi sağlayan bakım komut satırı aracı olan mysqlcheck hakkında bilgi vermeye çalışacğız.
Veritabanı blogundaki tablo yayınlarının kontrolü;
# mysqlcheck -c blog posts
blog.posts OK
Veritabanı şifre ile korunuyorsa, komutun sonuna -u root -p eklenemelidir;
# mysqlcheck -c blog posts -u root -p
Şifre girin:
blog.posts OK
MySQL veritabanındaki tüm tabloları analizi;
Aşağıdaki komut veritabanı blogundaki tablo yayınlarını kontrol edecektir:
# mysqlcheck -a blog posts
blog.posts OK
MySQL / MariaDB sunucusu uzak bir ana bilgisayarda çalışıyorsa, komutun sonuna -h eklenmeli;
# mysqlcheck -a blog posts -h remotehost.com
blog.posts OK
MySQL veritabanlarındaki tüm tabloların optimize edilmesi;
# mysqlcheck -o --all-databases
Birden fazla MySQL veritabanı onarımı
Hem blog hem de blog2 veritabanlarındaki tüm tabloları onaracak:
# mysqlcheck -r --databases blog1 blog2
Tüm MySQL veritabanlarındaki tüm tabloların optimizasyon ve onarımı
Tüm veritabanlarındaki tüm tabloları kontrol edilecek ve bazı tablolar bozuksa, bu tabloyu otomatik olarak düzeltecektir.
# mysqlcheck --auto-repair -o --all-databases
Sık kullanılan mysqlcheck argümanları
-c, –check Hata tablosu için kontrol
-a, –analyze Verilen tabloları analiz
-o –optimize Tabloları optimize
-r, –repair Benzersiz olmayan benzersiz anahtarlar dışında hemen hemen her şeyi düzeltebilecek bir onarım gerçekleştirir.
–auto-repair Eğer işaretlenmiş bir tablo bozulmuşsa, onu otomatik olarak düzeltir. Tüm tablolar kontrol edildikten sonra onarım yapılır.
-A, –all-databases Tüm veritabanlarını kontrol eder.
-B, –databases Adı belirtilen veritabanlarındaki tüm tabloları işler.
–tables Seçeneği izleyen tüm ad argümanları tablo adları olarak kabul edilecek şekilde –databases veya -B seçeneğini geçersiz kılar.