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

الاحتياطات الواجب اتباعها عند تشغيل قاعدة البيانات على أكثر من جهاز

مغلقمُجاب
بدأه rahmasoft1 في 28 أكتوبر 2013 · 23 رد · 10,255 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم :

بدأت منذ فترة تشغيل أحد التطبيقات على شبكة مكونة من 5 اجهزة 

ما هي الاعتبارات و الاحتياطات الواجب اتباعها لكي نحصل على أحسن أداء و في نفس الوقت أقل قدر ممكن من المشاكل 

1

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#2

سؤال في محله +1

 

ياليا نسمع من الاخت زهرة  نصائحها في هذا الموضوع 

تم تعديل هذه المشاركة بواسطة lordring في 28 أكتوبر 2013 في 15:40

1
#3

سوف أجيب على سؤالي في  حدود علمي القاصر

1- يجب تقسيم قاعدة البيانات إلي قاعدتين جداول back end  و واجهة Interface

2- يجب أن يكون الجهاز الرئيسي server  مخصص لخدمة باقي الاجهزة - يعني لا يعمل عليه أحد

3- في انتظار باقي النقاط من الاخوة المشرفية و الخبراء 

1

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#4 أفضل إجابة

اخي الفاضل : ابو رحمه

وبقية الأخوة الكرام في هذا المنتدى المبارك
 
السلام عليكم ورحمة الله وبركاته
 
عند التطرق الى هذا الموضوع والخاص بقاعدة البيانات على الشبكة فإننا سندخل في متاهات متشعبة ومتشابكة في نفس الوقت ولكننا سنختصر الموضوع بناء على فهم آلية عمل الشبكة
الداخلية وإلمام المدير المسئول بكل الخطوات الواجب اتباعها وعدم تجاهل اي اخطاء تحدث سواء من قبل المستخدمين في الشبكة او اخطاء العتاد فهنا يجب ان يكون على دراية تامة بكل
شيء يحدث في الشبكة ومحاولة اصلاح الأعطال بأسرع وقت ممكن تفاديا للوقوع في مشكلة اكبر لا سمح الله .
 
ومن هذا المحور سوف ننطلق على بركة الله في عجالة واختصار شديدين لأن المقام لا يسمح لنا بسرد كل شيء يخص هذا الموضوع .....
 
1. طرق مشاركة البيانات في بيئة متعددة المستخدمين
 
*. مشاركة قاعدة بيانات اكسيس بالكامل
يمكننا وضع قاعدة بيانات اكسيس بالكامل على ملقم شبكة اتصال أو في مجلد مشترك .  وهذه هي أسهل طريقة للتنفيذ . 
ويشترك كافة الأشخاص في البيانات ويستخدمون نفس النماذج  والتقارير والاستعلامات ، ووحدات الماكرو  والوحدات النمطية . إن استخدم هذه الاستراتيجية غير محببه وبطيئة نوعا ما 
 
*. مشاركة الجداول الموجودة في قاعدة بيانات اكسيس فقط 
يمكننا وضع الجداول فقط على ملقم شبكة الاتصال ، والاحتفاظ بكائنات قاعدة البيانات الأخرى على الأجهزة الخاصة بالمستخدمين . 
في هذه الحالة، يكون أداء قاعدة بيانات اكسيس أسرع بسبب إرسال البيانات فقط عبر شبكة الاتصال . عند فصل قاعدة البيانات إلى خلفية (جداول) و أمامية ، يمكن للمستخدمين تخصيص النماذج ، والتقارير، والكائنات الأخرى في قواعد البيانات الأمامية دون التأثير على المستخدمين الآخرين .
 
*. مشاركة كائنات قاعدة بيانات اكسيس أو صفحات الوصول إلى البيانات على الأنترنت 
يمكننا إخراج واحد أو أكثر من كائنات قاعدة البيانات إلى HTML‏ ثابت أو تنسيق HTML منشأ على الملقم أو إنشاء صفحات الوصول إلى البيانات، ثم عرضها في مستعرض، مثل Internet Explorer، على الشبكة العالمية .
 
*. نسخ قاعدة بيانات اكسيس نسخاً متماثلاً 
في حالة استخدام جهازي كمبيوتر، مثل الكمبيوتر المكتبي والكمبيوتر المحمول ، يمكننا استخدام "حقيبة الملفات" في Microsoft Windows لعمل نسخ متماثلة من قاعدة بيانات اكسيس والاحتفاظ بهذه النسَخ المتماثلة متزامنة . ويمكن أيضاً لعدة مستخدمين في أماكن متفرقة العمل على نسَخ خاصة بهم في نفس الوقت ثم مزامنة هذه النسخ على شبكة الاتصال ، إما من خلال اتصال هاتفي أو من خلال الأنترنت .
 
*. إنشاء تطبيق عميل / ملقم 
إذا كنا سنقوم بالعمل في بيئة عميل / ملقم، يمكنك استغلال عناصر القوة والأمان الإضافية المتوفرة في هذه البيئة بإنشاء تطبيق عميل / ملقم . حيث يمكننا تخزين البيانات الخاصة بنا في ملقم قاعدة البيانات مثل Microsoft SQL Server بدلاً من الجداول المحلية في Microsoft Access و يسترد تطبيق اكسيس ( العميل ) البيانات التي يحتاجها من الملقم . إضافةً إلى ذلك يحافظ الملقم على تكامل البيانات وتشغيل أي استعلامات يمكنه تقييمها .
 
 
2. المساعدةعلى تعقب حالة السجلات أثناء تحريرها .
تساعدنا قاعدة البيانات اكسيس على تعقب حالة السجلات ويتم عرض الرموز التالية في محدد السجل الحالي
 
