سؤال

عنوان هي النفس التفسيرية.هل هناك طريقة مباشرة لفعل مثل هذا النوع من الاستيراد ؟

هل كانت مفيدة؟

المحلول

على .باك الملفات من ملقم SQL في Microsoft الشريط شكل (MTF) المرجع: http://www.fpns.net/willy/msbackup.htm

الملف bak ربما تحتوي على LDF و MDF الملفات التي يستخدم SQL server لتخزين قاعدة البيانات.

سوف تحتاج إلى استخدام SQL server إلى استخراج هذه.SQL Server Express مجانا و سيتم القيام بهذه المهمة.

لذا تثبيت SQL Server Express edition و فتح SQL Server Powershell.هناك تنفيذ sqlcmd -S <COMPUTERNAME>\SQLExpress (أثناء تسجيل الدخول كمسؤول)

ثم إصدار الأمر التالي.

restore filelistonly from disk='c:\temp\mydbName-2009-09-29-v10.bak';
GO

هذه قائمة محتويات النسخ الاحتياطي - ما عليك هو أول المجالات التي تخبرك المنطقية أسماء أحد سيكون قاعدة البيانات الفعلية وغيرها من ملف السجل.

RESTORE DATABASE mydbName FROM disk='c:\temp\mydbName-2009-09-29-v10.bak'
WITH 
   MOVE 'mydbName' TO 'c:\temp\mydbName_data.mdf', 
   MOVE 'mydbName_log' TO 'c:\temp\mydbName_data.ldf';
GO

عند هذه النقطة لديك استخراج قاعدة البيانات - ثم تثبيت مايكروسوفت "Sql البيانات على شبكة الإنترنت المسؤول". جنبا إلى جنب مع هذا أداة التصدير وسيكون لديك برنامج نصي SQL الذي يحتوي على قاعدة البيانات.

نصائح أخرى

وأنا لم يتمكنوا من العثور على طريقة للقيام بذلك مباشرة.

وبدلا من ذلك I استيراد ملف باك إلى SQL Server 2008 Express ثم تستخدم <لأ href = "http://dev.mysql.com/doc/migration-toolkit/en/index.html" يختلط = "noreferrer" > الخلية هجرة الأدوات .

وعملت مثل السحر!

الخلية قد طلب لاستيراد db من microsoft sql.الخطوات:

  1. فتح الخلية منضدة
  2. انقر فوق "قاعدة بيانات الهجرة" (إذا كان لا تظهر لديك لتثبيته من الخلية تحديث)
  3. اتبع الهجرة قائمة المهام باستخدام بسيطة المعالج.
  1. فتح Studio إدارة ملقم SQL على الجهاز المحلي.
  2. حق انقر فوق قواعد بيانات المجلد.من القائمة المنبثقة حدد قاعدة بيانات جديدة.
  3. أدخل اسم قاعدة البيانات ثم انقر فوق موافق.
  4. حق انقر فوق قاعدة بيانات جديدة الرمز.من القائمة المنبثقة حدد المهام -> استعادة -> البيانات الخاصة بنا.
  5. حدد من جهاز الخيار ثم انقر فوق الزر "استعراض".
  6. انقر فوق إضافة ثم انتقل إلى الملف المناسب.انقر فوق "موافق".
  7. في استعادة إطار قاعدة البيانات ، حدد مربع الاختيار بجوار ملف BAK.
  8. التبديل إلى صفحة الخيارات.حدد الكتابة فوق قاعدة البيانات الموجودة خانة الاختيار.انقر فوق "موافق".
  9. التحقق من محتويات قاعدة البيانات الخاصة بك ، التي تنشط الآن على جهازك المحلي.

وعلى الرغم من بلدي ماي خلفية محدودة، وأنا لا أعتقد أن لديك الكثير من الحظ القيام بذلك. ومع ذلك، يجب أن تكون قادرا على ترحيل أكثر من جميع البيانات الخاصة بك من خلال استعادة ديسيبل إلى خادم MSSQL، ثم إنشاء حزمة مباحث أمن الدولة أو DTS لارسال الجداول والبيانات إلى خادم MySQL.

ويساعد هذا الأمل

وأشك بشدة. قد ترغب في استخدام DTS / جهاز مباحث أمن الدولة للقيام بذلك كما يقول ليفي. واحد تعتقد أنك قد ترغب في القيام به هو البدء في عملية في الواقع دون استيراد البيانات. فقط تفعل ما فيه الكفاية للحصول على بنية الجدول الأساسية معا. ثم انك تريد الذهاب الى تغيير حول بنية الجدول الناتج، لأن ما المتبادل هيكل من المرجح أن تنشأ ستكون هشة في أحسن الأحوال.

قد يكون لديك أيضا أن أغتنم هذه خطوة أخرى إلى الأمام وخلق منطقة التدريج التي تأخذ في جميع البيانات أولا ن سلسلة (VARCHAR) النموذج. ثم يمكنك إنشاء برنامج نصي التي لا التحقق من صحة وتحويل للحصول عليه في قاعدة البيانات "حقيقي"، لأن قاعدتي لا تعمل دائما بشكل جيد معا، وخاصة عند التعامل مع التواريخ.

وهذه الطريقة كنت جزءا شملت طريقة ريتشارد هاريسون:

