Alegeți limba dvs.
Curs PostgreSQL DBA
Peste 2 milioane de cursanți în întreaga lume

Curs PostgreSQL DBA

Stăpânește fiecare responsabilitate critică a unui DBA PostgreSQL de producție, de la instalare și securitate până la replicare, backup și optimizare a interogărilor. Acest curs oferă lucrări practice în scenarii din lumea reală, astfel încât să dezvolți competențe pe care le poți aplica imediat. Fie că intri într-un rol de DBA sau îți îmbunătățești unul existent, aceasta este cea mai completă formare în administrarea PostgreSQL disponibilă.

Dedika pentru companii

Ce vei învăța:

Vei învăța cum să configurezi și să optimizezi PostgreSQL pentru sarcini de producție, să implementezi controlul accesului pe bază de roluri și securitatea la nivel de rând, și să configurezi replicarea streaming și logică cu failover automat. Cursul acoperă strategii de backup folosind pg_dump și pg_basebackup, arhivarea WAL și proceduri de recuperare la un moment dat în timp pe care le vei executa de la cap la coadă. Vei diagnostica interogări lente citind planurile de execuție, analizând concurența la blocări și folosind pg_stat_statements. Subiectele de întreținere de rutină includ reglajul autovacuum, gestionarea bloat-ului și prevenirea înfășurării ID-urilor de tranzacții. Vei explora, de asemenea, partiționarea, extensii precum PostGIS și TimescaleDB, monitorizarea cu Prometheus și Grafana și căile de upgrade la versiuni majore.

Cum studiezi practic Curs PostgreSQL DBA

Cum exersezi Curs PostgreSQL DBA

Pentru tine, care reprezinți o companie și vrei să îți instruiești echipa

La Dedika pentru companii, cursul vine cu exerciții și exemple adaptate afacerii tale și exact așa cum are nevoie compania ta.

Apasă aici

Conținutul cursului

8 Capitole • 40 LecțiiDurata între 4 și 360 ore (tu decizi)

Capitolul 1Vezi detalii

Arhitectura și Instalarea PostgreSQL

  • Lecția 1 • Pornirea, Oprirea și Reîncărcarea Serverului

    Acoperă pg_ctl, gestionarea serviciilor systemd și controlul bazat pe semnale. Studenții exersează operațiile sigure de ciclu de viață ale serverului, utilizate în fiecare flux de lucru al unui DBA.

  • Lecția 2 • Concepte Fundamentale ale Bazelor de Date Relaționale

    Acoperă principiile RDBMS, proprietățile ACID și modul în care PostgreSQL se încadrează în modelul relațional. Oferă baza conceptuală pentru toate subiectele ulterioare de administrare.

  • Lecția 3 • Structura Directorului și Fișierele Cheie

    Cartografiază structura directorului de date, fișierele de configurare și locațiile jurnalelor. Familiarizarea cu structura fișierelor este esențială pentru sarcinile de configurare și recuperare.

  • Lecția 4 • Arhitectura Proceselor și a Memoriei PostgreSQL

    Examinează postmasterul, procesele backend, bufferele partajate și WAL. Înțelegerea acestor elemente interne ghidează deciziile de tuning și depanare pe parcursul cursului.

  • Lecția 5 • Instalarea PostgreSQL pe Linux

    Ghidează instalarea bazată pe pachete și din sursă pe sisteme Linux. Studenții produc o instanță PostgreSQL funcțională și verificată ca versiune, ca mediu de laborator.

Capitolul 2Vezi detalii