post-15367-0-11434300-1382980343_thumb.g
 
 
3. إعدادات تأمين السجل الافتراضية .
*. بلا تأمين :
لا تؤمن قاعدة البيانات اكسيس السجل الذي تقوم بتحريره  وعند محاولتك حفظ التغييرات في سجل قام شخص أخر بتغييره يعرض الاكسيس رسالة تعطيك خيارات للكتابة فوق تغييرات المستخدم الآخر في السجل أو نسخ إصدار السجل الخاص بك إلى "الحافظة" أو إهمال تغييراتك . وتضمن هذه الاستراتيجية إمكانية تحرير السجلات دوماً، ولكنها قد تنشئ تعارضات تحرير بين المستخدمين .
 
*. سجلات محرره :
تؤمن قاعدة البيانات اكسيس السجلات التي تقوم بتحريرها ، وبذلك لا يمكن أن يقوم أي مستخدم آخر بتغييرها . 
وقد يؤمن أيضاً سجلات أخرى مخزنة قريباً في القرص . وفي حالة محاولة مستخدم آخر تحرير سجل قمت بتأمينه، يعرض الاكسيس مؤشر السجل المؤمن صورة الرمز في ورقة بيانات مستخدم آخر . وتضمن هذه الاستراتيجية إمكانية قيامك دوماً بإنهاء التغييرات التي بدأت فيها . وتعتبر اختياراً جيداً لعدم وجود تعارضات تحرير معظم الوقت .
 
*. كافة السجلات  :
تؤمن قاعدة البيانات اكسيس كافة السجلات في النموذج أو ورقة البيانات ( جداول المصدر ) التي تقوم بتحريرها طوال وقت احتفاظك به مفتوحاً ، وبذلك لا يمكن لأي شخص آخر تحرير السجلات أو تأمينها . وتعد هذه الاستراتيجية مقيدة للغاية ، ولذلك قم باختيارها فقط عندما تعرف أنك الشخص الوحيد الذي يريد تحرير سجلات في كل مرة.
 
 
معلومة 1 : عند تحرير بيانات في جدول قاعدة بيانات SQL مرتبط بواسطة استخدام ODBC ، لا تؤمن قاعدة البيانات اكسيس السجلات، ولكن، تتحكم  قاعدة بيانات SQL في التأمين .
وفي هذه الحالة تتصرف قاعدة البيانات اكسيس دوماً كأن إعداد تأمين السجلات  بلا تأمين هو المحدد .
 
 
4. التأمين على مستوى الصفحة وعلى مستوى السجل .
يمكننا تحديد مستوى التأمين الذي يستخدمه اكسيس في قاعدة بيانات مشتركة . إذا كنا نستخدم تأمين على مستوى الصفحة ، وقد يؤدي تحرير سجل إلى تأمين سجل آخر مخزن أيضاً .
ولكن، يعتبر الأداء أفضل بشكل عام عند استخدام التأمين على مستوى الصفحة.
اما إذا قمنا باستخدام التأمين على مستوى السجل ، فإن الآكسيس يقوم  بتأمين السجل الذي نقوم بتحريره فقط . ويصبح هذا هو السلوك الافتراضي للوصول إلى البيانات من خلال نموذج 
و ورقة البيانات  والتعليمات البرمجية التي تستخدم كائن مجموعة السجلات لتنفيذ حلقات عبر السجلات ، ولكن ليس عبر الاستعلامات الإجرائية أو عبر التعليمات البرمجية التي تقوم بتنفيذ
عمليات مجمعة باستخدام عبارات SQL.
 
 
5. تحديث إعدادات الفاصل الزمني لإعادة المحاولة وتحديثها .
يمكننا استخدام إعدادات الفاصل الزمني للتحديث وعدد مرات إعادة محاولة التحديث لتحديد الفترات وعدد المرات التي يحاول فيها الأكسيس حفظ سجل مؤمن من قبل مستخدم آخر. 
ويمكننا أيضاً استخدام إعدادات الفاصل الزمني لتحديث ODBC والفاصل الزمني للتحديث للتحكم في الفترات التي يقوم فيها اكسيس بتحديث البيانات . حيث يقوم التحديث بتحديث البيانات
الموجودة مسبقاً فقط في ورقة البيانات أو النموذج الخاص بنا . فهو لا يقوم بإعادة ترتيب السجلات ، ولا عرض سجلات جديدة ، ولا إزالة سجلات محذوفة أو السجلات التي لم تعد تحقق معايير معينة. 
و لعرض هذه التغييرات، يجب علينا إعادة استعلام السجلات الأساسية لورقة البيانات أو للنموذج .
 
 
6. بداية العمل مع البيانات وحل التعارضات بين المستخدمين .
عند العمل على شبكة فمن الممكن حدوث تعارضات عن إدخال المستخدمين البيانات في نفس السجلات ، ويعالج البرنامج اكسس هذه المشكلة بطريقة تإمين السجلات ، Record Locks 
 
post-15367-0-38616300-1382980613.gif
 
وعند إختيار الخاصية سجل محرر Edited Record ففي هذه الحالة عندما يفتح المستخدم النموذج يكون بجانب السجل الاول رمز مثل القلم وهذا يدل على أن النموذج حر ويمكن استخدامه ،  وفي نفس الوقت لو فتح أحد المستخدمين هذا النموذج سيجد رمز القفل وهذا يدل على أن النموذج الآن قيد الاستخدام ولا يمكن إستخدامه في هذا الوقت . حتى يقوم المستخدم الاول بحفظ العمل ، كما نشاهد في الشكل تأمين السجلات في خصائص النموذج .
 
ملاحظة :
يأخذ اكسس تقريباً 60 ثانية حتى يقوم بعرض العلامة ويمكن تغير هذه الفترة الزمنية من
أدوات Tools
خيارات Options 
خيارات متقدمة Advanced
ثم من تحديث الفاصل الزمنى Refresh Interval
 
post-15367-0-59436500-1382981475.gif
 
