# پایگاه‌های داده > SQL Server > مدیریت دیتابیس (Database Administration) > Replication >  راهنمایی در مورد ارتباط دو SQL

## sadeghpa80

سلام من توی شرکت دارم یه برنامه مینویسم
این برنامه یه فرم داره که قسمت اول این فرم رو توی کارخانه پر میکنن و قسمت دوم فرم رو توی دفتر مرکزی کامل میکنن البته بعضی اوقات این برعکس هم هست
بین این دو مکان هم ارتباط دارم 

حالا قصد دارم که با رپلیکیشن ارتباط این دو تا SQL رو باهم برقرار کنم
1-سوالم اینه که باید تیبل مد نظرم توی هر دوتا SQL ساخته بشه ؟ 
2-بعد از ارسال اطلاعات از هر طرف طرف مقابل میتونه روی اطلاعات ویرایش انجام بده ( یعنی طرف اول اطلاعات رو فرستاد به سمت طرف دوم , طرف دوم میتونه اطلاعات رو ویرایش کنه یا فقط میتونه اطلاعات رو ببینه ؟ )
3-اگه این تیبل ها در هر طرف schema های متفاوت داشته باشن مشکلی پیش میاد ؟؟؟

ممنون

----------


## pezhvakco

> این برنامه یه فرم داره که قسمت اول این فرم رو توی کارخانه پر میکنن و قسمت دوم فرم رو توی دفتر مرکزی کامل میکنن البته بعضی اوقات این برعکس هم هست





> بین این دو مکان هم ارتباط دارم





> حالا قصد دارم که با رپلیکیشن ارتباط این دو تا SQL رو باهم برقرار کنم


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

----------


## sadeghpa80

> نمیدونم برنامه شما چه است ولی با نوشته شما روش کارتون درست نیست
> برنامه نویسی شبکه برای همچین زمان هایی است .


ممنون میشم بیشتر راهنمایی بفرمایید 

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

برای کار هم مثالی میزنم 

کارخانه کالایی رو ارسال میکنه برای دفتر مرکزی 
فرم اول : کارخانه فرم رو با مشخصات کالای ارسالی پر میکنه 
فرم دوم : در دفتر مرکزی لیست کالاهایی که کارخانه در فرم اول پر کرده رو مشاهده میکنه و هر کدوم رو که تحویل گرفته بود با تیک مشخص میکنه 

حالا بعد میتونه کارخانه توی فرم سومی این دریافتی های دفتر مرکزی رو ببینه 

برای این کار چه باید کرد ؟ آیا رپلیکیشن بدرد این کار نمیخوره ؟

----------


## pezhvakco

> برای این کار چه باید کرد ؟


شما باید برنامه برپایه شبکه بنویسید.
=>
همه کاربران برنامه شما با یک پایگاه داده کار کنند و نه چند پایگاه داده.
با هر زبان برنامه نویسی که کار میکنید باید روش برنامه نویسی شبکه را یاد بگیرید و پیاده کنید.

----------


## sadeghpa80

> شما باید برنامه برپایه شبکه بنویسید.
> =>
> همه کاربران برنامه شما با یک پایگاه داده کار کنند و نه چند پایگاه داده.
> با هر زبان برنامه نویسی که کار میکنید باید روش برنامه نویسی شبکه را یاد بگیرید و پیاده کنید.


چون این دو مرکز من توی دوتا VLAN جدا هستن مجبورم از SQL Replication استفاده کنم 

حالا سوالم اینه 
من مثلا 10 تا Table دارم و 20 تا View
  اینا توی SQL اول من ساخته شده آیا اینا باید توی SQL دوم هم ساخته بشه یا خود Replication اینا رو اون ور میسازه ؟
  سوال دیگه آیا نیازی هست که این View ها رو هم انتقال بدم یا فقط تیبل ها رو انتقال بدم و View ها رو مجدد توی SQL دوم بسازم

----------


## pezhvakco

> این برنامه یه فرم داره که قسمت اول این فرم رو توی کارخانه پر میکنن و قسمت دوم فرم رو توی دفتر مرکزی کامل میکنن البته بعضی اوقات این برعکس هم هست


تا جایی که میدونم این خواسته شما Replication یک طرفه است
=> پیشنهاد میکنم کمی بیشتر درباره خواسته خودتون آگاهی بدست بیارید




> چون این دو مرکز من توی دوتا VLAN جدا هستن


=>



> مجبورم از SQL Replication استفاده کنم


چرا مجبور باشید
اگر مشکل شبکه و ارتباط بین این دو بخش باشه برای SQL Replication هم است
هزینه ،مدیریت و سربار روی برنامه SQL  این خواسته شما بیشتر و سنگینتر از برنامه نویسی شبکه است.



> اینا توی SQL اول من ساخته شده آیا اینا باید توی SQL دوم هم ساخته بشه یا خود Replication اینا رو اون ور میسازه ؟


در هنگام پیکربندی Replication میشه همه این ها را مشخص کرد.

----------


## sadeghpa80

> تا جایی که میدونم این خواسته شما Replication یک طرفه است
> => پیشنهاد میکنم کمی بیشتر درباره خواسته خودتون آگاهی بدست بیارید
> 
> *این قسمت نمیتونه یک طرفه باشه باشه چوت بعضی اوقات این اتفاق برعکس میافته و طو رف باید قابلیت خواندن و نوشتن رو داشته باشن و تبادل اطلاعات باید دو طرفه باشه* 
> 
> =>
> 
> چرا مجبور باشید
> اگر مشکل شبکه و ارتباط بین این دو بخش باشه برای SQL Replication هم است
> ...


ممنون از شما 
اما هدف استفاده من از replication اینه که دو طرف به صورت مستقل روی دیتا بیس خودشون کار کنن و این وسط فقط مثلا 5 تا تیبل اطلاعاتوشون جابجا بشه 
الان با transactional replication تونستم انتقال اطلاعات رو از یک سرور به اون یکی انجام بدم ولی از سرور 2 به سرور 1 انجام نمیشه در حالی که من می خوام دوطرفه باشه 
ممنون میشم راهنماییم بفرمایید

----------