Obiecte de Bază de Date și Fundamente SQL

  • Lecția 1 • Baze de Date, Scheme și Tablespace-uri

    Explică ierarhia de namespace pe trei niveluri și maparea stocării în tablespace-uri. Proiectarea corectă a namespace-urilor previne conflictele între obiecte și sprijină gestionarea stocării.

  • Lecția 2 • Secvențe și Coloane de Tip IDENTITY

    Explică obiectele de tip secvență și sintaxa GENERATED AS IDENTITY pentru chei surrogate. Studenții configurează corect coloanele cu incrementare automată pentru scheme de producție.

  • Lecția 3 • Vizualizări, Vizualizări Materializate și Funcții

    Introducere în vizualizări doar-citire și actualizabile, reîmprospătarea vizualizărilor materializate și funcții de bază PL/pgSQL. Aceste obiecte încapsulează logică și simplifică interfețele aplicațiilor.

  • Lecția 4 • Tipuri de Indecși și Utilizarea Lor

    Prezintă indecșii B-tree, Hash, GIN, GiST și BRIN și cazurile lor de utilizare adecvate. Selectarea indecșilor afectează direct performanța interogărilor, subiect acoperit în capitolele ulterioare.

  • Lecția 5 • Tabele, Tipuri de Date și Constrângeri

    Acoperă DDL pentru tabele, tipuri de date specifice PostgreSQL și constrângeri declarative. Selectarea corectă a tipurilor și constrângerilor asigură integritatea datelor la nivelul stocării.

Capitolul 3Vezi detalii

Gestionarea Utilizatorilor și Controlul Accesului

  • Lecția 1 • Gestionarea Privilegiilor la Nivel de Obiect

    Explică GRANT și REVOKE pe tabele, scheme, secvențe și funcții. Studenții aplică principiul privilegiilor minime pe o bază de date realistă cu mai multe scheme.

  • Lecția 2 • Roluri și Atribute ale Rolurilor

    Acoperă CREATE ROLE, LOGIN, SUPERUSER și atributele CREATEDB. Proiectarea rolurilor stă la baza fiecărei decizii privind privilegiile și autentificarea în PostgreSQL.

  • Lecția 3 • Politici de Securitate la Nivel de Rând

    Introducere în crearea politicilor RLS, clauzele USING și WITH CHECK și testarea politicilor. RLS impune izolarea datelor fără a necesita logică de filtrare la nivelul aplicației.

  • Lecția 4 • Auditarea și Întărirea Securității

    Acoperă extensia pgaudit, înregistrarea conexiunilor și parametrii de întărire. Studenții produc o configurație pregătită pentru audit, aliniată la standardele comune de securitate.

  • Lecția 5 • Metode de Autentificare în pg_hba.conf

    Acoperă metodele de autentificare trust, md5, scram-sha-256, peer și certificate. Configurarea corectă a pg_hba.conf este esențială atât pentru securitate, cât și pentru conectivitate.

Capitolul 4Vezi detalii

Configurare și Optimizare a Performanței

  • Lecția 1 • Parametrii de Cost ai Planificatorului de Interogări

    Explică seq_page_cost, random_page_cost, cpu_tuple_cost și țintele de statistici. Parametrii de cost acurați permit planificatorului să aleagă planuri de execuție optime.

  • Lecția 2 • Optimizarea WAL și a Checkpoint-urilor

    Acoperă setările wal_buffers, checkpoint_completion_target, max_wal_size și fsync. Optimizarea WAL echilibrează debitul de scriere cu garanțiile de durabilitate la recuperarea după crash.

  • Lecția 3 • Parametrii de Configurare a Memoriei

    Explică shared_buffers, work_mem, maintenance_work_mem și effective_cache_size. Alocarea corectă a memoriei este pârghia de optimizare cu cel mai mare impact pentru majoritatea sarcinilor.

  • Lecția 4 • Optimizarea la Nivel de Sistem de Operare pentru PostgreSQL

    Abordează parametrii nucleului, selectarea scheduler-ului I/O, NUMA și paginile huge transparente. Configurarea sistemului de operare limitează adesea câștigurile realizabile doar prin parametrii PostgreSQL.

  • Lecția 5 • Gestionarea Conexiunilor și a Resurselor

    Acoperă max_connections, pool-ul de conexiuni cu PgBouncer și grupurile de resurse. Conexiunile necontrolate epuizează memoria și degradează debitul sub sarcină.

Capitolul 5Vezi detalii

