:::: MENU ::::
Posts tagged with: myisam

mysqld: Incorrect information in file: Hatası ve Çözümü

Mysql’de bazı durumlarda bazı tablolara erişemeyebilirsiniz. Tablonuzu check ettiniz ve mysqld: Incorrect information in file: hatasını aldınız.

Mysql hata logu aşağıdaki gibi:

Bu hatada test tablonuza ait frm dosyasının bozulduğuna dair bir hatadır.

.frm dosyasıda neyin nesi dersen;

Mysql Database Metadata dosyasıdır. Her oluşturduğunuz  tablonun adı ile bir frm dosyası oluşturulur.

Bir MySQL veri tabanı için biçimlendirme bilgisini veya yapı verisini içerir; veri tabanında
depolanan tabloları belirtir ve alanları ve her tablonun yapısını tanımlar.

FRM dosyaları beraberinde veri tabanında saklanan asıl veriyi içeren bir .MYD(data) dosyası ile kaydedilir. Her iki dosya da MySQL’in veri tabanını tanıması için gereklidir.

Eğer MySQL veri tabanı MyISAM tabloları kullanıyorsa, bir .MYI(index) dosyası da ayrıca kullanılır ve gereklidir.

.frm dosyaları mysql’in data dizininde bulunur. Data dizini neresi öğrenmek isterseniz aşağıdaki komut ile bunu öğrenebilirsiniz.

test tablosu için ilgili .frm dosyası Datadir/veritabanı_adı altındadır.

 hexadecimal-dump kullanarak test.frm dosyasına bakalım.

.frm dosyaları hakkında daha ayrıntılı bilgi için buraya bakabilirsiniz.

Bu bilgilerin ardından gelelim problemin çözümüne;

test tablosuyla aynı yapıya sahip test2 tablosu oluşturalım.

Daha sonra bir kayıt ekleyelim.

Sonra mysql’i durdurup ardından test.frm üzerine test2.frm kopyalayın.

Mysql yeniden başlattıktan sonra tabloya erişmi kontrol edin.