Π‘Π»Π΅Π΄ Π³ΠΎΠ΄ΠΈΠ½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π½ΠΎΠ²Π° ΡΡΠ°Π±ΠΈΠ»Π½Π° Π²Π΅ΡΡΠΈΡ Π½Π° Π‘Π£ΠΠ PostgreSQL 12. ΠΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π·Π° Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° ΠΏΠ΅Ρ Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π΄ΠΎ Π½ΠΎΠ΅ΠΌΠ²ΡΠΈ 2024 Π³ΠΎΠ΄ΠΈΠ½Π°.
ΠΡΠ½ΠΎΠ²Π½ΠΈ :
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ««, ΡΠΈΡΡΠΎ ΡΡΠΎΠΉΠ½ΠΎΡΡ ΡΠ΅ ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π° Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΈΠ·ΡΠ°Π·, ΠΎΠ±Ρ Π²Π°ΡΠ°Ρ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈΡΠ΅ Π½Π° Π΄ΡΡΠ³ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΈ Π² ΡΡΡΠ°ΡΠ° ΡΠ°Π±Π»ΠΈΡΠ° (Π°Π½Π°Π»ΠΎΠ³ Π½Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ, Π½ΠΎ Π·Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΈ). ΠΠ΅Π½Π΅ΡΠΈΡΠ°Π½ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ Π΄Π²Π° ΡΠΈΠΏΠ° - ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈ ΠΈ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ. Π ΠΏΡΡΠ²ΠΈΡ ΡΠ»ΡΡΠ°ΠΉ ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° ΡΠ΅ ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π° ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ ΠΈΠ»ΠΈ ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° Π΄Π°Π½Π½ΠΈΡΠ΅, Π° Π²ΡΠ² Π²ΡΠΎΡΠΈΡ - ΠΏΡΠΈ Π²ΡΡΠΊΠΎ ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΡΠ΅ΠΊΡΡΠΎΡΠΎ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ Π½Π° Π΄ΡΡΠ³ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΈ. Π ΠΌΠΎΠΌΠ΅Π½ΡΠ° PostgreSQL ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΠ°ΠΌΠΎ ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΈ;
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° Π·Π°ΡΠ²ΠΊΠΈ Π·Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ JSON-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° , Π½Π°ΠΏΠΎΠΌΠ½ΡΡΠΈ ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ° SQL/JSON. ΠΠ° ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΠ° ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΈΠ·ΡΠ°Π·ΠΈ Π·Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈ, ΡΡΡ ΡΠ°Π½ΡΠ²Π°Π½ΠΈ Π² ΡΠΎΡΠΌΠ°Ρ JSONB, ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π°Ρ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ°Π½Π΅;
- ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° JIT-ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡ (Just-in-Time) Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π° LLVM Π·Π° ΡΡΠΊΠΎΡΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π½ΡΠΊΠΎΠΈ ΠΈΠ·ΡΠ°Π·ΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° SQL-Π·Π°ΡΠ²ΠΊΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, JIT Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠΈΠΌ Π·Π° ΡΡΠΊΠΎΡΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΈΠ·ΡΠ°Π·ΠΈ Π²ΡΡΡΠ΅ Π² Π±Π»ΠΎΠΊΠΎΠ²Π΅ βWHEREβ, Π² ΡΠΏΠΈΡΡΡΠΈΡΠ΅ Ρ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ (target lists), Π°Π³ΡΠ΅Π³Π°ΡΠ½ΠΈ ΠΈΠ·ΡΠ°Π·ΠΈ ΠΈ Π½ΡΠΊΠΎΠΈ Π²ΡΡΡΠ΅ΡΠ½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ;
- ΠΠ½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π΅ ΠΏΠΎΠ²ΠΈΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ°Π½Π΅ΡΠΎ. ΠΠ½Π΄Π΅ΠΊΡΠΈΡΠ΅ B-tree ΡΠ° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π·Π° ΡΠ°Π±ΠΎΡΠ° Π² ΡΡΠ»ΠΎΠ²ΠΈΡ Π½Π° ΡΠ΅ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ΅ - Π² ΡΠ΅ΡΡΠΎΠ²Π΅ΡΠ΅ TPC-C ΡΠ΅ Π½Π°Π±Π»ΡΠ΄Π°Π²Π° ΠΎΠ±ΡΠΎ ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΈ Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΡΠΌΠ°ΡΠΈΡΡΠ° Π½Π° Π΄ΠΈΡΠΊΠΎΠ²ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ Π² ΡΡΠ΅Π΄Π½ΠΎ Ρ 40%. ΠΠ°ΠΌΠ°Π»Π΅Π½ΠΈ ΡΠ° ΡΠ°Π·Ρ ΠΎΠ΄ΠΈΡΠ΅ ΠΏΡΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° Π»ΠΎΠ³ Π·Π° ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½Π° Π·Π°ΠΏΠΈΡ (WAL) Π·Π° ΡΠΈΠΏΠΎΠ²Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ GiST, GIN ΠΈ SP-GiST. ΠΠ° GiST Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ° Π·Π° Π½Π°ΠΉ-ΡΠΈΠΏΠΈΡΠ½ΠΈΡΠ΅ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ (MCV), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΡΠ° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΎ-ΠΎΠΏΡΠΈΠΌΠ°Π»Π½ΠΈ ΠΏΠ»Π°Π½ΠΎΠ²Π΅ Π·Π° Π·Π°ΡΠ²ΠΊΠΈ ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π½Π΅ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΈ;
- Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠ°Π½Π΅ (ΠΏΠ°ΡΡΠΈΡΠΈΠΎΠ½ΠΈΡΠ°Π½Π΅) Π΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π° Π·Π° Π·Π°ΡΠ²ΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΎΠ±Ρ Π²Π°ΡΠ°Ρ ΡΠ°Π±Π»ΠΈΡΠΈ Ρ Ρ ΠΈΠ»ΡΠ΄ΠΈ ΡΠ΅ΠΊΡΠΈΠΈ, Π½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°Ρ ΠΈΠ·Π±ΠΎΡΠ° Π΄ΠΎ ΠΌΠ°Π»ΡΠΊ Π½Π°Π±ΠΎΡ ΠΎΡ Π΄Π°Π½Π½ΠΈ. ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΠ°Π½ΠΈΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠΈ Π΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½Π° ΡΡΠ΅Π· ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ INSERT ΠΈ COPY, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° Π½ΠΎΠ²ΠΈ ΡΠ΅ΠΊΡΠΈΠΈ ΡΡΠ΅Π· βALTER TABLE ATTACH PARTITIONβ Π±Π΅Π· Π±Π»ΠΎΠΊΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π·Π°ΡΠ²ΠΊΠΈ;
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΈΠ½Π»Π°ΠΉΠ½-ΡΠ°Π·Π³ΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠ±ΠΎΠ±ΡΠ΅Π½ΠΈ ΡΠ°Π±Π»ΠΈΡΠ½ΠΈ ΠΈΠ·ΡΠ°Π·ΠΈ (, CTE), ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠ½ΠΈ Π½Π°Π±ΠΎΡΠΈ, Π·Π°Π΄Π°Π²Π°Π½ΠΈ ΡΡΠ΅Π· ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° WITH. ΠΠ½Π»Π°ΠΉΠ½-ΡΠ°Π·Π³ΡΠ²Π°Π½Π΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ Π·Π°ΡΠ²ΠΊΠΈ, Π½ΠΎ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° ΡΠ°ΠΌΠΎ Π·Π° Π½Π΅ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΈ CTE;
- ΠΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠ²ΠΎΠΉΡΡΠ²Π° Π½Π° Π»ΠΎΠΊΠ°Π»Π½Π°ΡΠ° βCollationβ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΡΠ° Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π° Π·Π° ΡΠΎΡΡΠΈΡΠ°Π½Π΅ ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅, ΠΎΡΡΠΈΡΠ°ΡΠΈ ΡΠΌΠΈΡΡΠ»Π° Π½Π° ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΡΠΎΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΈΡΠ»ΠΎΠ²ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ ΡΠ΅ Π²Π·Π΅ΠΌΠ°Ρ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° ΠΌΠΈΠ½ΡΡ ΠΈ ΡΠΎΡΠΊΠ° ΠΏΡΠ΅Π΄ ΡΠΈΡΠ»ΠΎΡΠΎ ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΠΈ Π½Π° Π½Π°ΠΏΠΈΡΠ²Π°Π½Π΅, Π° ΠΏΡΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Π½Π΅ ΡΠ΅ ΠΎΡΡΠΈΡΠ° ΡΠ΅Π³ΠΈΡΡΡΡΡΡ Π½Π° ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ ΠΈ Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° ΡΠ΄Π°ΡΠ΅Π½ΠΈΠ΅);
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΌΠ½ΠΎΠ³ΠΎΡΠ°ΠΊΡΠΎΡΠ½Π° Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, ΠΏΡΠΈ ΠΊΠΎΡΡΠΎ Π² pg_hba.conf Π·Π° Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΠΎ SSL-ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ (clientcert=verify-full) Ρ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π΅Π½ ΠΌΠ΅ΡΠΎΠ΄ Π½Π° Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ, ΠΊΠ°ΡΠΎ scram-sha-256;
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° encryption Π½Π° ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΠΊΠ°Π½Π°Π» ΠΏΡΠΈ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΡΠ΅Π· , ΠΊΠ°ΠΊΡΠΎ ΠΎΡ ΡΡΡΠ°Π½Π° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, ΡΠ°ΠΊΠ° ΠΈ ΠΎΡ ΡΡΡΠ°Π½Π° Π½Π° ΡΡΡΠ²Π΅ΡΠ°;
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° LDAP-ΡΡΡΠ²ΡΡΠΈ Π½Π° Π±Π°Π·Π° Π·Π°ΠΏΠΈΡΠΈ βDNS SRVβ, Π°ΠΊΠΎ PostgreSQL Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½ Ρ OpenLDAP;
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ββ Π·Π° ΡΠ΅ΠΊΠΎΠ½ΡΡΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ΅ Π±Π΅Π· Π±Π»ΠΎΠΊΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π° Π·Π°ΠΏΠΈΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ°;
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° , ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΡΠ° Π·Π° ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠ° ΠΠ Π΄Π° ΡΠ΅ Π²ΠΊΠ»ΡΡΠ²Π° ΠΈ ΠΈΠ·ΠΊΠ»ΡΡΠ²Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΠΈ ΡΡΠΌΠΈ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠΈ Π΄Π°Π½Π½ΠΈ (ΠΏΠΎ-ΡΠ°Π½ΠΎ ΡΠ°Π·ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΡΠ΅ ΡΠ°ΠΌΠΎ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΠ);
- ΠΡΠΈΠ³ΡΡΠ΅Π½ Π΅ ΠΈΠ·Ρ ΠΎΠ΄ Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡ Π·Π° ΠΏΡΠΎΠ³ΡΠ΅Ρ ΠΏΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ CREATE INDEX, REINDEX, CLUSTER, VACUUM FULL ΠΈ pg_checksums;
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° ββ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°ΡΠΈ Π½Π° Π½ΠΎΠ²ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠΈ, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π·Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ Π·Π°Π΄Π°ΡΠΈ. Π ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½ΠΈΡΡ Π²Π³ΡΠ°Π΄Π΅Π½ ΠΌΠ΅ΡΠΎΠ΄ Π·Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠ°Π±Π»ΠΈΡΠΈ Π΅ βheapβ;
- Π€Π°ΠΉΠ»ΡΡ Π·Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ recovery.conf Π΅ ΠΎΠ±Π΅Π΄ΠΈΠ½Π΅Π½ Ρ postgresql.conf. Π‘Π΅Π³Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠΈ Π·Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ Π² ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ Π½Π° Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ ΡΠ»Π΅Π΄ ΡΡΠΈΠ². Π·Π° ΡΠ΅Π»ΡΠ° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ recovery.signal ΠΈ standby.signal.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
