الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة في عمل Attach ل Database ساعدوني أرجوكم

مغلق
بدأه كبير المبرمجين في 27 ديسمبر 2007 · 12 رد · 4,632 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

إخوتي عندي مشكلة لا إعرف سببها

عندما أقوم بمحاولة عمل Attach لداتا بيز فإن الـ SQL server 2005 يظهر لي هذه الرسالة ما السبب أرجوكم

الصورة بالمرفقات

كما أنني لا أستطيع نسخ الداتا بيز اطلاقا

علما بأن هذه الداتا بيز كانت تعمل قبل أن أفرمت الجهاز

وقبل أن أفرمته عملت لها DeAttach وبعد ذلك لم تعد تعمل

أرجوك مساعدتي هذه الداتا بيز عليها أمور مهمة جدا

post-89584-1198762204_thumb.gif

#2
اقتباس
عندما أقوم بمحاولة عمل Attach لداتا بيز فإن الـ SQL server 2005 يظهر لي هذه الرسالة ما السبب أرجوكم

هذا الأمر غير وارد الحدوث عادة ..

اقتباس
كما أنني لا أستطيع نسخ الداتا بيز اطلاقا

كيف يعني ما بتقدر تنسخها

تم تعديل هذه المشاركة بواسطة imadouzoun في 28 ديسمبر 2007 في 03:21

دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله

أخوكم في الله..  Imad Ozone

#3
imadouzoun كتب:
هذا الأمر غير وارد الحدوث عادة ..

كيف يعني ما بتقدر تنسخها

نعم ياسيدي أنا لا أستطيع نقل أو نسخ الداتا بيز

حيث يعطيني رسالة بعدم السماح بنقل أو نسخ الدات بيز

أرجو ممن لديه معرفة بالسبب إخباري حالا

#4

لا حول ولا قوة إلا بالله

ألا يوجد من يحل لي هذه المشكلة

#5

عدم إمكانية نسخ الداتا بيز ده يعنى ان الـ Serivce بتاعت الـ SQL Server 2005 شغاله و فاتحه ملف الـ Database فعلشان تنسخها قم بإغلاق هذه الـ Service و إسمها إن لم تكن تعرفه SQL Server (MSSQLSERVER) بعد الإغلاق يمكن نسخ ملف الداتا بيز جيدا و بدون مشاكل.

ثانيا بالنسبة لمشكلة عمل Attach لها، إذا كان فى المستطاع قم برفع الـ DB إن كان حجمها صغير لنحاول عمل Attach لها على جهازى لنعرف سبب رفض الإتصال بها

و الله ولى التوفيق

مدونتي: C++ Tips and Tricks

#6

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

وارى ان مكان الملف على E: فارجو ان لايكون شيء غير القرص الصلب

#7
اقتباس
عدم إمكانية نسخ الداتا بيز ده يعنى ان الـ Serivce بتاعت الـ SQL Server 2005 شغاله و فاتحه ملف الـ Database فعلشان تنسخها قم بإغلاق هذه الـ Service و إسمها إن لم تكن تعرفه SQL Server (MSSQLSERVER) بعد الإغلاق يمكن نسخ ملف الداتا بيز جيدا و بدون مشاكل.

كلامك أخي الكريم سليم 100% وأنا كنت بدي قول نفس الكلام .. لكنه قال أن الجهاز قد تمت فرمتته مؤخراً .. يعني الـ Database ليست متصلة بأي شيء في هذه الحالة !! .. وهذا أمر حيرني صراحة فعدم إمكانية نسخ قاعدة البيانات قد لايكون سببه من الـ SQL Server نفسه .

لذا أنا أرى أن يدخل إلى النظام باستخدام الوضع الآمن Safe Mode ويحاول نسخها إلى مجلد آخر من جديد لنرى هل الأمر يتعلق بالسيرفس أم لا ..

بالتوفيق .

تم تعديل هذه المشاركة بواسطة imadouzoun في 31 ديسمبر 2007 في 13:57

دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله

أخوكم في الله..  Imad Ozone

#8
imadouzoun كتب:
كلامك أخي الكريم سليم 100% وأنا كنت بدي قول نفس الكلام .. لكنه قال أن الجهاز قد تمت فرمتته مؤخراً .. يعني الـ Database ليست متصلة بأي شيء في هذه الحالة !! .. وهذا أمر حيرني صراحة فعدم إمكانية نسخ قاعدة البيانات قد لايكون سببه من الـ SQL Server نفسه .