Mentenanță de Rutină și VACUUM

  • Lecția 1 • VACUUM și VACUUM FULL

    Acoperă sintaxa și efectele VACUUM manual, VACUUM FULL și VACUUM ANALYZE. Studenții fac distincția între momentul potrivit pentru fiecare formă, fără a cauza blocări inutile.

  • Lecția 2 • Mecanismul MVCC și Balonarea Tabelelor

    Explică modul în care MVCC creează tuple moarte și balonarea paginilor în timp. Înțelegerea MVCC este o condiție prealabilă pentru proiectarea strategiilor eficiente de VACUUM și autovacuum.

  • Lecția 3 • Prevenirea Înfășurării ID-urilor de Tranzacție

    Acoperă monitorizarea vârstei XID, autovacuum_freeze_max_age și VACUUM de urgență. Defecțiunea prin înfășurare cauzează indisponibilitatea totală a bazei de date și trebuie prevenită activ.

  • Lecția 4 • Mentenanța Indecșilor și REINDEX

    Acoperă detectarea balonării indecșilor, REINDEX CONCURRENTLY și pg_stat_user_indexes. Mentenanța regulată a indecșilor păstrează performanța interogărilor fără a necesita rescrieri ale tabelelor.

  • Lecția 5 • Configurarea și Optimizarea Autovacuum

    Explică autovacuum_vacuum_scale_factor, cost delay și parametrii de stocare per-tabel. Un autovacuum optimizat corespunzător elimină majoritatea cerințelor de mentenanță manuală.

Capitolul 6Vezi detalii

Backup, Recuperare și Restaurare Point-in-Time

  • Lecția 1 • Backup Logic cu pg_dump

    Acoperă formatele pg_dump, pg_dumpall, dump-uri paralele și restaurarea selectivă cu pg_restore. Backup-urile logice permit recuperarea la nivel de obiect și migrarea între versiuni.

  • Lecția 2 • Backup Fizic cu pg_basebackup

    Explică backup-urile de bază în flux, modurile de checkpoint și opțiunile de includere WAL. Backup-urile fizice stau la baza PITR și a provisionării serverelor standby.

  • Lecția 3 • Procedura de Restaurare Point-in-Time

    Ghidează restaurarea dintr-un backup de bază, parametrii recovery.conf sau postgresql.conf și specificarea țintei. Studenții execută și verifică un scenariu PITR complet, de la cap la coadă.

  • Lecția 4 • Configurarea Arhivării WAL

    Acoperă configurarea archive_mode, archive_command și archive_cleanup_command. Arhivarea continuă WAL permite recuperarea în orice punct ulterior backup-ului de bază.

  • Lecția 5 • Validarea Backup-urilor și Politica de Retenție

    Acoperă pg_verifybackup, programele de testare a restaurării și dimensionarea ferestrei de retenție WAL. Backup-urile nevalidate oferă o falsă încredere și trebuie testate în mod regulat.

Capitolul 7Vezi detalii

Replicare și Disponibilitate Ridicată

  • Lecția 1 • Failover și HA Bazat pe Patroni

    Acoperă promovarea manuală, pg_ctl promote și HA automatizat cu Patroni și etcd. Studenții simulează o defecțiune a primary-ului și verifică finalizarea corectă a failover-ului automat.

  • Lecția 2 • Fundamentele Replicării Logice

    Explică publicațiile, abonamentele și filtrarea rândurilor pentru replicarea selectivă. Replicarea logică suportă upgrade-uri între versiuni și distribuția parțială a datelor.

  • Lecția 3 • Configurarea Replicării în Flux

    Acoperă sloturile de replicare, intrările pg_hba.conf pentru replicare și primary_conninfo. Studenții construiesc un standby în flux funcțional dintr-un server primary activ.

  • Lecția 4 • Monitorizarea Întârzierii de Replicare

    Explică pg_stat_replication, pg_stat_wal_receiver și calcularea întârzierii bazate pe LSN. Monitorizarea întârzierii este esențială pentru conformitatea cu SLA-urile și pentru deciziile de failover.

  • Lecția 5 • Replicarea Sincronă și Cvorumul

    Acoperă sintaxa synchronous_standby_names, modurile de cvorum FIRST și ANY și compromisurile de durabilitate. Replicarea sincronă elimină pierderea de date cu costul latenței de scriere.