ثم تغير الزمن من 60 ثانية إلى الوقت المناسب ، ولو كان مثلا 5 يكون أفضل عندما تكون قاعدة البيانات متوسطة الحجم ، ومن نافذة خيارات متقدمة Advanced ، يمكن أن تحدد كثير من الخصائص المتعلقة بتحديث البيانات عند الاستخدام المشترك وتستطيع أن تجرب عدد من التجارب إلى أن تصل إلى أفضل المستويات الممكنة .
 
post-15367-0-01466400-1382981561_thumb.g
 
 
7. حفظ تغييرات التصميم في قاعدة بيانات مشتركة .
لا يمكننا حفظ تغييرات التصميم في قاعدة بيانات اكسيس بينما تكون قاعدة البيانات مفتوحة لمستخدمين آخرين . الطريقة الوحيدة لتأمين حفظ هذه التغييرات تكون عن طريق فتح قاعدة بيانات اكسيس في الوضع الخاص فقط . 
و بشكل عام ، عندما تحاول القيام بتغيير تصميم كائن قاعدة بيانات (باستثناء الجداول والاستعلامات) أو عنصر في وضع المشاركة، يقوم اكسيس بالترقية المؤقتة للوضع الخاص لقاعدة البيانات .
 
*. إذا كنت المستخدم الوحيد لقاعدة البيانات في ذلك الوقت . وعندما تقوم بحفظ كافة تغييرات التصميم وإغلاق كافة الإطارات في طريقة العرض "تصميم" ، يرجع اكسيس قاعدة البيانات إلى وضع المشاركة و في غضون ذلك ، لن يتمكن المستخدمون الآخرون من فتح قاعدة بيانات اكسيس .
 
*. إذا كان لدى مستخدم آخر قاعدة بيانات مفتوحة في وضع المشاركة وتحاول انت القيام بتغيير التصميم الرئيسي ، كتعديل نموذج ، ينبهك الاكسيس إلى أنك قد لا تتمكن من حفظ التغييرات 
وبالرغم من ذلك ، إذا كان لدى مستخدم آخر قاعدة بيانات مفتوحة في وضع المشاركة ، وتريد إدخال تغييرات ثانوية على التصميم ، مثل تغيير إعدادات طباعة، لا ينبهك اكسيس إلا أنك قد لا تتمكن من حفظ تغييرات التصميم. في كلتا الحالتين، قد تحتاج إلى الانتظار حتى تكون المستخدم الوحيد لقاعدة البيانات فهنا يمكنك حفظ تغييرات التصميم الرئيسية ويمكن للأكسيس  حفظ تغييرات التصميم الثانوية.
 
 
معلومة 2: تتم معالجة صفحة الوصول إلى البيانات بشكل مختلف . فعلى الرغم من أن إنشاء صفحة وصول إلى البيانات ، وإعادة تسميتها، ونقلها، وحذفها مازال يتطلب الترقية إلى الوضع الخاص (لأن هذا يتطلب تغيير معلومات في قاعدة بيانات اكسيس)، فإن تحريرها لا يتطلب الترقية إلى الوضع الخاص ( لأن ملف HTML المناظر موجود في نظام الملفات خارج قاعدة البيانات ) .
 
 
8. الاختلافات بين تغييرات التصميم الرئيسية والثانوية .
إذا لم يكن لديك حق وصول خاص لقاعدة البيانات ، ينبهك اكسيس عندما لا تتمكن من حفظ تغييرات التصميم الرئيسية التالية :
*. التغييرات في كائنات قاعدة البيانات (باستثناء الجدول والاستعلامات) في طريقة العرض "تصميم"
*. التغييرات في صفحة خصائص النموذج في طريقة العرض "نموذج"
*. ترجمة مشروع أو تعديل خصائص مشروع أو إضافة مرجع في Visual Basic Editor أو إزالته
*. إعادة تسمية كائن من قاعدة البيانات أو لصقه أو حذفه
*. حفظ كائن قاعدة بيانات كنوع آخر من كائن قاعدة بيانات
*. إضافة عناصر تحكم أو تعديلها في شريط أوامر
*. تحرير مجموعات مخصصة في إطار قاعدة بيانات
*. إنشاء صفحة وصول إلى البيانات، وإعادة تسميتها، ونقلها، وحذفها
 
إذا لم يكن لديك حق وصول خاص إلى قاعدة البيانات ، لا ينبهك اكسيس عندما لا تتمكن من حفظ تغييرات التصميم الثانوية التالية :
*. التغييرات في خصائص تنسيق ورقة البيانات، مثل أنماط السطور والخطوط
*. تجميد أعمدة ورقة البيانات، وإلغاء تجميدها، وإخفاؤها، وإظهارها
*. تعديل عرض عمود ورقة بيانات وحجم صف
*. التغييرات في عامل تصفية أو ترتيب فرز لنموذج أو ورقة بيانات
*. التغييرات في وضع ورقة بيانات فرعية (سواء موسعة أو مطوية)
*. التغييرات في ارتباط OLE/DDE لكائن OLE أو التغييرات في محتويات إطار كائن غير منضم
*. التغييرات في إعدادات الطابعة
*. التغييرات في شريط الأوامر، كتغيير موقعه وما إذا كان مرئياً أو لا
*. التغييرات في تخطيط إطار "قاعدة البيانات"
*.  إخفاءإستراتيجيات مشاركة تصميم قاعدة البيانات وتطويرها
 
 
9. إذا كنت ستشارك في تصميم قاعدة البيانات ، جرب استخدام الاستراتيجيات التالية .
*. قم بتعيين كائنات محددة أو مجموعات من الكائنات إلى مطورين محددين. على سبيل المثال، تعيين أحد المطورين لتصميم النماذج وآخر لتصميم التقارير.
فيمكن لكل مطور العمل على نسخة خاصة من قاعدة البيانات وعندما يكون فريق التطوير مستعداً للاختبار، والتجميع، والإنتاج، يمكن أن يقوم كل مطور بتصدير كائنات قاعدة البيانات من نسخته الخاصة من قاعدة البيانات إلى قاعدة البيانات الرئيسية .
 
