# 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.