<اقتباس فقرة>   

وهكذا، تثبيت SQL Server 2008 اكسبرس   طبعة،

وهذا يتطلب التحميل من منصة الويب المثبت "wpilauncher_n.exe" وبمجرد الانتهاء من هذه نقرة المثبتة على اختيار قاعدة البيانات (هل هناك حاجة أيضا لتحميل أطر وأوقات التشغيل)

وبعد التركيب الذهاب إلى النوافذ قيادة الفوري و:

<اقتباس فقرة>   

واستخدام المساعدة Sqlcmd -S \ SQLEXPRESS (حين   دخولك كمسؤول)

     

وبعد ذلك بإصدار الأمر التالي.

     

واستعادة filelistonly من   القرص = 'ج: \ مؤقت \ mydbName-2009-09-29-v10.bak'؛   GO وهذه القائمة محتويات   النسخ الاحتياطي - ما تحتاجه هو الأول   الحقول التي اقول لكم أسماء منطقية   - واحد سوف تكون قاعدة البيانات الفعلية والآخر ملف السجل

     

واستعادة قاعدة البيانات mydbName من   القرص = 'ج: \ مؤقت \ mydbName-2009-09-29-v10.bak' WITH 'mydbName "MOVE TO   'C: \ TEMP \ mydbName_data.mdf، MOVE   "mydbName_log 'TO   'C: \ TEMP \ mydbName_data.ldf'؛ GO

وأنا أطلقت الويب منصة المثبت ومن علامة التبويب الجديدة ما أنا ركبت Studio إدارة ملقم SQL وتصفحها ديسيبل للتأكد من أن البيانات كانت هناك ...

وعند هذه النقطة حاولت الأداة المضمنة مع MSSQL "SQL استيراد وتصدير معالج" ولكن نتيجة لتفريغ CSV شملت فقط من أسماء الأعمدة ...

وبدلا من ذلك أنا فقط تصدير النتائج استفسارات مثل "حدد * من المستخدمين" من Studio إدارة ملقم SQL

قواعد بيانات SQL Server جدا Microsoft الملكية.خيارين أستطيع التفكير هي:

  1. تفريغ قاعدة البيانات في ملف CSV, XML أو شكل مماثل انك ثم تحميل إلى الخلية.

  2. إعداد اتصال ODBC إلى الخلية ثم باستخدام DTS نقل البيانات.كما تشارلز غراهام قد اقترح ، قد تحتاج إلى بناء الجداول قبل القيام بذلك.ولكن هذا ليس سهلا كما قص ولصق من إدارة المؤسسة SQL ويندوز المقابلة الخلية النافذة.

لأولئك الذين يحاولون حل ريتشارد أعلاه، وهنا بعض المعلومات الإضافية التي قد تساعد على التنقل الأخطاء الشائعة:

1) عند تشغيل استعادة filelistonly قد تحصل خطأ نظام التشغيل 5 (تم رفض الوصول). إذا كان هذا هو الحال، إدارة تكوين ملقم SQL مفتوح وتغيير معلومات تسجيل الدخول لSQLEXPRESS إلى مستخدم الذي لديه امتيازات الكتابة المحلية.

2) @ "وهذا سرد محتويات النسخة الاحتياطية - ما تحتاج إليه هو الحقول الأولى التي أقول لك أسماء منطقية" - إذا يسرد الملف الخاص بك أكثر من اثنين من رؤوس ستحتاج إلى حساب أيضا ما يجب القيام به مع تلك الملفات في الأمر استعادة قاعدة البيانات. إذا كنت لا تشير إلى ما يجب القيام به مع الملفات خارج قاعدة البيانات وسجل، سيقوم النظام على ما يبدو في محاولة لاستخدام السمات المسرودة في ملف باك. سوف استعادة ملف من بيئة شخص آخر إنتاج "المسار ديه سمات غير صالحة. فإنه يحتاج إلى أن يكون الدليل '(كما لا وجود المسار في السؤال على جهازك). مجرد تقديم بيان MOVE حل هذه المشكلة.

في حالتي كان هناك ثالث ملف نوع FTDATA. الأمر MOVE أضفت:

MOVE 'mydbName_log' TO 'c:\temp\mydbName_data.ldf',
MOVE 'sysft_...' TO 'c:\temp\other';

وفي حالتي أنا فعلا لجعل دليل جديد للملف الثالث. في البداية حاولت إرسالها إلى نفس المجلد مثل ملف يمول إلا أن أنتجت 'فشل في التهيئة بشكل صحيح' خطأ في ملف FTDATA الثالث عندما أعدم الاستعادة.

وملف .bak من SQL Server غير محددة إلى أن لهجة قاعدة البيانات، وليس متوافق مع الخلية.

etlalchemy لترحيل قاعدة بيانات خادم SQL الخاصة بك في الخلية. هو أداة مفتوحة المصدر بأنني خلقت لتسهيل الهجرة سهلة بين مختلف في RDBMS.

ويتم توفير تركيب سريعة والأمثلة هنا على الصفحة جيثب ، وشرح أكثر تفصيلا للمشروع أصول يمكن العثور rel="nofollow"> href="http://thelaziestprogrammer.com/sharrington/databases/migrating-between-databases-with-etlalchemy" .

scroll top