Capitolul 8Vezi detalii

Optimizarea Interogărilor și Diagnosticare Avansată

  • Lecția 1 • Statistici și Acuratețea Planificatorului

    Acoperă pg_statistic, ANALYZE, statistici extinse și interpretarea histogramelor. Statisticile învechite sau insuficiente fac planificatorul să aleagă planuri de execuție suboptimale.

  • Lecția 2 • Strategii de Join și Hints pentru Planuri

    Explică criteriile de selecție și tehnicile de forțare pentru nested loop, hash join și merge join. Nepotrivirile strategiilor de join sunt o cauză principală a regresiilor severe de performanță a interogărilor.

  • Lecția 3 • Identificarea Interogărilor Lente cu pg_stat_statements

    Acoperă instalarea pg_stat_statements, coloanele cheie și normalizarea interogărilor. Datele agregate ale sarcinii de lucru relevă interogările cu cel mai mare impact, care trebuie prioritizate pentru optimizare.

  • Lecția 4 • Citirea EXPLAIN și EXPLAIN ANALYZE

    Decodează nodurile planului, estimările de cost, rândurile reale și ieșirea de temporizare din EXPLAIN. Citirea corectă a planurilor este competența prealabilă pentru fiecare tehnică de optimizare a interogărilor.

  • Lecția 5 • Analiza Contenției de Blocări și a Deadlock-urilor

    Explică modurile de blocare, pg_locks, pg_stat_activity și interpretarea jurnalelor de deadlock. Contenția de blocări cauzează vârfuri de latență și trebuie diagnosticată înainte de a optimiza interogările.

Certificare

Certificatul tău valid de finalizare

Acest curs este pentru tine:

  • Dezvoltatori backend: pregătiți să își asume responsabilitatea pentru bazele de date care alimentează aplicațiile lor.

  • Administratori de sistem Linux: care își extind competențele în gestionarea infrastructurii de baze de date.

  • Junior DBAs: care caută profunzime structurată dincolo de ceea ce a oferit expunerea la locul de muncă.

  • Inginerii DevOps: care au nevoie să gestioneze clustere PostgreSQL alături de munca lor de automatizare a infrastructurii.

  • Schimbători de carieră: trecerea de la roluri cu multe foi de calcul către ingineria datelor sau administrarea bazelor de date.

  • Analiști de date: care doresc să înțeleagă stratul de server din spatele interogărilor pe care le rulează zilnic.

Ce spun cursanții noștri

Lecțiile dumneavoastră sunt perfecte. Am achiziționat pachetul de un an și, în sfârșit, am oportunitatea să urmăresc diverse subiecte de interes fără să fie nevoie să schimb platforma... vă mulțumesc pentru tot ceea ce faceți, v-am recomandat deja altor persoane...
Giulio Carlo
Giulio CarloStudent Marketing Digital
Îmi place cum lecțiile sunt directe la subiect și cum pot să schimb capitolele și să sar peste conținutul de care nu am nevoie.
Mariana Ferres
Mariana FerresStudentă Fotografie
Îmi place conținutul și modul de prezentare și transcriere a videoclipurilor, ceea ce accelerează procesul!
Luciana Alvarenga
Luciana AlvarengaStudentă Design Unghii
Platforma este rapidă, simplă de utilizat. Diversitatea conținutului și videoclipurile complementare ajută foarte mult la învățare.
André Felipe
André FelipeStudent Inginerie Prompt

Cele mai importante formări

Întrebări frecvente

Cine este Dedika?

Este certificatul valabil în România?

Cursurile sunt gratuite?

Care este volumul de muncă al cursului?

Cum sunt cursurile?

Cum funcționează cursurile?

Care este durata cursurilor?

Care este costul sau prețul cursurilor?

Ce este un curs EAD sau online și cum funcționează?

Curs PDF