*. قم باستخدام برنامج التحكم في التعليمات البرمجية المصدر . إذا كنت تستخدم Visual SourceSafe، يُفضل تشغيل "محلل الأداء" ( في القائمة أدوات ، قم بالإشارة إلى تحليل ، ثم انقر فوق الأداء ) بشكل دوري للإبقاء على أمثلية الأداء.
 
 
10. حفظ تغييرات التصميم في قاعدة بيانات مشتركة .
*. في حالة وجود جدول مفتوح لدى مستخدم آخر أو إذا كان المستخدم الآخر يعرض بيانات في استعلامات أو نماذج أو تقارير تستند إلى هذا الجدول ، لا يمكنك القيام بأي تغييرات على تصميم الجدول . ويخبرك الأكسيس بأن الجدول للقراءة فقط .
 
*. إذا كانت الكائنات تعتمد على بعضها البعض، عليك تحديثها جميعاً في نفس الوقت حتى لا يتمكن المستخدمون الآخرون من فتح إصدارات غير متوافقة من الكائنات . 
على سبيل المثال، إذا كنت ترغب في إضافة حقول إلى نموذج، تأكد من إضافة الحقول إلى الاستعلام المصدر قبل تحديث النموذج .
 
*. إذا غيَّرت استعلاماً يفتحه مستخدم آخر، فيجب على هذا المستخدم إغلاق الكائن المتغير وإعادة فتحه حتى يتسنى له استخدام الإصدار الأخير منه. 
 
*. في حالة التغيير في الوحدات النمطية  لا يتمكن المستخدمون الآخرون من تشغيل الإجراءين المحدثين Function أو Sub حتى يتم إغلاق قاعدة البيانات  وإعادة فتحها.
 
 
بالتوفيق
8
#5

معلومات قيمة

شكرا كثيرا لكِ فقد تحدثتِ فأوفيتِ فلكِ جزيل الشكر والتقدير

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

ربنا يجعله في ميزان حسناتِك

تحية طيبة مني لك :plusone:

تم تعديل هذه المشاركة بواسطة mahmoud_20 في 28 أكتوبر 2013 في 21:02

(اللَّهُمَّ أَنْتَ رَبِّي لا إِلَه إِلاَّ أَنْتَ خَلَقْتَني وأَنَا عَبْدُكَ وأَنَا على عهْدِكَ ووعْدِكَ ما اسْتَطَعْتُ أَعُوذُ بِكَ مِنْ شَرِّ ما صنَعْتُ أَبوءُ لَكَ بِنِعْمتِكَ علَيَ وأَبُوءُ بذَنْبي فَاغْفِرْ لي فَإِنَّهُ لا يغْفِرُ الذُّنُوبِ إِلاَّ أَنْتَ)

اذا كانت المشاركة مفيدة لك فلا تبخل علينا بالتقييم

post-274914-0-91580400-1378113578.jpg
#6

معلومات رائعة فعلا وتحتاج الى قراءة لمرات عدة للاستفادة من كل التفاصيل الواردة في الشرح

 

شكرا جزيلا 

#7

موضوع مفيد جداً

اتمنى ان تفيدنا دوما بمثل هذه الدروس لانها تعبر مرجع كامل وتجيب عن كثيرررررر من الأسئلة وتفتح لنا طرائق الحلول

لن أقول لكم شكرًا فقط بل جزاكم الله كل خير

اخوكم

#8

لوسمحتوا لي بإدلاء رأيي :)

 

1. البرنامج يجب ان يكون مجزء الى Front End و Back End ، بحيث يكون FE على كل جهاز ، و BE على السيرفر (او على كمبيوتر خاص في الشبكة) ،

2. لا تضع BE على قرص الوندوز ، وانما على قرص منفصل (ولا اعني Partition وانما اعني قرص منفصل) ،

3. تأكد من ان كابلات الشبكة هي الاسرع cat6 مثلاّ والتي تعمل على Giga وسرعتها 1000 (بدلا عن cat5 والتي سرعتها 100) ، ولا تخلط بين كابلات السرعات المختلفة ،

4. لابد من وجود Switch يعمل بنفس سرعة الكابلات ،

5. اذا كنت في مكان تنقطع فيه الكهرباء ، فلا بد من ان تضع UPS على كل كمبيوتر (او تستعمل لابتوب) ، وعلى السيرفر ، وعلى Switch ،

6. لا تجعل كابلات الشبكة في نفس الانبوب الذي به كابلات كهربائية (اي ملاصقة به) ،

7. لابد من تحديث جميع الكمبيوترات دائما.

 

جعفر

1
#9
السلام عليكم 

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

 

و كذلك الشكر لأخي الفاضل :جعفر

 

سألخص ما قد فهمته من المشاركات حتى الان و الباب مفتوح لمزيد من النقاط 

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

1-منها ما هو متعلق بال Hardware 

2- منها ما هو متعلق بال Networking 

3- منها ما هو متعلق بتصميم القاعدة .-أو بمعني أصح بكيفية تجزئتها.

4- منها ما هو متعلق  بإعدادت خاصة بقاعدة البيانات ينبغي ظبطها.

5- منها ما هو متعلق ببيئة تتشارك تعديل التصميم و الاكواد ( سيتم تجاهلها لانها ليست الغرض من السؤال ) 

6-منها ما هو متعلق بوظيفة و دور كل مستخدم و الخصائص المسموحة له .

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#10

سأذكر هنا بقليل من التفصيل البند الاول:

أولا : ما هو متعلق بال Hardware 

طبعا على حسب علمي  القاصر - و علي حسب ما تفضل به أخينا الكريم : جعفر 

1-يجب أن يكون جهاز الكمبيوتر حديثا و ذو أمكانيات جيدة 

