خانه > MSSQL Server > چگونه می توان رپلیکیشن با همگام سازی sync دو طرفه در sql server داشت؟

چگونه می توان رپلیکیشن با همگام سازی sync دو طرفه در sql server داشت؟

How to use merge publication in sql server?

گاهی اوقات لازم می شود که دو تا جدول اطلاعات خود را با هم همگام یا sync کنند. مثلا اگر دیتابیسی publication و دیتابیس دیگری  subscription باشند می توان طوری تنظیم نمود تا تغییرات در هر دو طرف با هم همگام یا sync شوند( فکر کنید اگر مجبور نبودیم همزمان هم اصطلاحات انگیسی را بکار ببریم و هم برای زنده نگه داشتن زبان فارسی معادل های آنها را در کنارشان بنویسیم!!!!)

به هر حال فرض کنید دو تا اپلیکیشن دارید در دو جای مختلف که می خواهید اطلاعات یکسانی بطور همزمان داشته باشند. مثلا اگر در نقطه A اطلاعات را وارد کردند در نقطه B هم همان اطلاعات را داشته باشند و بالعکس

برای دستیابی به چنین متدی بهتر است از روش Merge در رپلیکیشن  sql server استفاده کنید. sql server در استفاده از روش Merge مجبور می شود که یک پراپرتی یا همان ستون به هر جدولی بنام rowguid ایجاد کند تا با رجوع به آن بتواند کار sync را انجام دهد.

این در واقع نکته کلیدی روش Merge هست. البته توجه دارید که در این روش قدری به حجم دیتابیس تون اضافه خواهد شد که البته ارزش آنرا هم دارد.

موفق باشید.

Categories: MSSQL Server Tags:
  1. حسین
    ۲۳ اردیبهشت ۱۳۹۳ در ۰۵:۳۱ | #1

    سلام قربان
    مثل این که منابع فارسی کافی برای این مسئله وجود نداره
    اگه ممکنه این روش رو بیشتر توضیح بدید و یک مثال و نمونه هم بگذارید.
    ممنون

    • ۲۴ اردیبهشت ۱۳۹۳ در ۰۴:۰۸ | #2

      ممنون از بازدید شما. چشم سعی می کنم این موضوع را یکم بیشتر توضیح بدم. البته همراه با مثال

  2. منیر
    ۲۷ دی ۱۳۹۳ در ۰۷:۰۷ | #3

    با عرض سلام و ادب
    من دو تا سرور با نام های یکسان داریم و sqlserver هر دو تا یکی است یعنی این دو تا سرور با هم sink شده اند الان ما میخواهیم update که بر روی پایگاه داده سرور اولی رخ می دهد این تغییرات هم در پایگاه داده سرور دوم هم نمایش داده شود که من برای این کار از replication استفاده کردم ولی هنگام تعریف subscriberبر روی سرور دومی چون اسم دو تا سرور یکی هست پیغام error می دهد در واقع pubication را نمی شناسد ایا این subscriber باید بر روی سرور دومی که sqlserver بر روی ان است انجم شود یا هر دو مرحله باید بر روی سرور اولی انجام پذیرد

    • ۲۸ دی ۱۳۹۳ در ۰۸:۵۸ | #4

      با سلام و تشکر از بازدیدتون

      لطفا نام یکی از سرورها را تغییر بدید و تست کنید ببینید نتیجه چیه؟
      اگر مشکل بود پیغام بزارید یا تلفنی در خدمتتون هستم

      با تشکر
      فعال خواه

  3. منیر
    ۲۸ دی ۱۳۹۳ در ۱۳:۲۸ | #5

    مشکل از این است که نام سرور را نمی توانیم تغییر دهیم چون وقتی این کار انجام میگیرد دیگر ارتباط sqlserver از بین می رود و ما این کار را انجام دادیم ولی الان نام سرور هم دیگه تغییر نمی کند

  4. علیرضا نایینی
    ۱۰ شهریور ۱۳۹۴ در ۱۴:۲۱ | #6

    واقعا دستتون درد نکنه
    بسیار عالی
    فقط کاشکی مثالی در این زمینه هم مطرح میکردید، ولی به هر حال ممنون

    • ۲۲ شهریور ۱۳۹۴ در ۰۵:۱۹ | #7

      ضمن تشکر از بازدیدتون، پیشنهادتون جالب هست. اگر شما مثالی دارید ارسال کنید تا با نام خودتان منتشر کنم تا مورد استفاده بقیه قرار گیرد.

  5. ۴ مهر ۱۳۹۵ در ۱۱:۴۷ | #8

    مرسی

  1. بدون بازتاب
برای فرستادن دیدگاه بایدوارد شوید.
IP Blocking Protection is enabled by IP Address Blocker from LionScripts.com.