كيف يمكنني استعادة من قطرة الأوامر قاعدة البيانات باستخدام mysql الثنائية السجل ؟
سؤال
كيف يمكنني استعادة قاعدة بيانات mysql التي أسقطت استخدام "قاعدة بيانات" القيادة ؟ لدي الوصول إلى ثنائي السجلات التي ينبغي أن تجعل هذا النوع من التراجع ممكنا.
المحلول
الوثائق سيء.فإنه يلمح إلى إسقاط قاعدة البيانات التي يمكن استردادها ، ولكن فقط في ظروف غريبة أنا لست على دراية http://dev.mysql.com/doc/refman/5.0/en/binary-log.html
وفقا مستندات, binlogs هي مجرد سلسلة من الأوامر المنفذة على أساس معين نقطة مرجعية.بحيث عندما فعلت "قاعدة بيانات" بدلا من الذهاب "أوه ، إنه droppping قاعدة البيانات ، يجب أن يعود الآن فقط في حالة" انها مجرد كتب "قاعدة بيانات" إلى آخر binlog.الانتعاش ليست بسيطة كما لعب الشريط إلى الوراء.
ما تحتاج إلى القيام به هو استعادة قاعدة البيانات من نسخة الأخيرة المعروفة جيدا ، وتطبيق binlogs الذي حدث بين استرداد نقطة إسقاط القيادة.
http://dev.mysql.com/doc/refman/5.0/en/recovery-from-backups.html
كيف يحدد binlogs استخدام tho, واضح.
لا يوجد شيء أفضل من وجود ملف كامل نظام النسخ الاحتياطي.و على الأقل يجب أن يكون هؤلاء إلى العودة إلى.
نصائح أخرى
إذا لم يكن لديك نسخة احتياطية من قاعدة البيانات ، كنت من الحظ. قطرةجي قاعدة بيانات دائمة.
على افتراض أن لديك نسخة احتياطية سجل ثنائي يحمل الأشياء التي حدث منذ أن النسخ الاحتياطي.باستخدام mysqlbinlog فائدة هل يمكن أن تفعل شيئا مثل:
mysqlbinlog the_log_file > تحديث.sql
على الرغم من أنني أعتقد قد تحتاج إلى تعديل هذا الملف لإزالة أي شيء كنت لا ترغب في تنفيذ مرة أخرى (مثل إسقاط قاعدة بيانات).
حظا سعيدا!
لا دعم أي طرف.
لذلك سأجيب:
أن لا يكون في الوضع الخاص بك مرة أخرى تثبيت بسيطة جدا و قوي جدا automysqlbackup (إذا كنت على لينكس):
سودو الرابطة بين الحصول على تثبيت automysqlbackup
تكوينه:
sudo nano /etc/default/automysqlbackup
ثم تحميل المحتوى تلقائيا إلى دروببوإكس ، أوبونتو واحد أو ما شابه ذلك.
عندها فقط العيش بسعادة :)
فقط لاستكمال كينت فريدريك الجواب ، يمكنك العودة إلى الحالة السابقة drop database
الأمر إذا كنت تستخدم تسجيل ثنائي منذ بإنشاء قاعدة البيانات.