كيف يمكنك تحميل قواعد بيانات SQL Server إلى استضافة مشتركة والبيئات ؟

StackOverflow https://stackoverflow.com/questions/245252

  •  05-07-2019
  •  | 
  •  

سؤال

لدينا مشكلة مشتركة تتحرك التنمية لدينا قاعدة بيانات SQL 2005 على مشترك ملقمات ويب في موقع استضافة الشركات.

من الناحية المثالية نود نظام نقل هيكل قاعدة البيانات و البيانات نسخة طبق الأصل.

وهذا من شأنه أن يشيع يتحقق من خلال استعادة نسخة احتياطية.ولكن لأنها مشتركة ملقمات SQL, نحن لا يمكن استعادة النسخ الاحتياطية – نحن لا تعطى الوصول إلى الجهاز الفعلي.

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

وبالتالي نحن مع اليسار فوضوي العملية:

  1. إنشاء برنامج نصي في SQL server 2005 بإنشاء قاعدة بيانات في SQL server 2000 الشكل.
  2. تشغيل البرنامج النصي إنشاء SQL 2000 قاعدة بيانات في SQL server 2000.
  3. إنشاء برنامج نصي في SQL server 2000 الذي يولد هيكل قاعدة البيانات دون فهارس المفاتيح الخارجية.
  4. تشغيل هذا البرنامج النصي على خادم الإنتاج.لديك الآن بنية قاعدة البيانات تحميل البيانات.
  5. استخدام SQL 2005 لنقل البيانات إلى خادم الإنتاج مع المهام/استيراد البيانات.
  6. استخدام SQL 2000 لإنشاء البرنامج النصي الذي يخلق قاعدة البيانات مع الفهارس والمفاتيح.
  7. نسخ الأوامر التي تولد الفهارس و المفاتيح الخارجية فقط.هذه هي الواقعة بعد إنشاء جدول الأوامر.ملاحظة:في SQL server 2005 ، الفهارس الأجنبية مفاتيح يتم إنشاء واحدة لا يمكن فصلها بسهولة.
  8. تشغيل هذا البرنامج النصي على بيانات الإنتاج.

فويلا!قاعدة البيانات التي تم تحميلها مع جميع البيانات و مفاتيح/عقبات في المكان.ما فوضوي وعرضة للخطأ النظام.

هل هناك شيء أفضل ؟

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

المحلول

سكوت قو قد كتبت بعض المشاركات في هذا الموضوع :

قاعدة بيانات SQL Server النشر أدوات استضافة المواقع

نصائح أخرى

الجيل النصوص الجميلة لإنشاء كائنات قاعدة البيانات ، ولكن ليس من أجل نقل معلومات قاعدة البيانات.على سبيل المثال, العميل-قواعد بيانات معينة فيها المطور مطلوب قبل ملء بعض البيانات.

واحدة من القضايا التي واجهتني مع هذه ماكس أنواع في SQL Server 2005+.(nvarchar(max), varchar(max) ، إلخ.) بالطبع, هذا هو أسوأ عندما كنت في الواقع باستخدام Sql Server Express, التي لا تسمح المصدرة من إنشاء البرامج النصية الخاصة بك لإنشاء البيانات.

أنصح التحول إلى شركة استضافة يسمح لك أن يكون لديك القدرة على FTP ملفات النسخ الاحتياطي و لا تتطلب منك استخدام البرامج النصية الخاصة بك.هذا هو بيت القصيد من SQL Server, صحيح ؟ لتوفير المزيد من الأدوات التي ودا للاستخدام.إذا كانت شركة استضافة يأخذ بعيدا يمكنك الانتقال إلى الخلية لسهولة في إلقاء المعلومات.

WebHost4Life هو منقذا للحياة في هذه الفئة.أنها توفر بروتوكول نقل الملفات إلى خادم قاعدة البيانات لتحميل ملف النسخ الاحتياطي أو MDF و LDF ملفات المرفقات!أنا مستاء جدا عندما رأيت GoDaddy أو لديهم قيود مماثلة ذكرت.أداة لم تخبرني أنها كانت سيئة استيراد و لم أستطع معرفة السبب موقعي كان عائدا مع 500 الأخطاء.

ملاحظة واحدة أخرى:أنا لست متأكدا مما يعتبر أكثر أمنا.أنا تمكين الاتصالات الخارجية في GoDaddy و على اتصال مع إدارة Studio, وكنت قادرا على رؤية كل قاعدة بيانات على الخادم!لم أستطع الوصول إليها, ولكن الآن لدي تلك المعلومات.ضربة مزدوجة هو أن GoDaddy يتطلب اسم مستخدم DB يكون نفس ديسيبل!الآن كل ما عليك القيام به هو غير كلمات السر ضد تلك المئات من DBs!

Webhost4life, من ناحية أخرى, إلا المحددة الخاصة بك قاعدة البيانات المعروضة في إدارة Studio.وأنها تمكنك من اختيار الخاصة بك DB اسم و اسم المستخدم مستقلة عن بعضها البعض.إلا أنها إلحاق نفس معرف فريد على نهاية المستخدم & db أسماء من أجل منعهم من تعارض مع الآخرين.

يجب أن لا تعتمد على استعادة النسخ الاحتياطي نسخ / نقل قواعد البيانات.تحتاج إلى استخدام مخطوطات - ثق بي سوف تحصل على أفضل في ذلك.

لقد استخدمت RedGate الأدوات مقارنة مع استضافة مشتركة و أنه يعمل بشكل جيد.

قاعدة بيانات الجيل البرامج النصية هي فوضوي, ولكن لديهم أيضا العديد من المزايا التي ...حسنا, جعل الألم أكثر احتمالا.

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

أول 3 دقائق بعد أن كنت قد أنجزت هذه الأمور الرائعة:يمكنك تجديد قاعدة بيانات جديدة مع أو بدون بيانات الاختبار في بضع دقائق.للأسف بعد 3 دقائق ، قواعد البيانات من التوافق ، على الأقل من حيث البيانات ، إن لم يكن تماما كما في كثير من الأحيان من حيث الهيكل.

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

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

تحقق ما إذا كان webhsoting الشركة توفر myLittleBackup هذا نهائيا الحل الأسهل "تثبيت" ديسيبل من تطوير الخادم المشترك sql server

الجواب ل SQL Server 2008 المستخدمين.

لقد كانت لدي نفس المشكلة كما OP لكن كنت تستخدم SQL Server 2008 و استضافة مشتركة من شركة GoDaddy أو.هنا هو الحل نسخ DB + البيانات إلى GoDaddy قاعدة البيانات...

في Visual Studio 2010 ، انتقل إلى مستكشف الملقم (في مقابل التعبير, أعتقد أنه يدعى مستكشف قاعدة البيانات).انقر بزر الماوس الأيمن على قاعدة البيانات واختر نشر مزود ...وهذا يفتح معالج نشر قاعدة بيانات ...تذهب من خلال المعالج وانها سوف تخلق xxx.sql ملف على الكمبيوتر المحلي الخاص بك ...

فتح Studio إدارة ملقم SQL ثم قم بتوصيل إلى GoDaddy قاعدة البيانات (يجب أن يكون لديك بالفعل إنشاء هذا عبر GoDaddy لوحة التحكم في الموقع) ...

افتح مستكشف ويندوز و تجد xxx.ملف sql ثم انقر نقرا مزدوجا فوق ذلك.السيناريو يجب أن تفتح في SSMS.تنفيذ البرنامج النصي "في السليم قاعدة البيانات" ...فويلا ، به.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top