2- يجب أن يكون الجهاز الرئيسي ( الخادم - server ) ذو أعلي أمكانيات في الشبكة وأن يكون مخصص فقط لخدمة باقي الاعضاء أي لا يجلس عليه مستخدم

3-وضع قاعدة البيانات back end  على قرص صلب أخر غير الذي مثبت عليه النظام ويندوز

4-يجب أن يتوافر جهاز UPS مركزي أو جهاز UPS لكل جهاز على حدة 

تم تعديل هذه المشاركة بواسطة rahmasoft1 في 29 أكتوبر 2013 في 14:11

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#11

ثانيا: ما هو متعلق بالشبكات Network

1-يجب ان تكون كابلات الشبكة في انبوب منفصل عن الكابلات الكهربائية منعا للتشويش 

2-تأكد من ان كابلات الشبكة هي الاسرع -بقدر الامكان - cat6 مثلاّ والتي تعمل على Giga وسرعتها 1000 (بدلا عن cat5 والتي سرعتها 100) ، ولا تخلط بين كابلات السرعات المختلفة ،

3. لابد من وجود Switch يعمل بنفس سرعة الكابلات.

4-يفضل أن يكون الجهاز الرئيسي -الخادم -عليه نظام تشغيل يدعم نظام client-server  مثل windows server 2003 أو windows server 2008 

تم تعديل هذه المشاركة بواسطة rahmasoft1 في 29 أكتوبر 2013 في 11:36

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#12

الله ان شاء الله يجازيك خير على هذا الملخص :)

مﻻحظة أخرى:

عند استخدام الﻻبتوب ، تأكد من أن Power plan ليس balanced وهو الوضع اﻻفتراضي للﻻبتوب حفظا للبطارية ، وانما على السرعة القصوى ، حيث ان أوامر اﻻكسس تنفذ على FE وليس في BE والذي يحتاج إلى قوة الﻻبتوب القصوى لتنفيذ اﻻوامر بسرعة :)

جعفر

تم تعديل هذه المشاركة بواسطة jjafferr في 29 أكتوبر 2013 في 11:46

1
#13

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

 

 

هناك نقطة هامة جدا يجب ان لا نغفل عنها ويجب ان تكون ذات اولويه قصوى اثناء العمل على الشبكة

 

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

 

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

 

فهنا يكون الأمر مستغرب بعض الشيء عن ماهية الخطأ وطريقة اصلاحة .

 

السبب وراء كل الأخطاء المبهمة او غير المعرفه هو اختلاف انظمة التشغيل لإصدارة الويندوز بعضها عن بعض في اجهزة الكمبيوتر على الشبكة

 

وايضا اختلاف نسخ الأكسيس بعضها عن بعض في نفس الشبكة وايضا اختلاف اللغات بين انظمة التشعيل

 

وهنا تكمن المشكلة الرئيسية في كافة اوجه الإختلاف حيث تظهر لدى بعض المستخدمين رسائل اخطاء ليس لها حلول

 

ولكن الحل الوحيد والنهائي هو :

 

1. عند البدأ على تكوين شبكة داخلية يجب توحيد جميع انظمة التشغيل لإصدارة الويندوز بمعنى ان تكون كلها ويندوز XP  او ويندوز 7  او ويندوز 8

 

اي تكون موحدة بالكامل .

 

2. يجب توحيد جميع اللغات في جميع اجهزة الكمبيوتر لأنظمة التشغيل بحيث تكون جميعها اما عربية او انجليزية او فرنسية حتى لا تحصل على 

 

رسائل اخطاء  ActiveX

 

3. يجب توحيد جميع اصدارات برنامج الأكسيس على الشبكة سواء كانت 2003  او  2007  او 2010 وبنفس التحديثات حتى لا يحصل هناك اخطاء

 

في عدم التعرف على بعض الخصائص من اصدارة الى اخرى .

 

 

 

بالتوفيق

1
#14

أستاذتنا و معلمتنا  الدكتورة زهرة لفتت أنظارنا إلي نقطة مهمة جدا :سألخصها مع غيرها في

 

باب ما قبل البداية :

 

1.  توحيد جميع انظمة التشغيل لإصدارة الويندوز بمعنى ان تكون كلها ويندوز XP  او ويندوز 7  او ويندوز 8 .(ما عدا الجهاز الرئيسي قد يكون وينوز سيرفر 2003 أو 2008)
 
2. يجب توحيد جميع اللغات في جميع اجهزة الكمبيوتر لأنظمة التشغيل بحيث تكون جميعها اما عربية او انجليزية او فرنسية .
 
3. يجب توحيد جميع اصدارات برنامج الأكسيس على الشبكة سواء كانت 2003  او  2007  او 2010

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#15

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

اذلك انا شخصيا وبعد استثناء الاوفيس 2003 من المعادلة ..اقوم بعمل البرنامج على اوفيس 2007

لضمان تشغيله على بقية الاجهزة حتى وان ارتفع الاوفيس لديهم ال ال 2010 او 2013

#16

مجموعة نصائح غاية في الروعة و الجمال لكن محتاج شوية وقت للترجمة و الاختصار 

بالرغم من أنها قديمة لكنها تصلح للعمل بها 

 

Microsoft Access Performance FAQ

 

Some of these were originally suggested by Frank Miller of Microsoft Support and have been extensively updated and added since. Almost all of these tips also apply to Microsoft Access 97 and all newer versions of Access.

The most common performance problems in Access are:
 -
 LDB locking which a persistent recordset connection fixes
 - Subdatasheet Name property set to [Auto] should be [None].  (Access 2000 and newer.  See my note in the section below.)
 - Track name AutoCorrect should be off.  (Access 2000 and newer)
Other reasons are
 
