Dzisiaj krótkie wyjaśnienie pojęcia SQL Agent oraz Instancji SQL Server.
Oba pojęcia sprowadzają się stricte do SQL Server jako produktu czyli serwera baz danych (omówione w poprzednim wpisie).
Serwer SQL składa się z kilku usług w systemie Windows (usługa pracuje niezależnie od tego czy użytkownik jest zalogowany do systemu czy nie w przeciwieństwie do programu uruchamianego przez użytkownika wtedy kiedy tego potrzebuje).
Podstawową usługą jest właśnie tzw. instancja SQL Server czyli główna usługa, która utrzymuje bazy danych, do której logują się programy klienckie itp. Wyróżniamy 2 rodzaje instancji:
- instancja domyślna – instancja, która proponowana jest w trakcie instalacji jeśli nie wykryto w systemie zainstalowanej innej instancji SQL. Domyślna oznacza tyle, że aby do niej się zalogować należy podać jako nazwę serwera bazy danych nazwę systemu komputera, na którym taka instancja jest zainstalowana
- instancja nazwana – to instancja, która jest kolejną (może ich być kilkadziesiąt w systemie) ma ona jako nazwę postać nazwa_komputera\nazwa_instancji czyli aby system był w stanie rozróżnić gdzie użytkownik chce się zalogować musi wiedzieć coś o jej dodatkowym identyfikatorze unikalnym, jest to ten fragment po backslashu (lewy ukośnik)
Podsumowując pojęcie instancja czy to domyślna czy nazwana oznacza po prostu serwer bazy danych, który zawiera X baz danych, na których pracuje użytkownik.
Kolejną usługą jest SQL Agent – jest to kolejna usługa, która występuje w SQL Server we wszystkich wariantach za wyjątkiem edycji Express czyli tej bezpłatnej i tej, na której domyślnie pracują produkty Asseco WAPRO ERP.
Do czego jest ona wykorzystywana?
SQL Agent to po prostu odpowiednik harmonogramu Windows, czyli pozwala uruchamiać zadania (np. kopie bezpieczeństwa, import, export danych) o wskazanej porze.
Użytkownik tworzy w ramach tej usługi tzw. job (zadanie), które skojarzone jest z jakimś harmonogramem (schedule) i wykonuje określoną logikę zadania.