لذا أنا أرى أن يدخل إلى النظام باستخدام الوضع الآمن Safe Mode ويحاول نسخها إلى مجلد آخر من جديد لنرى هل الأمر يتعلق بالسيرفس أم لا ..

بالتوفيق .

لقد عملت هذه الطريقة من قبل ولم تنجح حيث دخلت بعدة طرق وبرامج غير الويندوز ولم أنجح في نسخ الداتا بيز

حاولت رفع الداتا بيز لكن ظهرت لي رسالة تخبرني أنني لم أختر ملف أي أنني لن أستطيع رفع الداتا بيز لكم لتجروها عندكم

رجاء من عنده حل أو تفسير للمشكلة فلا يبخل علي به

#9

الرسالة التى تظهر لك تقول

Faild to retrive data from this request

و تعنى ان ملف قاعدة البيانات تم فتحة و لكن محتويات الملف غير مقرؤة لذا فلا تستطيع الـ SQLServer ان تقرأه و هذه المشكله لها عدة أسباب سأسرد منهم ما اعرفه و كذلك حله

1. ان يكون الـ Drive الموجود به قاعدة البيانات نوعه NTFS و خاصيه Compress Drive to save Disk space مفعله و بالتالى إحتمال أن يكون نظام التشغيل قد ضغط الملف و بذلك لن تستطيع الـ SQLServer قرائته.

والحل

من قائمة Tools أختر Folder Options إختر View Tab ثم قم بتفعيل الخاصية Show Encrypted or Compressed NTFS files in Color، بعدها إذهب إلى الملف مرة اخرى فإن وجدت اسمه باللون الأزرق فاعلم ان نظام التشغيل قام بضغطه و لتقوم بإسترجاعه قم بالدخول على الـ Save Mode ثم إضغط Right Click على الملف ثم إختر Advanced ومنها قم بالغاء تفعيل الخاصية Compress Contents to save disk space، لقد قلت الدخول على Safe Mode فى حالتك انت فقط لتستطيع التعديل عل الملف.

2. أن تكون قاعدة البيانات موجوده و لسوء الحظ على Bad Sector و بالتالى سيمنعك نظام التشغيل من الدخول على محتويات هذا الملف.

و الحل

ادخل على Command Prompt ثم اكتب الأمر التالى

chkdsk Drive: /x /f /r

سيقوم نظام التشغيل بمحاولة لمعالجة الـ Bad Sector وفى حالة الفشل او النجاح سيقوم بعزل البيانات الموجوده على الجزء التالف و بالتالى تستطيع نسخها فى اى مكان اخر.

3. ملف قاعدة البيانات تم إتلافه،و فى تلك الحالة اعتقد انه لايوجد حل لإنها تالفة و لكن قم بملاحظة حجمها فقد يفيدك فى معرفة ما إن كانت البيانات بداخلها ام ذهبتا ادراج الرياح فإن كان حجمها كما تركتها من قبل فتوجد برامج تستطيع معالجة الـ Header الخاص بقواعد البيانات التالفة هذا إن كان محتويات قاعدة البيانات سليم.

الحالات السابق ذكرها واجهتنى من قبل إلا الحالة الأخيره فقد قالها لى صديق و لم استخدمها

و الله ولى التوفيق

مدونتي: C++ Tips and Tricks

#10
Game Expert كتب:
الرسالة التى تظهر لك تقول

Faild to retrive data from this request

و تعنى ان ملف قاعدة البيانات تم فتحة و لكن محتويات الملف غير مقرؤة لذا فلا تستطيع الـ SQLServer ان تقرأه و هذه المشكله لها عدة أسباب سأسرد منهم ما اعرفه و كذلك حله

1. ان يكون الـ Drive الموجود به قاعدة البيانات نوعه NTFS و خاصيه Compress Drive to save Disk space مفعله و بالتالى إحتمال أن يكون نظام التشغيل قد ضغط الملف و بذلك لن تستطيع الـ SQLServer قرائته.

والحل

من قائمة Tools أختر Folder Options إختر View Tab ثم قم بتفعيل الخاصية Show Encrypted or Compressed NTFS files in Color، بعدها إذهب إلى الملف مرة اخرى فإن وجدت اسمه باللون الأزرق فاعلم ان نظام التشغيل قام بضغطه و لتقوم بإسترجاعه قم بالدخول على الـ Save Mode ثم إضغط Right Click على الملف ثم إختر Advanced ومنها قم بالغاء تفعيل الخاصية Compress Contents to save disk space، لقد قلت الدخول على Safe Mode فى حالتك انت فقط لتستطيع التعديل عل الملف.