-  Creating indexes for filtering and selection criteria and sequencing.
 -
 Speed up your Access Forms by loading the form, subform, combobox and listbox record sources at run-time.  
 - New format of Access MDB
 - Place backend MDB on the root of the network share rather than several folders down
 - Shorten the name of the backend MDB
 - Miscellaneous Performance Suggestions
 - Virus scanning
 - System utilities
 - Outlook 97 Journaling
 - Queries up to five times slower if user defined functions and Jet 4.0 SP4 or 5
 - Use of DSUM, DCOUNT, etc after splitting
 - Disable SMB Signing

 - How to speed up complex forms and reports with many records each with subreports.
 - Wireless networking - Don't do it
 - Set Can Grow and Can Shrink on forms section properties to No
 - Access 2007 design view performance on Vista vs XP
 - Windows Vista, ODBC and SQL Server 2005
 
 - Playing music severely degrades network transfer performance in Windows Vista
 -
 Hewlett-Packard (HP) machines with Digital Persona Biometric device  

When every user is slow opening up the front end (FE) database file  before the first line of code is run then it likely needs a decompile.

Access 2000 slow when using an Access 97 backend.

Any of the following tips can also apply in this situation.   But in particular the SubDatasheet Name property set to nothing can be a problem as it appears Access 2000 will default this value to [Auto].

LDB locking which a persistent recordset connection fixes

Refreshing table links can also be quite slow

Refreshing the links to tables can be quite slow even in Access 97. This can get much worse for the second and subsequent users into a shared MDB on a server.  Once you've successfully refreshed the first table open a recordset based on that table. Once you've finished refreshing all the links close that recordset.

Then open a bound form or keep this recordset open if so desired depending on your preference for better overall performance.

Subdatasheet Name property set to [Auto]

ACC2000: Slower Performance on Linked Tables - 261000 and Slow performance on linked tables in Access 2002, in Office Access 2003, and in Office 2007 indicates that if the database has many linked tables that also have many relationships, and the table that you are opening has its subdatasheet Name property set to [Auto], this can make the table slow to open. Subdatasheets are a new feature in Access 2000 Therefore, you are more likely to notice this behaviour after you convert a database from an earlier version.

It is recommended that we set the subdatasheet Name property on each table in the back-end database to [NONE].  Making this change in the front end won't help if it even works at all.

Note that this has been mentioned as a problem with Access 2000 or newer front ends linking to an Access 97 backend.  It would appear that Access 2000 defaults this property to [Auto] if this property isn't set.   So run the code in the above mentioned Q261000 article in the Access 97 backend.   You cannot run this code in the front end.

Note that if you have Name AutoCorrect on this will change the Subdatasheet property back to [Auto] for each table to which you make a change.  Thanks to Tom Wickerath for pointing this out.

However based on my personal research I'm no longer convinced this is a serious problem.  It may be a problem in datasheet view but doesn't appear to be a problem on continuous forms.

Track name AutoCorrect

Tools >> Options >> General >>.Track name AutoCorrect info should be off.

ACC2000: Slow Performance Opening Object with Name AutoCorrect - 200600 
Slow Performance When User Opens an Object with Name AutoCorrect Enabled - 290181

One symptom is that the MDE can be much quicker when it comes to opening forms than the MDB.  One report stated the difference was less than one second versus four seconds.

Creating indexes for filtering and selection criteria and sequencing.

There are many web pages on this topic both Access specific and general relational database systems so I'm not going to get into the details here..   However you should have indexes on all fields that are used for filtering and selection criteria and sequencing on forms and reports.   Access does automatically create indexes on primary keys, foreign keys and other fields as per the Autoindex on Import/Create in the Tools >> Options >> Tables/Queries tab.

The problem with too many indexes is that this will slow down record insert and field updates as the indexes have to be updated.  This can be significant.   For example when doing a bulk loading of records, such as when converting a system, it can be very beneficial to delete all the indexes, load the records and create the indexes fresh again.

Note that in some performance tuning I just did for a client adding an index on a boolean field in a "master" table containing 800 records dropped the form load time from 30 seconds to 3 seconds.   The continuous form was based on a table with 800,000 records although only a few hundred or thousand records were retrieved and displayed.

Speed up your Access 2000 Forms    (2003-12-17)

New format of Access 2000 MDB (actually Jet 4.0)

Access 2000 development does experience a performance decrease (and a related increase of the database size) as compared to Access 97. This is caused by the new way Access 2000 stores project items. Project items consist of Forms, Reports, Macros and Modules. In previous versions, each object had its own record in the system table. If a change was made to an object only that one record in the system table was updated.

With the move to include the Visual Basic Editor interface, Access now stores all project items as one blob within approximately one record in the system table. If there are lots of code, forms and reports, then making a change to 1 object causes us to rewrite the majority of the blob that consists of all the project items. As a result, more is being written to disk then was done in the past.
 

Some changes to the database cause Access to make a copy of the project items instead of replacing the old project which can cause an increase in database size. If we have a large project and we end up copying it then we double the size of the project within the database. For example, lets say we have 10 MB project and perform an action that causes us to make a copy of the project instead of replacing it, the database will grow by 10 MBs. Compacting the database at this point should recover the project no longer being used and should reclaim some space (if not all 10 MBs).

The best choice to reduce the impact of this change is work on all the database files located on the local system and not on the server.   Also make sure you have the fastest available reasonably priced (don't go spending lots of money on SCSI if you don't need to) hard drive controller systems and hard drives.  Also make sure you have the latest drivers.   I'm quite happy with the performance of my tower systems IDE 100 controller and hard drives.  Much less so with my laptop which is an IDE 33.

For more information see
 ACC2000: Saving Objects in DB Slower Than in Earlier Versions - 246306

Place backend MDB on the root of the network share rather than several folders down.

The problem is likely related to server security as each directory you navigate must be checked against the domain security system.   This may be particularly acute in combo boxes and subreports when using a FE/BE system as I've noticed these appear to be poorly optimized.

Alternatively I'd suggest having the network people setup a share right on the directory of your BE for your use. Instead of using \\Server\Dir1\Subdir2\Subdir3\subdir4\subdir5\backend.mdb you'd use \\server\Sharesubdir5. 

