SQL Server Agent İle Otomatik Görev Tanımlama Uygulaması

  • Ali
  • | 07 May 2025
  • | SQL

Herkese merhaba Ben Ali,

Giriş

SQL Server Agent, SQL Server içerisinde zamanlanmış görevleri otomatik ve periyodik olarak geçekleştirmemizi sağlayan güçlü bir hizmettir. Veritabanı yedekleme, E-posta gönderme, düzenli veri aktarımı gibi birçok görevi zamanlayarak otomatikleştirmek mümkündür. Bu uygulamada, SQL Server Agent kullanarak belirli aralıklarla veritabanına tarih ekleyen basit bir görev (job) oluşturacağız. Kavramsal bilgilere ihtiyaç duyarsanız, "SQL Server Agent Kavramı" başlıklı makaleye göz atabilirsiniz.

SQL Server Agent, Object Explorer penceresinin en altında yer alır. Eğer adının yanında kırmızı bir işaret varsa bu, servisin çalışmadığını gösterir. Endişelenmeyin, servisi aşağıdaki yöntemlerden biriyle kolayca başlatabilirsiniz:

  • Windows Servisleri Üzerinden: Başlat menüsüne services.msc yazıp açın. Ardından listeden SQL Server Agent (MSSQLSERVER) hizmetini bulun ve başlatın.
  • SQL Server Management Studio (SSMS) üzerinden: Object Explorer'da SQL Server Agent'a sağ tıklayıp Start seçeneğini kullanarak servisi başlatabilirsiniz.

Servis başlatıldığında kırmızı işaret kaybolacaktır ve SQL Server Agent aktif hale gelecektir.

Örnek Veritabanı ve Tablo Oluşturma

Bir job tanımlamadan önce test amacıyla kullanacağımız basit bir veritabanı ve tablo oluşturalım:

CREATE DATABASE SSAGENT;
GO

USE SSAGENT;
GO

CREATE TABLE DATES (
    ID INT IDENTITY PRIMARY KEY,
    DATE_ DATETIME
);
GO

INSERT INTO DATES (DATE_)
VALUES (GETDATE());

Bu işlemi, SQL Server Agent aracılığıyla belirli aralıklarla otomatik hale getireceğiz.

Yeni Bir Job Oluşturmak

Object Explorer üzerinden sırasıyla şu adımları izleyin:

  • SQL Server Agent > Jobs > New Job
General Sekmesi:
  • Name: Örneğin "Otomatik Tarih At"
  • Owner: Görevi hangi kullanıcı çalıştıracak ise o kullanıcıyı seçiyoruz.
  • Description: Bu job için isteğe bağlı bir açıklama yazabiliriz.

ali kaya sql server agent

Steps Sekmesi:
  • New butonuna tıklayarak yeni bir adım oluşturun.
  • Step Name: Otomatik Tarih Ekle
  • Type: Transact-SQL script (T-SQL)
  • Database: SSAGENT
  • Command:
    INSERT INTO DATES (DATE_)
    VALUES (GETDATE());
    ali kaya sql server agent
Schedules Sekmesi:
  • Name: Örneğin “10 Saniyede Bir”
  • Schedule Type: Recurring (tekrarlı)
  • Frequency:
    • Occurs: Daily (günlük)
    • Daily Frequency: Every 10 seconds (SSMS arayüzüne göre bu saniyelik ayarlar detaylı konfigürasyon gerektirebilir)
    ali kaya sql server agent

    Alternatif zamanlama seçenekleri:

    • Start automatically when SQL Server Agent starts: SQL Server Agent başladığında bir kez çalışır.
    • Start whenever the CPUs become idle: CPU’lar boşta kaldığında çalışır.
    • One time: Tek seferlik çalıştırma.

    Kapanış

    SQL Server Agent, SQL Server yönetimini kolaylaştıran ve iş sürekliliğini sağlayan önemli bir bileşendir. Bu uygulama ile belirli aralıklarla veri ekleyen basit bir otomasyonun nasıl kurulduğunu öğrendik. Daha karmaşık iş akışları için birden fazla adım, koşul ve hata yönetimi gibi özellikleri de keşfetmenizi öneririm. Veritabanı bakım ve yönetim görevlerini güvenilir şekilde otomatikleştirmek için SQL Server Agent’tan en iyi şekilde yararlanabilirsiniz.

İlginizi Çekebilir
makale görseli
SQL VIEW nedir

SQL'de önemli yapılardan biri olan VIEW yapısı inceliyor ve tecrübe ediyoruz.

Devamını Oku
makale görseli
SQL Server Agent ile Otomatik Veritabanı Yedekleme

SQL Server Agent ile Otomatik Veritabanı Yedekleme

Devamını Oku
makale görseli
SQL Server'da Yedekleme Yönetimi

SQL Server'da Yedekleme Yönetimi

Devamını Oku