مدونة عادل خياطة

مدونة عربية للمبرمجين و المطورين

السلام عليكم.

حديثنا اليوم عن Transactional Replication و هو تتمة لعدة تدوينات تتحدث عن ال Replication

يستخدم Transactional Replication عادة بين السيرفرات التي تحتاج إلى سرعة نقل بيانات عالية, و لها الفوائد التالية:

  • التوسع Scalability
  • توفر البيانات Availability
  • التقارير Reporting
  • دمج البيانات من أكثر من موقع
  • دمج البيانات غير المتجانسة

و في هذا النوع يتم تخزين العمليات Transactions التي تتم على البيانات و من ثم يتم تنفيذها عند نقل البيانات إلى المشترك, و هذه من أحد مزايا ال Transactional Replication حيث يتم التعامل مع كل عملية على حدة حتى لو تم تعديل نفس البيانات أكثر من مرة.

نقل البيانات يمكن أن يتم لحظياً أو بشكل مجدول Scheduled ويقوم المندوب Log Reader Agent بهذه المهمة حيث يقوم بمراقبة أي Transaction جديدة و تطبيقها على المشتركين.

ال Transactional Replication يكون بشكل افتراضي باتجاه واحد من ال Publisher إلى Subscriber أي أن البيانات يتم نسخها من أحد الأطراف إلى الآخر و لكن يمكن جعله باتجاهين باستخدام Updatable Subscriptions لكن هذه الميزة لن تكون متوفرة في نسخ SQL Server المستقبلية لذلك ينصح بعدم استخدامها و البديل في هذه الحالة هو Peer-To-Peer Replication.

خطوات تهيئة Transactional Replication تشبه خطوات تهيئة Snapshot Replication و الفرق هو فقط في خطوة تهيئة المندوب Log Reader Agent

انقر بزر الماوس اليمين على Local Publications و اختر New Publication

01

اختر قاعدة البيانات المطلوبة ( Test1 )

02

اختر النوع Transactional Replication

03

قم بتحديد ال Articles التي تريد نسخها بين السيرفرات

04

هذه صفحة الفلترة الأفقية ( سيتم شرحها مستقبلاً )

05

تهيئة مندوب ال Snapshot وهو مهم من أجل تجهيز نسخة أولية عن البيانات التي سيتم نسخها إلى المشترك عند حدوث أول عملية تزامن

06

ضع الصلاحيات المناسبة لهذا المندوب

07

طبعاً كما ذكرنا أن هذا النوع من ال Replication يحتاج إلى مندوب إضافي وهو Log Reader Agent و مهمته مراقبة ال Transaction Log و هنا تم استخدام نفس الصلاحيات المستخدمة لمندوب ال Snapshot.

08

09

أعطه اسماً ملائماً.

10

تأكد أن العملية تمت بنجاح.

11

انقر بزر الماوس اليمين على Publication الجديد : Transactional-Test و اختر View Snapshot Agent Status

12

لاحظ أنه قد تم إنشاء نسخة عن قاعدة البيانات ( وهي بسيطة بطبيعة الأحوال: فقط جدول واحد )

13

انقر بزر الماوس اليمين على Publication الجديد : Transactional-Test و اختر View Log Reader Agent Status

لاحظ كيف أنه بشكل افتراضي يكون هذا المندوب يعمل بشكل متواصل و يراقب ال Transaction Log و عند حدوث أية عملية فإنه يقوم بتطبيقها مباشرة على المشتركين.

14

وإلى لقاء قريب بإذن الله.

والسلام.

Be Sociable, Share!
التصنيفات: Replication, SQL Server

About عادل خياطة

مهندس كومبيوتر

يجب أن تكون مسجل لتتمكن من اضافة تعليق .

  • RSS
  • Delicious
  • Digg
  • Facebook
  • Twitter
  • Linkedin
  • Youtube

الأكثر قراءة

إرسال رسائل SMS

السلام عليكم. ازدادت في الآونة الأخيرة الحاجة إلى إرسال إشعارات أو ...

مشكلة تخزين التعديلات على الجداول ف

السلام عليكم. عندما تنفذ إحدى التعديلات التالية على أحد الجداول في ...

على بركة الله

بسم الله و الحمد لله و الصلاة و السلام على ...

تفقيط الأرقام

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

ربط مشروع برمجي في SQL Server مع TFS

السلام عليكم. امتداداً للتدوينة السابقة حول تثبيت Team Foundation Server فأردت ...