They can can append a $ to the end of the share name to make it a hidden share so as to not confuse people. You would also need to use a $ at the end of the share name as well.  As in \\server\Sharesubdir5$.

I'd read a credible posting a number of years ago indicating that someone who was working on a dialup networking analyzed the packets and realized this was a big problem.  Novell report the same problem in MS access database run from NetWare server excessively slow. However this could have been fixed in newer Novell OSs as well as various service packs.

There was a posting the same day I wrote the above paragraph indicating this is still a problem. Access 2000/Windows 2000-Slow Performance....kind of solved

PB stated that shortening the path from 75 characters to 31 characters and removing four directory levels changed "from 50 seconds to load for the first time and was accelerated to unbelievable about 15 seconds." "About 3 1/2s instead of 15s is a real progress."  They also shortened the name of the back end.

Slower performance in Access-based or Jet database-based programs after you upgrade from Windows NT 4.0 to Windows 2000 or to Windows XP - 891176

Shorten the name of the backend MDB

Yes, hard as this is to believe this has also been posted as helping. Also see the above mentioned  891176 KB article.

Virus scanning

Ensure your virus scanning software only checks local drives and not network drives.  One report stated twenty second queries took five minutes or fifteen times as long.  Let the server's ant-virus software monitor the server.

Antivirus software update

If the slowdown is sudden with no obvious changes in environment, either software or hardware, then take a look at your anti-virus software.  A recent update may have accidentally added MDB scanning or otherwise do a bad job in scanning MDB files.  For example each time a client FE starts up and opens a connection to an MDB file on the server then the antivirus software scans the entire backend MDB on the server.

(One particular software vendor mentions this as a problem on 2003/01/17.  However I'm not mentioning the vendor specifically as this is a problem that could've happened to any vendor.  And it should be fixed  by the time you read this.)

System utilities

The following is but one example.  There are others I've seen in the past but didn't think to record them.
-
 Windows and applications run slower or stop responding after installing GoBack 3.x Personal Edition

Outlook 97 Journaling

It's been so long since I've seen this problem I'd forgotten about it until a recent newsgroup posting.   Outlook 97, by default, saves a log of all changes to all Word 97, Excel 97, probably PowerPoint 97 and certainly Access 97.  See  OFF97: Opening and Closing Programs or Files May Be Slow -167081. Also see OL97: Office Programs Stop Responding While Outlook Is Busy - 167975 and OL97: Outlook Starts Slowly with AutoJournal Feature - 166850 for hints of just how bad this can be.

Queries up to five times slower if user defined functions and Jet 4.0 SP4 or 5

ACC2000: Queries Slower After You Install MS Jet 4.0 SP4 or SP5 - 302496  You shouldn't be using Jet 4.0 SP4 or 5 anyhow because SP6 is much more stable.

Find and replace

Try clearing the check box for "Search Fields As Formatted" in the Find and Replace box. 

Use of DSum, DCount, DLookup, etc in form after splitting

One recent posting indicated that performance really slowed down after splitting the MDB into a FE/BE. Turns out the problem was using a DCount in the form.   Replace these with your own custom function.  Thanks to Susan for posting the solution to her problem.

Disable Server Message Block (SMB) Signing on SBS 2003 or Windows Vista

SMB signing can decrease performance so much that a simple file copy can take four times as long.  This has been reported as somehow being turned on by group policy during some maintenance by Sandra Daigle, former Access MVP. Microsoft network client: Digitally sign communications (always)  Although you'll want to disable it of course.

The following newsgroup posting indicated that it took almost fifty times as long to open an MDB due to SMB signing. Very slow response when MDB stored on Small Business Server 2003 network share   This article shows a registry key on the server that can be updated.   (The window available showing the exact registry key was truncated in IE7 when I updated this article.  However if you do the cut & paste to notepad you will get out the entire key.  The article displayed properly in Firefox.)

Also see Issues that you may encounter when you open or are using a Microsoft Office Access database on a computer that is running Windows Vista - 935370

Access 2007 design view performance on Windows Vista vs Windows XP

"If I disable autotuning on the TCP stack in Windows Vista I no longer suffer from this problem. ... until I upgrade to Windows server 2008 I won't be enabling autotuning on my Vista client."  See the thread Access 2007 Design view performance on Vista vs XP initiated and finished by cpf_profiles   See Receive Window Auto-Tuning on Vista for more technical information including KB articles.

Local default printer instead of network printer

If your system is painfully slow when updating forms or reports in design view try creating a local printer and setting that as the default printer.   This could be a PDF printer such as the open source PDFCreator or free CutePDF Writer.  This may be more applicable to Access 2007 than previous versions.  Alternatively just create a generic printer. (2009-04-20)

Windows Vista, ODBC and SQL Server 2005

For the best connection string for a DSN-less connection to SQL Server 2005, switch providers to the SQL Native Client with the following: 
"ODBC;Driver={SQL Native Client};Server=<servername>;DATABASE=mydatabase;Trusted_Connection=Yes"
by Rick Byham of Microsoft.  See the thread
 Vista, ODBC and SQL Server 2005

Playing music severely degrades network transfer performance in Vista

Thanks to David for the posting Vista network problem  And an official Microsoft blog posting by Mark Russinovich   Vista Multimedia Playback and Network Throughput

Miscellaneous Performance Suggestions

Use UNION ALL in Union queries rather than just UNION.

Delete and recreate table links rather than refreshing the links.   In some situations Access can cache too much information about the link connection slowing things down excessively.  The problem I have with this approach is if the routine is interrupted for whatever reason you can lose the link to the table(s) you have removed but not yet recreated.   This may be particularly useful after converting an app from Access 97 to newer.

Links to tables on MDB which are not accessible. You may have some tables linked to a secondary MDB for which the server is no longer available or drive letter is no longer mapped.