2. أن تكون قاعدة البيانات موجوده و لسوء الحظ على Bad Sector و بالتالى سيمنعك نظام التشغيل من الدخول على محتويات هذا الملف.

و الحل

ادخل على Command Prompt ثم اكتب الأمر التالى

chkdsk Drive: /x /f /r

سيقوم نظام التشغيل بمحاولة لمعالجة الـ Bad Sector وفى حالة الفشل او النجاح سيقوم بعزل البيانات الموجوده على الجزء التالف و بالتالى تستطيع نسخها فى اى مكان اخر.

3. ملف قاعدة البيانات تم إتلافه،و فى تلك الحالة اعتقد انه لايوجد حل لإنها تالفة و لكن قم بملاحظة حجمها فقد يفيدك فى معرفة ما إن كانت البيانات بداخلها ام ذهبتا ادراج الرياح فإن كان حجمها كما تركتها من قبل فتوجد برامج تستطيع معالجة الـ Header الخاص بقواعد البيانات التالفة هذا إن كان محتويات قاعدة البيانات سليم.

الحالات السابق ذكرها واجهتنى من قبل إلا الحالة الأخيره فقد قالها لى صديق و لم استخدمها

و الله ولى التوفيق

جزاك الله خيرا على جهودك

ولكن لم ينجح أي شيء مما قلت للأسف

#11

:hmm:

مدونتي: C++ Tips and Tricks

#12

اعتقد ان المشكلة في الصلاحيات او في التشفير لهذا الملف فبسبب اختلاف نظام التشغيل ومعرفات المستخدمين اختلفت الصلاحيات فنظام التشغيل اصبح يعتبر هذا الملف خارج عن صلاحياتك .

اعتقد يوجد لها حل وتفسير افضل عند عند خيراء الشبكات

#13

السلام عليكم

من باب التجربة جرب معايا الطرق دي ...

1- طبعا لازم تعمل UNINSTALL لل سيكوال سيرفر

2- من خلال MSCONFIG اغلق كل البرامج والسيرفسز اللي بتشتغل في ال STARTUP

3- استخدم برنامج UNLOCKER ASSISTANT وده موجود في المنتدى ومجاني

حاول نسخ ملف الداتابيز ولو فيه اي سيرفس بتستخدم الملف ده البرنامج السابق هيحل المشكله دي تماما

بعد نجاح عمليه النقل (لو نجحت يعني هههههه ) حاول تعمل ال ATTACH لو ظهرتلك نفس الرساله هتعمل حركة دايما بنعملها في SQL SERVER 2000 وانا بصراحه ماشتغلتش على 2005 لسه ومش عارف الدنيا هناك عامله ازاي

هتنشئ قاعدة بيانات جديده بنفس اسم قاعدة بياناتك القديمة

خزنها في اي مكان على الهارد ديسك

اقفل السيرفر ( يعني اعمله STOP)

انقل ملف قاعدة بياناتك القديمة واعملها ربليس مع ملف قاعدة بياناتك الجديده

شغل السيرفر

في اغلب الاحوال السيرفر هيعملها SUSPECT وده عادي جدا ومفيش اي مشكله

انا قاعد في سايبر وبصراحه مش فاكر الكود كان ايه بس عموما حضرتك تفتح HELP وتبحث عن الطريقه اللي تعدل بيها حقل STATE في جدول SYSDATABASES

وتغير حاله قاعدة بياناتك حسب جدول موجود في ملفات HELP بيوضحلك حالات الملفات

اقفل السيرفر وافتحه تاني

انشئ قاعدة بيانات جديده وانقل ليها (IMPORT DATA) كل محتويات ملف الداتابيز المتعب بتاع حضرتك

وبعد كده تدعيلي سواء نجحت الطريقة او لاه

اه نسيت حاجه مهمه ... واحد من الاخوه بيقول ان ملف قاعدة البيانات ممكن يكون تالف واستعوض ربنا فيه ، بس حبيت اقوله ان ده مستحيل حتى لو تالف تقدر ترجع كل الداتا اللي فيه او يعني 95% منها بطرق كتيره جدا واسهلها اللي انا شرحتها حالا وممكن تعتمد على برامج زي MS SQL RECOVERY 3.0

والله من وراء القصد

تم تعديل هذه المشاركة بواسطة FALCO في 12 فبراير 2008 في 10:22

هذا الموضوع مغلق.

مواضيع مشابهة