آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

آموزش انتشار (publication) داده به وسیله ی Merge Replication

انتشار داده به وسیله ی Merge Replication (تکثیر ادغامی)

در این درس با استفاده از SQL Server Management Studio یک merge publication ایجاد کرده، سپس آن را برای publish (منتشر کردن) زیرمجموعه ای از جداول Employee، SalesOrderHeader و SalesOrderDetail در پایگاه داده ی نمونه ی AdventureWorks2012 بکار می برید. جداول مزبور با parameterized row filters (سطرهای فیلتر شده بر اساس پارامتر) فیلتر شده تا بدین وسیله هر اشتراک (subscription) دربردارنده ی بخش (partition) کاملا منحصر بفردی از داده ها باشد. همچنین SQL Server login که توسط Merge Agent بکار گرفته شده به PAL (لیست قابل دسترس انتشار) اضافه می کنید.
جهت ایجاد یک publication (انتشار) و تعریف مقاله، مراحل زیر را دنبال کنید:


  1. SQL Server Management Studio را راه اندازی کرده، سپس به Publisher متصل شوید و با کلیک روی گره ی server آن را بسط دهید.
  2. با کلیک روی پوشه ی Replication آن را بازکرده، روی Local Publications راست کلیک کنید. حال New Publication را کلیک نمایید.
    Publication Configuration Wizard (راهنمای نصب پیکربندی انتشار) راه اندازی می شود.
  3. روی صفحه ی Publication Database، AdventureWorks2012 را انتخاب کرده، سپس دکمه ی Next را کلیک کنید.
  4. داخل صفحه ی Publication Type، Merge publication را انتخاب کرده، سپس Next را کلیک کنید.
  5. در صفحه ی Subscriber Types، اطمینان حاصل کنید که تنها ویرایش 2008 SQL Server و بالاتر انتخاب شده، سپس Next را کلیک نمایید.
  6. در صفحه ی Articles، ابتدا گره ی Tables را باز کرده، سپس جداول SalesOrderHeader و SalesOrderDetail را انتخاب کنید. حال جدول Employee را باز کرده، ستون های EmployeeID یا LoginID را انتخاب نمایید، سپس Next را کلیک کنید.
  7. نکته:

    در صورت نیاز، ستون های اضافه بر سازمان به صورت خودکار انتخاب می شوند. هر یک از ستون های اضافی که به صورت خودکار انتخاب شده را کلیک کرده و برای پی بردن به علت الزامی بودن ستون مورد نظر توضیح درج شده در زیر لیست Objects to publish را بخوانید.


  8. در صفحه ی Filter Table Rows، Add را کلیک کرده، سپس Add Filter را انتخاب کنید.
  9. داخل پنجره ی محاوره Add Filter، در Select the table to filter جدول Employee (HumanResources) را انتخاب کرده و ستون LoginID را کلیک کنید. پیکان سمت راست را کلیک کرده تا ستون به عبارت WHERE پرس و جوی (query) filter اضافه شود. سپس عبارت WHERE را به صورت زیر اصلاح کنید:
  10.     WHERE [LoginID] = HOST_NAME()
  11. حال A row from this table will go to only one subscription را کلیک کرده، سپس بر روی دکمه ی OK کلیک کنید.
  12. در صفحه ی Filter Table Rows، جدول Employee (Human Resources) را انتخاب کرده و Add را کلیک کنید. پس از آن گزینه ی Add Join to Extend the Selected Filter را انتخاب نمایید.
  13. در پنجره ی محاوره ی Add Join، Sales.SalesOrderHeader درج شده در زیر Joined table را انتخاب نموده، Write the join statement manually را کلیک کنید، سپس دستور join را به ترتیب زیر تکمیل نمایید:
  14.             ON Employee.EmployeeID = SalesOrderHeader.SalesPersonID
  15. در Specify join options، Unique key را انتخاب کرده، سپس بر روی OK کلیک نمایید.
  16. در صفحه ی the Filter Table Rows، SalesOrderHeader را انتخاب نموده، اکنون Add را کلیک کنید.
  17. در پنجره ی محاوره ی Add Join، Sales.SalesOrderDetail درج شده در زیر Joined table را انتخاب کنید.
  18. اکنون Write the join statement manually را کلیک کنید.
  19. در Filtered table columns، BusinessEntityID را انتخاب کرده، سپس با کلیک بر روی دکمه ی پیکان (arrow) اسم ستون را در دستور join کپی و جای گذاری کنید.
  20. در کادر Join statement، دستور join را به صورت زیر اصلاح کنید:
  21. ON Employee.BusinessEntityID = SalesOrderHeader.SalesPersonID
  22. در Specify join options، Unique key را انتخاب نموده، سپس بر روی OK کلیک کنید.
  23. در صفحه ی Filter Table Rows، جدول SalesOrderHeader (Sales) را انتخاب نموده، Add را کلیک کنید. اکنون Add Join to Extend the Selected Filter را کلیک نمایید.
  24. در پنجره ی محاوره ی Add Join، Sales.SalesOrderDetail درج شده زیر Joined table را انتخاب نموده، OK را کلیک کنید. پس از آن Next را کلیک نمایید.
  25. Create a snapshot immediately را انتخاب نموده، Schedule the snapshot agent to run at the following times را پاک کرده، سپس Next را کلیک نمایید.
  26. در صفحه ی Agent Security، Security Settings را انتخاب کرده، \repl_snapshot را داخل کادر Process account تایپ کنید، سپس گذرواژه ی مختص این حساب کاربری را فراهم نموده و بعد OK را کلیک کنید. اکنون بر روی Finish کلیک کنید.
  27. در صفحه ی Complete the Wizard، AdvWorksSalesOrdersMerge را در کادر Publication name وارد کرده، سپس Finish را کلیک کنید.
  28. پس از ایجاد شدن publication، دکمه ی Close را کلیک کنید.

