View Full Version : انجام عمل Replication از طریق برنامه
iamebadi
سه شنبه 15 آذر 1384, 10:54 صبح
با سلام
من میخوام عملیات Replication بین دو database را از طریق برنامه (VB.NET) انجام بدم ....یعنی با زدن دکمه ای در برنامه عملیات Replication شروع شود....
اگه کسی در این مورد کاری کرده یا اطلاعاتی داره پست کنه...
پیشاپیش ممنون
S.Azish
سه شنبه 15 آذر 1384, 16:25 عصر
گمون میکنم دو راه وجود داشته باشه
1. هر Replication معمولآ یک یا چند Job درست میکنه که میتونید یک Stored Procedure درست کنید و Job Id اون Replication رو بهش بدید تا براتون اجرا کنه
exec msdb..sp_start_job @job_id = 0xF427E7D0EA647A40B2F37145217BD0CB
2. SQL Server Profiler رو اجرا کنید و بعد Replication رو اجرا کنید. مراحل مورد نیاز رو از Profiler کپی کنید و یک Stored Procedure ازش بسازید و از داخل VB.Net اجراش کنید.
سید مسعود موحد
سه شنبه 15 آذر 1384, 16:49 عصر
دوست عزیز
2. SQL Server Profiler رو اجرا کنید و بعد Replication رو اجرا کنید. مراحل مورد نیاز رو از Profiler کپی کنید و یک Stored Procedure ازش بسازید و از داخل VB.Net اجراش کنید.
من کار شما رو انجام دادم ولی کد قابل قبولی بر نمی گرداند و تازه کدهایی رو هم که میگذارد قابل اجرا نیستن
majid_afra222
سه شنبه 15 آذر 1384, 18:06 عصر
سلام
این برنامه هم job داره و هم replication
همش هم اسکریپت خود SQL Server هستش که اینجا کپی شده.
امیدوارم بدردت بخوره.
AminSobati
سه شنبه 15 آذر 1384, 20:32 عصر
اگر قراره Replication به کمک ویزارد انجام بشه و فقط Sync کردن(جابجایی اطلاعات) رو کاربر استارت کنه، sp_start_job روش خوبیه.
ولی Config کردن تمام مراحل Replication توسط TSQL هم امکان پذیره. من فایلی که آقای افرا پست کردند رو ندیدم ولی حدس میزنم همین موضوع باشه.
ضمنا اگر در Books Online در قسمت ایندکس، عبارت system stored procedures رو تایپ کنین، در زیر مجموعه اون، Listed رو انتخاب کنین، در این قسمت تمام SPها به شکل دسته بندی شده وجود دارند. به عنوان مرجع، میتونین تمام SPهای مربوط به Replication رو ببینید. اگر از مراحل تنظیم Replication آگاهی داشته باشید، حتما SPهای مربوطه رو پیدا میکنید..
یک روش خوب دیگه، استفاده از SQL-DMO هست که همه چیز رو در قالب Object در اختیار شما قرار میده و نیازی به سر و کار پیدا کردن با TSQL نیست.
برای شروع، در قسمت ایندکس که ذکر شد، عبارت Replication رو تایپ کنین و زیرش دنبال Programming بگردین.
mahak_f
چهارشنبه 16 آذر 1384, 09:56 صبح
معذرت می خوام. حالا که این بحث اینجا شروع شده میشه درباره خود Replication توضیح بدید یا بگید از کجا می تونم درباره مفهومش مطالعه کنم؟
Omid Rekabsaz
چهارشنبه 16 آذر 1384, 10:17 صبح
با سلام
شما علاوه بر زبان TSQLو استفاده از DMO که آقای ثباتی به آن اشاره کردند فکر می کنم بتوانید از com هایی که موجود است استفاده نمایید...
iamebadi
چهارشنبه 16 آذر 1384, 18:58 عصر
دست همه دوستان درد نکنه
فقط می خواستم بپرسم که چگونه میتونم آی دی یا Name ، یک Job رو بدست بیارم که به Sp_Start_Job بدم
AminSobati
پنج شنبه 17 آذر 1384, 00:17 صبح
دست همه دوستان درد نکنه
فقط می خواستم بپرسم که چگونه میتونم آی دی یا Name ، یک Job رو بدست بیارم که به Sp_Start_Job بدم
در Replication Monitor>Agents از Agent مورد نظر Properties بگیرین
Omid Rekabsaz
جمعه 18 آذر 1384, 11:10 صبح
اگر با پیدا کردن Id مشکلت حل می شه پس کارت خیلی ساده س!!! اگه از Agent مربوطه Properties بگیری در Tab دوم Step های مختلفی که در حین کار اجرا می شن رو می بینی... اگه درست بخاطر بیارم Step دوم دقیقا اون Job رو صدا می زنه...
یکی به سوال من جواب بده در مورد دو Pub و یک Sub... سوال در قسمت اصلی موجود است...
AminSobati
جمعه 18 آذر 1384, 12:29 عصر
اگر با پیدا کردن Id مشکلت حل می شه پس کارت خیلی ساده س!!! اگه از Agent مربوطه Properties بگیری در Tab دوم Step های مختلفی که در حین کار اجرا می شن رو می بینی... اگه درست بخاطر بیارم Step دوم دقیقا اون Job رو صدا می زنه...
یکی به سوال من جواب بده در مورد دو Pub و یک Sub... سوال در قسمت اصلی موجود است...
من پست کردم، ببینید...
http://www.barnamenevis.org/forum/showthread.php?p=170237
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.