Various Novell clients, including 3.1 sp2, cause Database query in MS Access is unacceptably slow.  Note that some Novell clients can also cause corruptions.   Some older MS Novell client versions, 2.10, 2.11, 2.5, can cause performance problems; MS Access and slowness - TID2946448

Inserting/Updating/Deleting lots of records using VBA code?  Then HOWTO: Speed Up Data Access by Using BeginTrans & CommitTrans - 146908 may help.

Wireless Networking You shouldn't be using Access over a wireless network as wireless networking is prone to momentary interruptions and can cause corruptions.   And if the users are indeed mobile it will get worse.  Instead use Terminal Server or SQL Server or similar.   That said see if there is another wireless network on your same channel.  If so there could be lots of traffic conflicts. Even adjacent channels can overlap their frequency ranges  

I also found the speed of 54 mbps wireless networking to be about five times slower than 100 mbps wired networking.  Granted this may have been caused by a consumer grade wireless access point.

Shared file access is delayed if the file is open on another computer - 150384  This has been reported several times as helping with performance however I haven't yet tried it.   What the article doesn't make clear is that the registry settings are only changed on the server.   This does apply in small network scenarios where a Windows NT 4.0/2000/XP workstation is used as a server.    Thanks to Jan from CZ for reminding me about this KB article.

User profile Rohan reported one computer was slow on the network compared to the others.   The IT department stated it was the user profile.  I'm assuming the IT department deleted the profile and started fresh again.

Set Can Grow and Can Shrink on forms section properties to No.  Note that this is not the control properties but the section properties.  Reported in the threadslow form rendering when using Access 2007 by cranes_fan at yahoo.com.

 

Microsoft Knowledge Base Articles.

The following Microsoft articles address performance improvements that can be obtained when using Access 2000. Each of these suggestions should be reviewed and applied as appropriate to obtain maximum performance from Access 2000.  They will almost certainly help in Access 2002 and newer as well.   Some will make a difference in Access 97 too.

  • High Rate of Collisions on 100-Megabit Networks - 315237 While unlikely definitely worth checking.   On the subject of collisions you should also check the network hub/switch.  If the collisions light is flickering much then have a switch put in place.   Now you haven't been able to buy a hub for a few years but there could still be some old junk sitting around forgotten about.

Miscellaneous MSDN Articles

Optimizing Microsoft Office Access Applications Linked to SQL Server 

HP machines running

تم تعديل هذه المشاركة بواسطة rahmasoft1 في 30 أكتوبر 2013 في 01:28

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#17

ماهو الحد الاقصى المسموح به لمستخدمى البرنامج فى نفس الوقت

#18

حسب ما قرأت يا أستاذ  لطفي العدد المعقول بدون مشاكل يكون من 5-7 مستخدمين كحد اقصي أكثر من ذلك سوف يكون هناك مشاكل 

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#19
rahmasoft1 كتب:

حسب ما قرأت يا أستاذ  لطفي العدد المعقول بدون مشاكل يكون من 5-7 مستخدمين كحد اقصي أكثر من ذلك سوف يكون هناك مشاكل 

 

اخي الفاضل : ابو رحمة

 

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

 

الحالة الأولى : العدد الأقصى المسموح به لعدد المستخدمين هو 255 مستخدم  ( وسيتم توضيح ذلك )

 

post-15367-0-52520500-1383151014_thumb.g

 

 

 

الحالة الثانية : العدد الأقصى المسموح به لعدد المستخدمين هو 10 مستخدمين ( وسيتم توضيح ذلك )

 

 

في الحالة الأولى عندما نستخدم الربط مع  Microsoft SQL Server  و يكون نظام التشعيل Windows Server في هذه الحالة يمكننا الوصول الى 255 مستخدم

 

 

في الحالة الثانية يكون عدد المستخدمين لا يتعدى 10 مستخدمين في حالة استخدام نظام التشغيل Windows XP ففي هذه الحالة لن يسمخ لنا

 

نظام التشغيل Windows XP  بأكثر من عشر مستخدمين لأنه يستخدم اتصالات شبكة الند للند  Windows XP peer-to-peer network

 

 

فأتمنى عدم الخلط بين الحالتين

 

بالتوفيق

1
#20

جزاكم الله خيرا دكتورة زهرة على تصحيح المعلومة و على التوضيح

 

 

و بالفعل كنت أتحدث عن الحالة الثاتية و هي معظم حالات مشاركة تطبيقات الاكسس عبر الشبكة 

 

لذلك جزاكم الله كل خير على التوضيح  و دائما سباقة للخير يا أم عهود

تم تعديل هذه المشاركة بواسطة rahmasoft1 في 30 أكتوبر 2013 في 20:23

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#21
اقتباس

 

 

 

في الحالة الثانية يكون عدد المستخدمين لا يتعدى 10 مستخدمين في حالة استخدام نظام التشغيل Windows XP ففي هذه الحالة لن يسمخ لنا

 

نظام التشغيل Windows XP  بأكثر من عشر مستخدمين لأنه يستخدم اتصالات شبكة الند للند  Windows XP peer-to-peer network

 

 

السلام عليكم

 

ماذا عن انظمة التشغيل الاخرى  مثل وندوز7  مثلا هل هي نفس الحالة  بالنسبة الى عدد المستخدمين 

 

وشكرا 

#22
lordring كتب:

السلام عليكم

 

ماذا عن انظمة التشغيل الاخرى  مثل وندوز7  مثلا هل هي نفس الحالة  بالنسبة الى عدد المستخدمين 

 

وشكرا 

 

نعم اخي الكريم 

 

ما ينطبق على ويندوز XP ينطبق على ويندوز 7 لأنك لا تستخدم Windows Server

 

فهناك فرق بين الويندوز العادي سواء xp او 7  والويندوز السيرفر

1
#23

شكرا على التوضيح 

#24

up

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…