Tüm MySQL Veritabanları bir gecede kayboldu


15

Bir müşteriden web sitesinin kapalı olduğunu belirten bir çağrıdan sonra, RackSpace Cloud Windows 2008 sunucumuzdaki MySQL'in çalışmadığını gördüm. MySQL'i yeniden başlattım ancak MySQL veritabanına sahip tüm web siteleri için tarayıcıda 'Erişim reddedildi' hatasını aldım. MySql Server 5.5 / data baktığınızda mysql ve performance_schema dışında klasör yok. Tüm veritabanları ve veriler silindi. Herkes neler olabileceğini ve verinin nereye gittiğini biliyor mu? Üstelik bu sunucunun yedekleme servisimizde eksik olduğunu buldum.

ps, bu sabah saat 4: 01'de Windows güncelleme sonra gibi görünüyor.


Sisteminizde ve MySQL günlüklerinizde alakalı girişler var mı?
user9517

1
"Üstelik bu sunucunun yedekleme servisimizde eksik olduğunu buldum." Ahh.
Tom O'Connor

MySQL: InnoDB: Günlük dosyası başladığımda günlük dosyası 09:00 'da başlıyor. \ ib_logfile0 mevcut değil: oluşturulacak yeni InnoDB: Günlük dosyasını ayarlama. \ ib_logfile0 boyutu 5 MB olarak InnoDB: Veritabanı dosyayı fiziksel olarak yazar : bekleyin ...
Iain

1
Bu son hendek daha fazla, ama belki bazı veri kurtarma yazılımı deneyebilirsiniz. Yine de sunucuyu en kısa zamanda kapatmalı ve disklere çevrimdışı olarak erişmelisiniz.
Dan

7
Doğru dizinde aradığınızdan emin misiniz? Biri, datadirMySQL'i yeniden yüklemeden yapılandırma dosyalarında değişmiş olabilir ve daha sonra bu sorun yalnızca MySQL'in yeniden başlatılmasından sonra ortaya çıkabilir (muhtemelen sistem güncellemesi tarafından tetiklenir).
gertvdijk

Yanıtlar:


32
  1. Rackspace desteğine başvurun .. İşte bunun için varlar.
  2. Önerdikleri her şeyi yapın.
  3. Bu işe yaramazsa, Dan'ın veri kurtarma yazılımı önerisini deneyin.
  4. Bunu büyüme ve öğrenme için bir fırsat olarak kullanın.

Her zaman tüm sunucularınızın yedeklendiğinden emin olun ve yedeklemeleri düzenli olarak test edin. Asla ondan geri yükleyebileceğinizi test etmezseniz bir yedekleme hizmetine sahip olmanın bir anlamı yoktur.

Oh, ve otomatik güncellemeleri kapatın. Bunları ancak güncellemenin etkisini, tercihen aynı şekilde yapılandırılmış başka bir sunucuda test ettikten sonra yapın.


6
+1 Bu gerçekten yedeklenmemiş verilerin nasıl geri yükleneceğini soran sorulara standart bir cevap olmalıdır.
dunxd

2
Yardımlarınız için teşekkürler çocuklar. Gertvdijk, Program Files / MySQL'in yanı sıra ProgramData / MySQL altında veri klasörlerini bulduğunda beni doğru satırlara koydu ve MySQL'i yeniden yükledikten sonra veri klasörleri ve ibdata1 dosyası kombinasyonundan geri yüklendi. Yolsuzluğa neden olan ve MySQL'in başlatılmasını engelleyen orijinal sorunun nedenine gelince, sahip olduğum tek ipucu bu sabah saat 4'te Windows güncellemesidir, ancak kesin olarak söyleyemeyiz. Bu sunucunun yedekleme programından çıkarıldığını vurguladı ve bu sorunla karşılaşacaktı.
Iain

1
Tam olarak hangi güncelleştirmelerin yüklü olduğunu başka bir yolla denetlemediğiniz sürece, sunucu ayarlarını sistem güncellemelerinin otomatik olarak ve gözetimsiz yüklenmeyecek şekilde değiştirmeyi düşünmelisiniz. Güncelleme, sistemin davranışını müşterilerinizin web sitelerini kıracak şekilde değiştirirse ne olur?
CVn

5
Bu sınırda flamebait ama mysql veritabanlarınızı bir linux sunucusuna taşımayı düşünün. Otomatik güvenlik güncelleştirmeleri hiçbir zaman sunucuyu yeniden başlatmaz ve her büyük dağıtım sağlayıcısı, güncelleştirmelerin mysql gibi bir çekirdek porgramla uyumluluğunu test eder (Diğer yandan ne Microsoft ne de Oracle mysql'i bir Windows güncellemesine karşı test eder). Bir yedekleme cronjob muhtemelen çoğu windows yedekleme yazılımından biraz daha kolay ve daha güvenilirdir.
Bryan Waters
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.