جهت مشاهده ی وضعیت ایجاد snapshot (نسخه ی فوری)، مراحل زیر را دنبال کنید:


  1. محیط SQL Server را راه اندازی کرده، سپس به سرور Publisher متصل شوید. با کلیک بر روی گره ی server آن را بسط داده، سپس پوشه ی Replication را باز کنید.
  2. داخل پوشه ی Local Publications، AdvWorksSalesOrdersMerge را راست کلیک کرده، سپس بر روی View Snapshot Agent Status کلیک نمایید.
  3. حال مشاهده می کنید که وضعیت جاری job (کار) Snapshot Agent نمایش داده می شود. لازم است پیش از پرداختن به ادامه ی مبحث از انجام با موفقیت snapshot job اطمینان حاصل کنید.

به منظور افزودن Merge Agent login به PAL (لیست قابل دسترس انتشار)، به صورت زیر اقدام کنید:


  1. SQL Server Management Studio را راه اندازی کرده، سپس به سرور Publisher متصل شوید. با کلیک بر روی گره ی server آن را بسط داده، حال پوشه ی Replication را باز کنید.
  2. درون پوشه ی Local Publications، AdvWorksSalesOrdersMerge را راست کلیک کرده، پس از آن بر روی Properties کلیک کنید.
    پنجره ی محاوره ی Publication Properties نمایش داده می شود.
  3. حال صفحه ی Publication Access List را انتخاب کرده، Add را کلیک نمایید.
  4. در پنجره ی محاوره ی Add Publication Access، \repl_merge را انتخاب نموده و OK را کلیک کنید.

شما با موفقیت یک انتشار ادغامی (merge publication) ایجاد کرده اید. در درس بعدی به این انتشار subscribe می کنید (با آن مشترک می شوید).


  • 1028
  •    838
  • تاریخ ارسال :   1394/09/23

دانلود PDF دانشجویان گرامی اگر این مطلب برای شما مفید بود لطفا ما را در GooglePlus محبوب کنید
رمز عبور: tahlildadeh.com یا www.tahlildadeh.com
ارسال دیدگاه نظرات کاربران
شماره موبایل دیدگاه
عنوان پست الکترونیک

ارسال

آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

تمامی حقوق این سایت متعلق به آموزشگاه تحلیل داده می باشد .