Files
DBAdmin/docs___/dba_responsibility.md
2026-05-27 07:48:02 +00:00

633 lines
33 KiB
Markdown

# Obowiązki Administratora Baz Danych (DBA)
## Zarządzanie Serwerami Baz Danych
### 1. Microsoft SQL Server
**A. Przed instalacją**
* Zbieranie wymagań: CPU, pamięć, dyski, komponenty, użytkownicy usług, strona kodowa, klaster, replikacja, mirroring.
* Przygotowanie i formatowanie dysków na dane, logi, TempDB, system, archiwum i kopie zapasowe.
* Konfiguracja i weryfikacja CPU i pamięci serwera.
* Przygotowanie użytkowników usług w Active Directory (zazwyczaj przez zespół Windows).
**B. Instalacja**
* Instalacja SQL Server: Ustawienie ścieżek dysków na dane, strony kodowej, użytkowników usług, ustawień TempDB i pamięci.
**C. Po instalacji**
* Konfiguracja SQL Server: Zastosowanie najlepszych praktyk, ulepszonych ustawień i konfiguracji pamięci.
* Ustawienie użytkowników z uprawnieniami sysadmin i użytkowników usług.
* Konfiguracja poczty (SQL Mail), operatorów, alertów i SQL Agent.
* Przygotowanie dysków na dane i logi z odpowiednimi uprawnieniami i strukturą katalogów.
* Otwarcie niezbędnych portów w zaporze sieciowej (np. TCP 1433, UDP 1434).
* Wykluczenie folderów związanych z SQL ze skanowania antywirusowego.
**D. Zadania migracyjne (przy przenoszeniu ze starego serwera)**
* Uruchomienie Microsoft Assessment Tool w celu sprawdzenia kompatybilności.
* Analiza starego serwera pod kątem wymagań i ustawień.
* Tworzenie i transfer kopii zapasowych, odtwarzanie na nowym serwerze.
* Skryptowanie i odtwarzanie loginów, uprawnień, ustawień poczty, synonimów, operatorów, alertów, zadań SQL Agent, audytów, wyzwalaczy serwerowych i replikacji w razie potrzeby.
* Porównanie i ustawienie konfiguracji serwera.
* Analiza i migracja pakietów SSIS w razie potrzeby.
* Testowanie migracji: Weryfikacja komponentów, baz danych, łączności i kopii zapasowych.
* Migracja "Go-live": Przygotowanie starego i nowego serwera, zarządzanie zmianami IP, tworzenie snapshotów replikacji i włączanie wszystkich użytkowników i zadań po migracji.
**E. Bieżące zadania**
* Kopie zapasowe
* Konserwacja
* Monitorowanie
* Archiwizacja
* Zadania związane z danymi
* Strojenie wydajności
* Rozwiązywanie problemów
* Replikacja
* Zadania klastrowe
* Zarządzanie uprawnieniami
* Audyt
### 2. MySQL Server
**A. Przed instalacją**
* Zbieranie wymagań: CPU, pamięć, przestrzeń dyskowa, typ przechowywania, konfiguracja sieci, wersja MySQL i zestaw znaków/porównywanie.
* Planowanie architektury bazy danych: samodzielna, replikacja (master-slave, master-master), klastrowanie (InnoDB Cluster, Galera) lub sharding.
* Przygotowanie i formatowanie dysków na dane, logi i kopie zapasowe.
* Planowanie kont użytkowników i uprawnień.
**B. Instalacja**
* Instalacja MySQL Server: Wybór odpowiedniej wersji i edycji.
* Konfiguracja początkowych ustawień: katalog danych, port, zestaw znaków, porównywanie i rozmiary buforów.
* Ustawienie użytkowników root i administracyjnych MySQL z bezpiecznymi hasłami.
**C. Po instalacji**
* Zastosowanie najlepszych praktyk bezpieczeństwa: usunięcie testowych baz danych, wyłączenie zdalnego dostępu dla roota, ustawienie reguł zapory sieciowej (np. TCP 3306).
* Konfiguracja procedur tworzenia kopii zapasowych (mysqldump, Percona XtraBackup itp.).
* Ustawienie monitorowania i alertów (np. Zabbix, Nagios, MySQL Enterprise Monitor).
* Strojenie parametrów wydajności: bufor puli InnoDB, pamięć podręczna zapytań, limity połączeń, log wolnych zapytań.
* Ustawienie replikacji w razie potrzeby: konfiguracja mastera i slave'a, ustawienie logowania binarnego.
* Tworzenie i zarządzanie kontami użytkowników i uprawnieniami.
* Wykluczenie katalogów danych MySQL ze skanowania antywirusowego.
**D. Zadania migracyjne**
* Ocena kompatybilności i wymagań do migracji.
* Eksport i import baz danych (mysqldump, mysqlpump lub kopia logiczna/fizyczna).
* Migracja kont użytkowników i uprawnień.
* Odtwarzanie procedur składowanych, wyzwalaczy, zdarzeń i zaplanowanych zadań.
* Testowanie migracji: weryfikacja integralności danych, łączności aplikacji i wydajności.
* Przełączenie na nowy serwer, aktualizacja parametrów połączenia aplikacji i monitorowanie po migracji.
**E. Bieżące zadania**
* Regularne tworzenie kopii zapasowych i testowanie odtwarzania.
* Rutynowa konserwacja: optymalizacja tabel, aktualizacja statystyk, czyszczenie logów.
* Monitorowanie stanu serwera, wydajności i statusu replikacji.
* Strojenie wydajności i optymalizacja zapytań.
* Rozwiązywanie problemów z błędami i wolnymi zapytaniami.
* Zarządzanie uprawnieniami użytkowników i audyty bezpieczeństwa.
* Aplikowanie poprawek i aktualizacji wersji.
* Archiwizacja starych danych w razie potrzeby.
### 3. MongoDB Server
**A. Przed instalacją**
* Zbieranie wymagań: CPU, pamięć, przestrzeń dyskowa, typ przechowywania, konfiguracja sieci, wersja MongoDB i silnik przechowywania (np. WiredTiger).
* Planowanie architektury wdrożenia: samodzielna, zestaw replik, klaster sharded.
* Przygotowanie i formatowanie dysków na dane, logi i kopie zapasowe.
* Planowanie kont użytkowników, ról i mechanizmów uwierzytelniania (SCRAM, x.509, LDAP).
**B. Instalacja**
* Instalacja MongoDB Server: Wybór odpowiedniej wersji i edycji (Community lub Enterprise).
* Konfiguracja początkowych ustawień: katalog danych, katalog logów, port, adres IP do bindowania i silnik przechowywania.
* Ustawienie użytkowników administracyjnych z bezpiecznymi hasłami.
**C. Po instalacji**
* Zastosowanie najlepszych praktyk bezpieczeństwa: włączenie uwierzytelniania, konfiguracja kontroli dostępu opartej na rolach (RBAC), włączenie TLS/SSL do szyfrowania w tranzycie i konfiguracja zapór sieciowych (np. TCP 27017).
* Konfiguracja procedur tworzenia kopii zapasowych (mongodump/mongorestore, Ops Manager lub narzędzia firm trzecich).
* Ustawienie monitorowania i alertów (MongoDB Ops Manager, Cloud Manager lub narzędzia zewnętrzne, takie jak Zabbix, Prometheus).
* Strojenie parametrów wydajności: rozmiar pamięci podręcznej, journaling, limity połączeń i opcje silnika przechowywania.
* Ustawienie zestawów replik lub shardingu w razie potrzeby: inicjalizacja zestawu replik, dodawanie członków, konfiguracja arbiterów i ustawienie kluczy shardingu.
* Wykluczenie katalogów danych MongoDB ze skanowania antywirusowego.
**D. Zadania migracyjne**
* Ocena kompatybilności i wymagań do migracji.
* Eksport i import baz danych (mongodump/mongorestore, mongoexport/mongoimport lub kopia logiczna/fizyczna).
* Migracja kont użytkowników, ról i ustawień uwierzytelniania.
* Odtwarzanie indeksów, reguł walidacji i niestandardowych skryptów.
* Testowanie migracji: weryfikacja integralności danych, łączności aplikacji i wydajności.
* Przełączenie na nowy serwer, aktualizacja parametrów połączenia aplikacji i monitorowanie po migracji.
**E. Bieżące zadania**
* Regularne tworzenie kopii zapasowych i testowanie odtwarzania.
* Rutynowa konserwacja: kompaktowanie kolekcji, naprawa baz danych, rotacja logów.
* Monitorowanie stanu serwera, wydajności i statusu zestawu replik/shardingu.
* Strojenie wydajności i optymalizacja zapytań (analiza wolnych zapytań, tworzenie indeksów).
* Rozwiązywanie problemów z błędami, opóźnieniami replikacji i zdarzeniami przełączania awaryjnego.
* Zarządzanie uprawnieniami użytkowników i przeprowadzanie audytów bezpieczeństwa.
* Aplikowanie poprawek i aktualizacji wersji.
* Archiwizacja lub usuwanie starych danych w razie potrzeby.
### 4. PostgreSQL Server
**A. Przed instalacją**
* Zbieranie wymagań: CPU, pamięć, przestrzeń dyskowa, typ przechowywania, konfiguracja sieci, wersja PostgreSQL i ustawienia regionalne/kodowanie.
* Planowanie architektury bazy danych: samodzielna, replikacja strumieniowa (primary/standby), replikacja logiczna lub klastrowanie (np. Patroni, Citus).
* Przygotowanie i formatowanie dysków na dane, logi i kopie zapasowe.
* Planowanie kont użytkowników, ról i metod uwierzytelniania (md5, scram-sha-256, LDAP, Kerberos).
**B. Instalacja**
* Instalacja PostgreSQL Server: Wybór odpowiedniej wersji i edycji (Community, EnterpriseDB itp.).
* Konfiguracja początkowych ustawień: katalog danych, port, ustawienia regionalne, kodowanie i parametry pamięci (shared_buffers, work_mem).
* Ustawienie ról superużytkownika i administracyjnych z bezpiecznymi hasłami.
**C. Po instalacji**
* Zastosowanie najlepszych praktyk bezpieczeństwa: konfiguracja `pg_hba.conf` i `postgresql.conf` do uwierzytelniania i kontroli dostępu, włączenie SSL/TLS i ustawienie zapór sieciowych (np. TCP 5432).
* Konfiguracja procedur tworzenia kopii zapasowych (pg_dump, pg_basebackup, Barman lub narzędzia firm trzecich).
* Ustawienie monitorowania i alertów (np. pgAdmin, Zabbix, Prometheus, Nagios).
* Strojenie parametrów wydajności: shared_buffers, work_mem, maintenance_work_mem, autovacuum, ustawienia checkpointów.
* Ustawienie replikacji w razie potrzeby: konfiguracja serwerów primary i standby, ustawienie slotów replikacji i zarządzanie archiwizacją WAL.
* Tworzenie i zarządzanie rolami i uprawnieniami użytkowników.
* Wykluczenie katalogów danych PostgreSQL ze skanowania antywirusowego.
**D. Zadania migracyjne**
* Ocena kompatybilności i wymagań do migracji.
* Eksport i import baz danych (pg_dump/pg_restore, replikacja logiczna lub kopia fizyczna/przywracanie).
* Migracja ról użytkowników, uprawnień i ustawień uwierzytelniania.
* Odtwarzanie funkcji, wyzwalaczy, rozszerzeń i zaplanowanych zadań (pgAgent, cron).
* Testowanie migracji: weryfikacja integralności danych, łączności aplikacji i wydajności.
* Przełączenie na nowy serwer, aktualizacja parametrów połączenia aplikacji i monitorowanie po migracji.
**E. Bieżące zadania**
* Regularne tworzenie kopii zapasowych i testowanie odtwarzania.
* Rutynowa konserwacja: vacuum, analyze, reindex, aktualizacja statystyk, czyszczenie logów.
* Monitorowanie stanu serwera, wydajności i statusu replikacji.
* Strojenie wydajności i optymalizacja zapytań (analiza wolnych zapytań, tworzenie indeksów, partycjonowanie tabel).
* Rozwiązywanie problemów z błędami, opóźnieniami replikacji i zdarzeniami przełączania awaryjnego.
* Zarządzanie rolami użytkowników i przeprowadzanie audytów bezpieczeństwa.
* Aplikowanie poprawek i aktualizacji wersji.
* Archiwizacja lub usuwanie starych danych w razie potrzeby.
### 5. OracleDB Server
**A. Przed instalacją**
* Zbieranie wymagań: CPU, pamięć, przestrzeń dyskowa, typ przechowywania, konfiguracja sieci, wersja Oracle Database i zestaw znaków/narodowy zestaw znaków.
* Planowanie architektury bazy danych: samodzielna, Real Application Clusters (RAC), Data Guard lub sharding.
* Przygotowanie i formatowanie dysków na dane, logi, archiwum i kopie zapasowe.
* Planowanie użytkowników Oracle, grup i wymaganych uprawnień na poziomie systemu operacyjnego.
* Przygotowanie kont usług i konfiguracja katalogów Oracle Inventory i Oracle Home.
**B. Instalacja**
* Instalacja oprogramowania Oracle Database: Wybór odpowiedniej wersji i edycji (Standard, Enterprise, Express).
* Konfiguracja początkowych ustawień: Oracle Base, Oracle Home, katalog danych, port nasłuchu i zestaw znaków.
* Tworzenie i konfiguracja początkowej instancji bazy danych (za pomocą DBCA lub ręcznie).
* Ustawienie użytkowników administracyjnych (SYS, SYSTEM) z bezpiecznymi hasłami.
**C. Po instalacji**
* Zastosowanie najlepszych praktyk bezpieczeństwa: konfiguracja `listener.ora` i `sqlnet.ora`, włączenie audytu, ustawienie polityk haseł i konfiguracja zapór sieciowych (np. TCP 1521).
* Konfiguracja procedur tworzenia kopii zapasowych (RMAN, Data Pump lub narzędzia firm trzecich).
* Ustawienie monitorowania i alertów (Oracle Enterprise Manager, Zabbix, Nagios lub niestandardowe skrypty).
* Strojenie parametrów wydajności: SGA, PGA, rozmiar redo log, tablespace undo i ustawienia optymalizatora.
* Ustawienie Data Guard lub RAC w razie potrzeby: konfiguracja baz danych standby, transport redo i mechanizmy przełączania awaryjnego.
* Tworzenie i zarządzanie kontami użytkowników, rolami i uprawnieniami.
* Wykluczenie katalogów danych Oracle ze skanowania antywirusowego.
**D. Zadania migracyjne**
* Ocena kompatybilności i wymagań do migracji.
* Eksport i import baz danych (Data Pump expdp/impdp, RMAN lub kopia logiczna/fizyczna).
* Migracja kont użytkowników, ról i uprawnień.
* Odtwarzanie procedur składowanych, wyzwalaczy, zadań (DBMS_SCHEDULER) i niestandardowych skryptów.
* Testowanie migracji: weryfikacja integralności danych, łączności aplikacji i wydajności.
* Przełączenie na nowy serwer, aktualizacja parametrów połączenia aplikacji i monitorowanie po migracji.
**E. Bieżące zadania**
* Regularne tworzenie kopii zapasowych i testowanie odtwarzania.
* Rutynowa konserwacja: zbieranie statystyk, przebudowa indeksów, czyszczenie logów i zarządzanie tablespace'ami.
* Monitorowanie stanu serwera, wydajności i statusu Data Guard/RAC.
* Strojenie wydajności i optymalizacja zapytań (raporty AWR/ASH, strojenie SQL).
* Rozwiązywanie problemów z błędami, opóźnieniami replikacji i zdarzeniami przełączania awaryjnego.
* Zarządzanie uprawnieniami użytkowników i przeprowadzanie audytów bezpieczeństwa.
* Aplikowanie poprawek i aktualizacji wersji (za pomocą OPatch lub DBUA).
* Archiwizacja lub usuwanie starych danych w razie potrzeby.
---
## Komponenty i Usługi Dodatkowe
### 6. Administracja SSIS (SQL Server Integration Services)
**A. Instalacja**
* Weryfikacja wymagań systemowych i wstępnych warunków do instalacji SSIS.
* Instalacja SSIS jako funkcji podczas instalacji SQL Server lub dodanie jej do istniejącej instancji.
* Zastosowanie najnowszych service packów i aktualizacji zbiorczych dla SSIS.
* Rejestracja i konfiguracja usługi SSIS na serwerze.
* Ustawienie odpowiednich kont usług do wykonywania SSIS.
**B. Konfiguracja**
* Konfiguracja właściwości usługi SSIS (np. logowanie, bezpieczeństwo, lokalizacja przechowywania pakietów).
* Ustawienie SSISDB (Integration Services Catalog) dla modelu wdrożenia projektu.
* Konfiguracja bezpieczeństwa: przypisywanie uprawnień do SSISDB, folderów, projektów i środowisk.
* Ustawienie zmiennych środowiskowych i parametrów do wykonywania pakietów.
* Konfiguracja logowania i audytu wykonywania pakietów SSIS.
* Ustawienie zadań SQL Server Agent lub innych harmonogramów do automatyzacji wykonywania pakietów SSIS.
* Konfiguracja wysokiej dostępności i odzyskiwania po awarii dla SSISDB w razie potrzeby.
**C. Konserwacja**
* Monitorowanie wykonań pakietów SSIS i przeglądanie logów pod kątem błędów lub problemów z wydajnością.
* Rozwiązywanie problemów z nieudanymi wykonaniami pakietów i rozwiązywanie problemów z przepływem danych lub łącznością.
* Aplikowanie poprawek i aktualizacji do komponentów SSIS w razie potrzeby.
* Zarządzanie SSISDB: czyszczenie starych logów wykonań, usuwanie nieużywanych projektów/pakietów i monitorowanie wzrostu bazy danych.
* Tworzenie kopii zapasowych i odtwarzanie SSISDB w ramach regularnej konserwacji bazy danych.
* Przeglądanie i aktualizacja uprawnień bezpieczeństwa dla użytkowników i operatorów SSIS.
* Optymalizacja pakietów SSIS pod kątem wydajności i wykorzystania zasobów.
* Dokumentowanie konfiguracji SSIS, harmonogramów i procedur operacyjnych.
### 7. Administracja SSRS (SQL Server Reporting Services)
**A. Instalacja**
* Weryfikacja wymagań systemowych i wstępnych warunków do instalacji SSRS.
* Instalacja SSRS jako funkcji podczas instalacji SQL Server lub jako samodzielnej usługi.
* Zastosowanie najnowszych service packów i aktualizacji zbiorczych dla SSRS.
* Rejestracja i konfiguracja usługi SSRS na serwerze.
* Ustawienie odpowiednich kont usług do wykonywania SSRS.
**B. Konfiguracja**
* Konfiguracja właściwości usługi SSRS (np. konto usługi, URL usługi sieciowej, URL portalu internetowego).
* Ustawienie i konfiguracja bazy danych serwera raportów (ReportServer i ReportServerTempDB).
* Konfiguracja bezpieczeństwa: przypisywanie uprawnień do folderów, raportów i źródeł danych.
* Ustawienie ustawień poczty e-mail dla subskrypcji raportów i alertów.
* Konfiguracja źródeł danych i współdzielonych zestawów danych dla raportów.
* Ustawienie harmonogramów wykonywania raportów i subskrypcji.
* Włączanie i konfiguracja kluczy szyfrowania dla danych wrażliwych.
* Konfiguracja wysokiej dostępności i odzyskiwania po awarii dla SSRS w razie potrzeby (np. wdrożenie scale-out).
**C. Konserwacja**
* Monitorowanie stanu usługi SSRS, wykonywania raportów i wydajności.
* Rozwiązywanie problemów z nieudanymi wykonaniami raportów i rozwiązywanie problemów z łącznością danych lub renderowaniem.
* Aplikowanie poprawek i aktualizacji do komponentów SSRS w razie potrzeby.
* Zarządzanie bazami danych ReportServer: czyszczenie starych raportów, logów wykonań i monitorowanie wzrostu bazy danych.
* Tworzenie kopii zapasowych i odtwarzanie kluczy szyfrowania SSRS oraz baz danych ReportServer w ramach regularnej konserwacji.
* Przeglądanie i aktualizacja uprawnień bezpieczeństwa dla użytkowników i operatorów SSRS.
* Optymalizacja wydajności raportów i wykorzystania zasobów.
* Dokumentowanie konfiguracji SSRS, harmonogramów i procedur operacyjnych.
---
## Zarządzanie Systemami Operacyjnymi
### 8. Administracja Systemem Windows
**A. Instalacja i Wstępna Konfiguracja**
* Weryfikacja wymagań sprzętowych i oprogramowania do instalacji Windows Server.
* Instalacja odpowiedniej wersji i edycji Windows Server.
* Zastosowanie najnowszych service packów, poprawek bezpieczeństwa i aktualizacji.
* Konfiguracja ról i funkcji serwera w razie potrzeby (np. Active Directory, DNS, DHCP).
* Ustawienie lokalnych i domenowych kont użytkowników z odpowiednimi uprawnieniami.
* Konfiguracja nazwy hosta serwera, adresu IP i ustawień sieciowych.
* Ustawienie synchronizacji czasu (NTP).
**B. Konfiguracja**
* Konfiguracja reguł Zapory systemu Windows dla łączności baz danych i aplikacji.
* Ustawienie polityk bezpieczeństwa: polityki haseł, blokady konta i audytu.
* Konfiguracja przechowywania: tworzenie i formatowanie woluminów, ustawienie RAID w razie potrzeby, przypisywanie liter dysków.
* Ustawienie zaplanowanych zadań do konserwacji (np. kopie zapasowe, czyszczenie dysku).
* Konfiguracja wykluczeń antywirusowych dla katalogów baz danych i logów.
* Ustawienie pulpitu zdalnego i narzędzi do zarządzania (np. RDP, PowerShell Remoting).
* Konfiguracja logowania zdarzeń i monitorowania.
**C. Konserwacja**
* Monitorowanie stanu systemu: użycie CPU, pamięci, dysku i sieci.
* Aplikowanie regularnych aktualizacji Windows i poprawek bezpieczeństwa.
* Przeglądanie i zarządzanie logami zdarzeń pod kątem błędów i ostrzeżeń.
* Wykonywanie regularnych kopii zapasowych i testowanie procedur odtwarzania.
* Zarządzanie kontami użytkowników, uprawnieniami i członkostwem w grupach.
* Rozwiązywanie problemów sprzętowych i programowych.
* Czyszczenie plików tymczasowych i zarządzanie przestrzenią dyskową.
* Dokumentowanie konfiguracji serwera, zaplanowanych zadań i procedur operacyjnych.
**D. Zarządzanie Użytkownikami i Uprawnieniami**
* Tworzenie i zarządzanie kontami Active Directory dla kont usług baz danych.
* Konfiguracja grup Windows dla dostępu opartego na rolach w SQL Server.
* Ustawienie delegacji Kerberos dla SQL Server w środowiskach wielowarstwowych.
**E. Zarządzanie Usługami i Procesami**
* Instalacja i konfiguracja usług SQL Server (Database Engine, Agent, SSIS, SSRS).
* Zarządzanie usługami Windows związanymi z SQL Server (start/stop, ustawienie typu uruchomienia).
* Monitorowanie stanu usług i ponowne uruchamianie usług podczas konserwacji.
**F. Zarządzanie Pamięcią Masową i Dyskami**
* Konfiguracja uprawnień NTFS dla katalogów danych i logów baz danych.
* Zarządzanie partycjami dysków i woluminami w celu optymalnej wydajności bazy danych.
* Ustawienie punktów montowania dla dużych magazynów baz danych.
**G. Integracja Kopii Zapasowych i Odzyskiwania**
* Konfiguracja Harmonogramu zadań Windows dla skryptów kopii zapasowych (jeśli nie używa się SQL Agent).
* Zarządzanie kopiami zapasowymi na poziomie systemu plików dla plików baz danych.
* Zapewnienie kompatybilności Volume Shadow Copy Service (VSS) dla kopii zapasowych SQL.
**H. Zarządzanie Wydajnością i Zasobami**
* Monitorowanie liczników wydajności systemu Windows dla CPU, pamięci i I/O dysku.
* Konfiguracja ustawień Windows Server w celu optymalizacji SQL (np. Lock Pages in Memory).
* Dostosowanie planów zasilania do obciążeń baz danych o wysokiej wydajności.
**I. Bezpieczeństwo i Zgodność**
* Aplikowanie poprawek bezpieczeństwa systemu Windows na serwerach baz danych.
* Konfiguracja reguł Zapory systemu Windows dla portów SQL Server.
* Implementacja obiektów zasad grupy (GPO) w celu wzmocnienia zabezpieczeń serwera baz danych.
**J. Wysoka Dostępność i Odzyskiwanie po Awarii**
* Konfiguracja klastra trybu failover systemu Windows dla SQL Server AlwaysOn.
* Zarządzanie węzłami klastra i ustawieniami kworum.
* Walidacja stanu klastra i rozwiązywanie problemów związanych z klastrem.
### 9. Administracja Systemem Linux
**A. Instalacja i Wstępna Konfiguracja**
* Weryfikacja wymagań sprzętowych i oprogramowania do instalacji serwera Linux.
* Instalacja odpowiedniej dystrybucji i wersji Linuksa (np. RHEL, CentOS, Ubuntu, SUSE).
* Zastosowanie najnowszych aktualizacji, poprawek i poprawek bezpieczeństwa.
* Konfiguracja nazwy hosta serwera, adresu IP i ustawień sieciowych.
* Ustawienie lokalnych i domenowych kont użytkowników z odpowiednimi uprawnieniami.
* Konfiguracja synchronizacji czasu (NTP/chrony).
* Partycjonowanie i formatowanie dysków na dane, logi, kopie zapasowe i pliki systemowe.
**B. Konfiguracja**
* Konfiguracja reguł zapory sieciowej (np. firewalld, iptables) dla łączności baz danych i aplikacji.
* Ustawienie polityk bezpieczeństwa: polityki haseł, sudoers i audytu.
* Konfiguracja przechowywania: punkty montowania, LVM, RAID i uprawnienia systemu plików.
* Ustawienie zaplanowanych zadań do konserwacji (np. zadania cron do tworzenia kopii zapasowych, rotacji logów).
* Konfiguracja ochrony antywirusowej lub przed złośliwym oprogramowaniem i ustawienie wykluczeń dla katalogów baz danych.
* Ustawienie SSH dla bezpiecznego zdalnego dostępu i konfiguracja uwierzytelniania opartego na kluczach.
* Konfiguracja logowania i monitorowania systemu (np. syslog, journald, auditd).
**C. Konserwacja**
* Monitorowanie stanu systemu: użycie CPU, pamięci, dysku i sieci.
* Aplikowanie regularnych aktualizacji i poprawek bezpieczeństwa.
* Przeglądanie i zarządzanie logami systemowymi i aplikacyjnymi pod kątem błędów i ostrzeżeń.
* Wykonywanie regularnych kopii zapasowych i testowanie procedur odtwarzania.
* Zarządzanie kontami użytkowników, uprawnieniami i członkostwem w grupach.
* Rozwiązywanie problemów sprzętowych i programowych.
* Czyszczenie plików tymczasowych i zarządzanie przestrzenią dyskową.
* Dokumentowanie konfiguracji serwera, zaplanowanych zadań i procedur operacyjnych.
---
## Automatyzacja i Skrypty
### 10. Automatyzacja i Skrypty (Ogólne)
* Użycie PowerShell do zarządzania instancjami SQL Server (instalacja, konfiguracja, łatanie).
* Automatyzacja zadań na poziomie systemu Windows, takich jak czyszczenie dysku lub rotacja logów.
* Integracja PowerShell DSC w celu zapewnienia spójności konfiguracji SQL Server.
### 11. Skrypty
**A. Bash**
* Tworzenie skryptów.
* Planowanie skryptów lub uruchamianie ich ręcznie.
* Dostosowywanie, konserwacja i weryfikacja skryptów.
* Monitorowanie skryptów.
**B. PowerShell**
* Tworzenie skryptów.
* Planowanie skryptów lub uruchamianie ich ręcznie.
* Dostosowywanie, konserwacja i weryfikacja skryptów.
* Monitorowanie skryptów.
**C. Transact-SQL**
* Tworzenie skryptów.
* Planowanie skryptów lub uruchamianie ich ręcznie.
* Dostosowywanie, konserwacja i weryfikacja skryptów.
* Monitorowanie skryptów.
* Tworzenie wyzwalaczy SQL, funkcji, procedur, zdarzeń, audytów zgodnie z systemem baz danych.
* Tworzenie i konserwacja zadań SQL.
* Monitorowanie zadań i tworzenie alertów.
### 12. Ansible
**A. Tworzenie i utrzymywanie listy serwerów baz danych**
* Identyfikacja serwera.
* Dodanie odpowiednich tagów bazy danych.
**B. Przygotowywanie szablonów baz danych**
* Tworzenie i utrzymywanie szablonu dla MSSQL.
* Tworzenie i utrzymywanie szablonu dla MySQL.
* Tworzenie i utrzymywanie szablonu dla PostgreSQL.
* Tworzenie i utrzymywanie szablonu dla MongoDB.
* Tworzenie i utrzymywanie szablonu dla OracleDB.
**C. Stosowanie szablonów do agenta zainstalowanego na serwerach baz danych**
* Tworzenie zgłoszenia dla każdej zmiany wprowadzonej w Ansible.
* Dodawanie odpowiednich ustawień dla każdego serwera baz danych w pliku inwentarza Ansible.
* Uruchamianie playbooka Ansible w celu wypchnięcia zmian na serwer.
---
## Narzędzia i Platformy Monitorujące
### 13. NinjaRMM
**A. Tworzenie i utrzymywanie listy serwerów baz danych**
* Identyfikacja serwera.
* Dodanie odpowiednich tagów bazy danych.
**B. Przygotowywanie szablonów łatania**
**C. Łatanie serwerów zgodnie z polityką łatania**
### 14. Splunk
**A. Tworzenie i utrzymywanie listy serwerów baz danych**
* Weryfikacja, czy wszystkie serwery baz danych są podłączone do Splunka.
**B. Przygotowywanie i dostosowywanie wykresów i pulpitów nawigacyjnych**
* Tworzenie spersonalizowanych wykresów i pulpitów nawigacyjnych.
* Tworzenie spersonalizowanych metryk.
**C. Tworzenie detektorów i zarządzanie alertami**
* Oddzielne detektory i alerty dla środowisk produkcyjnych i nieprodukcyjnych.
* Powiadamianie o alertach za pośrednictwem poczty e-mail i kanału Teams.
**D. Codzienne monitorowanie utworzonych pulpitów nawigacyjnych i wykresów**
* Tworzenie incydentu w SNOW w przypadku zauważenia wartości krytycznej.
* Dostosowywanie progów w przypadku zauważenia niestandardowego zachowania.
* Raportowanie aktywnych i zamkniętych incydentów.
---
## Zarządzanie Kopiami Zapasowymi
### 15. Veeam SQL
**A. Tworzenie i utrzymywanie listy serwerów baz danych**
* Identyfikacja serwera.
* Dodanie odpowiednich tagów bazy danych.
**B. Przygotowywanie szablonów kopii zapasowych**
**C. Tworzenie kopii zapasowych serwerów zgodnie z politykami łatania**
**D. Tworzenie kopii zapasowych serwerów na żądanie**
**E. Monitorowanie serwerów zgodnie z politykami monitorowania**
**F. Odtwarzanie kopii zapasowych na żądanie**
---
## Główne Obowiązki i Procesy
### 16. Optymalizacja Baz Danych
**A. Zarządzanie Indeksami**
* Analiza wzorców zapytań i identyfikacja brakujących lub nieużywanych indeksów.
* Tworzenie odpowiednich indeksów (jednokolumnowe, złożone, pokrywające) w celu poprawy wydajności zapytań.
* Regularna przebudowa lub reorganizacja pofragmentowanych indeksów.
* Usuwanie zbędnych lub nieużywanych indeksów w celu zmniejszenia narzutu.
**B. Optymalizacja Zapytań**
* Przegląd i dostosowywanie wolno działających zapytań za pomocą planów wykonania.
* Refaktoryzacja zapytań w celu zwiększenia wydajności (np. unikanie `SELECT *`, używanie odpowiednich złączeń, wczesne filtrowanie).
* Używanie zapytań sparametryzowanych w celu poprawy ponownego wykorzystania planu i bezpieczeństwa.
* Optymalizacja procedur składowanych, wyzwalaczy i funkcji.
**C. Statystyki i Konserwacja**
* Regularna aktualizacja statystyk bazy danych w celu zapewnienia optymalnych planów zapytań.
* Planowanie i automatyzacja regularnych zadań konserwacji bazy danych (np. vacuum, analyze, update statistics).
* Czyszczenie przestarzałych lub tymczasowych danych.
**D. Strojenie Konfiguracji**
* Dostosowywanie alokacji pamięci (pule buforów, rozmiary pamięci podręcznej) w oparciu o obciążenie i zasoby serwera.
* Dostosowywanie limitów połączeń, równoległości i ustawień wątków.
* Optymalizacja parametrów specyficznych dla bazy danych (np. TempDB w SQL Server, pula buforów InnoDB w MySQL, shared_buffers w PostgreSQL).
**E. Optymalizacja Modelu Danych**
* Normalizacja lub denormalizacja tabel w zależności od obciążenia.
* Partycjonowanie dużych tabel w celu poprawy wydajności zapytań i konserwacji.
* Archiwizacja lub usuwanie starych danych w celu utrzymania małych aktywnych zestawów danych.
**F. Monitorowanie i Analiza**
* Ustawienie narzędzi monitorujących do śledzenia metryk wydajności (CPU, pamięć, I/O dysku, czasy odpowiedzi na zapytania).
* Regularna analiza logów wolnych zapytań i raportów wydajności.
* Ustawienie alertów dotyczących degradacji wydajności lub wąskich gardeł zasobów.
**G. Zarządzanie Zasobami**
* Równoważenie obciążeń między dostępnym sprzętem (CPU, pamięć, pamięć masowa).
* Optymalizacja układu dysków (oddzielne pliki danych, logów, temp i kopii zapasowych).
* Zapewnienie wystarczającej przepustowości I/O dla operacji bazodanowych.
**H. Współbieżność i Blokowanie**
* Identyfikacja i rozwiązywanie problemów z blokowaniem i zakleszczeniami.
* Dostosowywanie poziomów izolacji i strategii blokowania w celu zrównoważenia spójności i wydajności.
**I. Strojenie Aplikacji i Połączeń**
* Używanie puli połączeń w celu zmniejszenia narzutu.
* Optymalizacja logiki aplikacji w celu zminimalizowania niepotrzebnych wywołań bazy danych.
**J. Bezpieczeństwo i Zgodność**
* Zapewnienie, że optymalizacja nie zagraża bezpieczeństwu (np. unikanie ujawniania danych wrażliwych w logach).
* Regularny audyt uprawnień i wzorców dostępu.
**K. Dokumentacja i Przegląd**
* Dokumentowanie zmian optymalizacyjnych i ich uzasadnienia.
* Okresowy przegląd i aktualizacja strategii optymalizacji w miarę ewolucji obciążeń.
### 17. Testowanie
*(Brak szczegółów w oryginalnym dokumencie)*
### 18. Bezpieczeństwo
*(Brak szczegółów w oryginalnym dokumencie)*
### 19. Instalacja poprawek (Patching)
*(Brak szczegółów w oryginalnym dokumencie)*
### 20. Konsultacje
*(Brak szczegółów w oryginalnym dokumencie)*
### 21. Analiza Błędów
*(Brak szczegółów w oryginalnym dokumencie)*
### 22. Wsparcie Danych w Środowisku Produkcyjnym
**A. Masowe ładowanie danych w środowisku produkcyjnym**
* Udzielanie pomocy Biznesowi, gdy wymagane są masowe ładowania danych w środowisku produkcyjnym, szczególnie w przypadkach, gdy nie istnieje standardowy proces lub wewnętrzna wiedza (tj. ładowania ad hoc lub jednorazowe).
* Masowe ładowania danych często wymagają szczególnej uwagi w celu zapewnienia stabilności systemu. Może to obejmować opracowanie skryptów wsadowych i ścisłą obserwację w celu zapobiegania blokadom i blokowaniu bazy danych, zapewniając tym samym, że operacje produkcyjne przebiegają bez zakłóceń.
**B. Masowe aktualizacje jakości danych w środowisku produkcyjnym**
* Udzielanie wsparcia Biznesowi przy masowych aktualizacjach istniejących danych w środowisku produkcyjnym, gdy jest to wymagane ze względu na jakość lub kompletność danych, zwłaszcza w przypadkach, gdy nie jest dostępna dedykowana aplikacja lub wewnętrzna wiedza (tj. korekty danych ad hoc lub jednorazowe).
* Takie masowe aktualizacje danych często wymagają szczególnej staranności w celu utrzymania stabilności systemu. Może to obejmować opracowanie skryptów wsadowych i ścisłą obserwację w celu zapobiegania blokadom i blokowaniu bazy danych, zapewniając, że operacje produkcyjne przebiegają bez zakłóceń.
**C. Archiwizacja danych w środowisku produkcyjnym**
* Udzielanie wsparcia Biznesowi w procesach archiwizacji danych w środowisku produkcyjnym. Archiwizacja danych jest często pomijana, ponieważ Biznes może nie być świadomy ciągłego wzrostu baz danych na przestrzeni lat. Tabele o dużej liczbie rekordów mogą wymagać archiwizacji w celu poprawy wydajności systemu oraz skrócenia czasu konserwacji i tworzenia kopii zapasowych, a także optymalnego zarządzania przestrzenią dyskową.
* Wiele baz danych zawiera tabele z bardzo starymi danymi, które nie są już potrzebne do codziennych operacji i mogą być przeniesione z głównych tabel.
* Skuteczna archiwizacja danych wymaga świadomości, dokładnego planowania i starannego wykonania skryptów archiwizacyjnych w celu zapewnienia integralności danych i zminimalizowania wpływu na operacje produkcyjne.