آموزش Sql Server Agent | استوایی ostovaee

آموزش Sql Server Agent

Sql Server Agent یک سرویس می‌باشد که تعیین زمانبندی و تشریح کار در عوض اجرای خودکار را بر عهده دارد و مهمترین وظیفه آن اجرا کردن jobها  می‌باشد. jobها عملیاتی هستند که دارای یکسری دستورات هستند که در یک زمان خاص بصورت روزانه، هفتگی و یا ماهانه و یا حتی بصورت دستی اجرا خواهند شد.

آموزش رایگان Sql Server | استوایی

Sql Server Agent چیست؟

همانطور که گفته شد agent یک سرویس Sql Server است که در هنگام نصب Sql این سرویس نصب خواهد شد و در قسمت Services ویندوز وجود دارد. توجه داشته باشید در صورتیکه این سرویس Start نباشد نمی توان job تعریف کرد و jobهای قبلی نیز اجرا نخواهند شد در این حالت باید در قسمت Services – سرویس Sql Server Agent را Start نمایید.

سرویس Sql Server Agent | استوایی
سرویس Sql Server Agent | استوایی

تعریف job در Sql

ابتدا وارد محیط Sql Server شده و در قسمت Object Explorer در صورتیکه Sql Server Agent، Stop می‌باشد بر روی آن کلیک راست کرده و گزینه start را بزنید.

Service Agent | استوایی
Service Agent | استوایی

سپس در قسمت jobs کلیک راست کرده و گزینه New job را انتخاب تا پنجره جدید جهت ایجاد job باز شود.

دستور جاب در Sql | استوایی
دستور جاب در Sql | استوایی

در پنجره باز شده در قسمت General باید یک نام برای job مشخص شود.

آموزش Sql Server Agent | استوایی
تعریف جاب در اس کیو ال | استوایی

در قسمت Steps مشخص می‌کنیم که چه کاری می‌خواهیم انجام دهیم و باید حداقل یک Step تعریف کنیم. در این قسمت دکمه New را می‌زنیم تا پنجره تعریف Steps باز شود.

ایجاد job در Sql | استوایی
ایجاد job در Sql | استوایی

در پنجره باز شده در قسمت StepName نام Step را نوشته و در بخش DataBase نام دیتابیسی که این job و دستورات باید روی آن اجرا شود را انتخاب نمایید. در قسمت Command نیز دستوراتی که می‌خواهیم اجرا شود را می‌نویسیم و در نهایت دکمه Ok را می‌زنیم تا Step موردنظر اضافه شود.

تعریف جاب در Sql | استوایی
تعریف جاب در Sql | استوایی

تعریف schedule job

در قسمت Scheduls دکمه New را جهت مشخص نمودن زمان اجرای دستورات بزنید.

دستور job در Sql | استوایی
دستور job در Sql | استوایی

در پنجره باز شده یک نام مشخص کنید و در قسمت Frequency – Occurs مشخص نمایید که این دستورات بصورت روزانه، هفتگی و یا ماهانه اجرا شود. درصورتیکه هفتگی انتخاب شود باید روز هفته و اینکه چند بار اجرا شود نیز مشخص شود. در صورتیکه بصورت روزانه انتخاب شود باید در قسمت Daily Frequency مشخص کنیم که چند بار در روز و در چه ساعاتی اجرا شود.

در قسمت Duration می‌توان تاریخ شروع و تاریخ انتها job را مشخص کرد در صورتیکه No end date انتخاب شود این job برای همیشه و بدون تاریخ پایان اجرا خواهد شد. در انتها دکمه ok را بزنید تا Schedule اضافه شود.

توجه داشته باشید امکان تعریف چند Schedules برای یک job وجود دارد.

آموزش job در Sql | استوایی
آموزش job در Sql | استوایی

در قسمت Alert می‌توان یک پیغام برای موفقیت اجرا شدن و یا نشدن یک job جهت نمایش به کاربر ایجاد کرد.

تعریف job در اس کیو ال | استوایی
تعریف job در اس کیو ال | استوایی

در قسمت Notifications می‌توان یک ایمیل و اینکه چه موقع ایمیل اطلاع رسانی ارسال شود را مشخص کرد. ایمیل اطلاع رسانی دارای سه حالت می‌باشد:

  • هنگامیکه job با موفقیت اجرا شده است.
  • هنگامیکه job نا موفق بوده است و در هنگام اجرا خطایی رخ داده است.
  • هنگامیکه job کامل شده است.
ایجاد job در اس کیو ال | استوایی
ایجاد job در اس کیو ال | استوایی

در قسمت Target باید سرور که در حال اجراست را مشخص نمایید و سپس دکمه ok را بزنید.

ایجاد جاب در اس کیو ال | استوایی
ایجاد جاب در اس کیو ال | استوایی
جادوی استوایی Sql Server |استوایی

دستور job در Sql Server Agent

در صورتیکه بخواهیم یک job را خارج از آن بازه زمانی و بصورت دستی اجرا کنیم باید بر روی job مورد نظر کلیک راست کرده و گزینه Start job at step را بزنید تا دستورات job اجرا شود.

اگر بخواهیم job برای مدتی اجرا نشود می‌توان آنرا Disable کرد و سپس در صورت نیاز آنرا مجدد Enable نمود. همچنین درصورتیکه نیاز به ویرایش دستورات و یا سایر اطلاعات job باشد با کلیک راست بر روی job مورد نظر و انتخاب گزینه Properties پنجره برای ویرایش که دقیقا همانند پنجره تعریف job می‌باشد باز خواهد شد.

آموزش Sql Server Agent | استوایی ostovaee | Sql job |
آموزش Sql Server Agent | SQL job | استوایی ostovaee

سرفصل های آموزش Sql

4 نظر برای آموزش Sql Server Agent ثبت شده

  1. سلام ممنون از اموزش خوبتون عالی واقعا اگر امکان اره یه اموزش دیگه اسکول سرور بنام Alwayson هم بزارید چون خیلی ضروریه ممنون از شما
    اگر امکان داره یه تایمی بمن بدیدکه من بودنم این اموزش اماده میشه یانه که من هم خریداری کنم ممنون از شما

    1. سلام دوست عزیز. امیدوارم که خوب باشید. خوشحالم که از آموزش ها راضی بودید. متاسفانه الان امکان آموزش Always on رو نداریم

  2. سلام درباره جاب سوال داشتم
    من برای تخلیه رکوردها از یک دیتابیس به یک دیتابیس دیگر از تریگر استفاده میکنم
    بخصوص توی مباحث مربوط به حضور و غیاب
    آیا با job هم میتونم این کار رو بکنم؟؟؟؟؟

    1. سلام دوست عزیز
      بله با job هم میشه انجام داد و باید برای آن زمابندی مشخص شود اما با استفاده از تریگر می‌توان مشخص کرد بعد از هر عملیاتی مانند اضافه، ویرایش یا حذف همان لحظه تغییرات به دیتابیس دوم منتقل شود.

دیدگاهتان را بنویسید

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