ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π±Π°Π·Ρ 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅ β ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠ°Π»ΠΊΠΈΠ²Π°ΡΡΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ½Π° ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ ΠΏΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Ρ ΠΏΡΠΈΡΠΈΠ½: ΠΎΡ Π±Π°Π½Π°Π»ΡΠ½ΠΎΠ³ΠΎ Β«Π·Π°Π²ΠΈΡΡΠ΅Π³ΠΎΒ» ΡΠ΅Π°Π½ΡΠ° Π΄ΠΎ ΡΠ΅ΡΡΠ΅Π·Π½ΡΡ ΡΠ±ΠΎΠ΅Π² Π² ΡΠ°Π±ΠΎΡΠ΅ Π‘Π£ΠΠ. Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΡΠ°Π·Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ΅ΡΠ΅Π· ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ 1Π‘, Π½ΠΎ ΠΊΠΎΠ³Π΄Π° Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ·-Π·Π° ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ°), Π½Π° ΠΏΠΎΠΌΠΎΡΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π΄Π»Ρ ΡΠ½ΡΡΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ 1Π‘ ΠΈ ΠΎΡΠ½ΠΎΠ² ΡΠ°Π±ΠΎΡΡ Ρ Π‘Π£ΠΠ (ΠΎΠ±ΡΡΠ½ΠΎ Microsoft SQL Server ΠΈΠ»ΠΈ PostgreSQL). ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΠΎΠΏΡΡΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΏΠΎΡΠ΅ΡΠ΅ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π±Π°Π·Ρ. Π ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°Π·Π±Π΅ΡΡΠΌ ΠΏΠΎΡΠ°Π³ΠΎΠ²ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π², ΡΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΈΡ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ.
ΠΡΠ»ΠΈ Π²Ρ Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π΅ΡΠ΅ΡΡ Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ 1Π‘ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΠΎΠ»Ρ, ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ ΠΊ Π²Π°ΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ. ΠΠ΅ΡΡΠΈΠΈ 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅ 8.3 ΠΈ 8.2 ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·Π»ΠΈΡΠΈΡ Π² ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄, ΠΏΠΎΡΡΠΎΠΌΡ ΡΡΠΎΡΠ½ΡΠΉΡΠ΅ Π°ΠΊΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ ΡΠ±ΠΎΡΠΊΠΈ.
ΠΡΠΈΡΠΈΠ½Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π±Π°Π·Ρ 1Π‘ ΠΈ ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½Π° ΠΊΠΎΠ½ΡΠΎΠ»Ρ
ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π² 1Π‘ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ, ΠΊΠΎΠ³Π΄Π° ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΈΠΊΡΠΈΡΡΠ΅Ρ Π°ΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠ΅Π°Π½Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ Π±ΡΠ» ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ Π·Π°Π²Π΅ΡΡΡΠ½. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΡΠΈ ΠΈΠ·-Π·Π°:
β ΠΠ²Π°ΡΠΈΠΉΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈΠ»ΠΈ ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ 1Π‘ ΠΏΠΎ ΠΎΡΠΈΠ±ΠΊΠ΅. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ΅Π°Π½Ρ ΠΎΡΡΠ°ΡΡΡΡ Β«Π²ΠΈΡΠ΅ΡΡΒ» Π² Π‘Π£ΠΠ, Π±Π»ΠΎΠΊΠΈΡΡΡ Π΄ΠΎΡΡΡΠΏ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ.
β ΠΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ β Π΅ΡΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ) Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΠΈΡΡΠ΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Ρ ΠΊΠ°ΠΊ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ.
β ΠΡΠΈΠ±ΠΎΠΊ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ β Π² ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ Π±Π°Π·Π°Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΠΎΡΠ³ΠΎΠ²Π»Π΅ΠΉ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ ) ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Β«Π·Π°Π²ΠΈΡΠ½ΡΡΡΒ», ΡΠΎΠ·Π΄Π°Π²Π°Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ.
β
Π ΡΡΠ½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ β Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ ΠΈΠ»ΠΈ ΡΠ°ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠ³ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ ΡΠ΅ΡΠ΅Π· SET LOCK Π² SQL-Π·Π°ΠΏΡΠΎΡΠ΅.
Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ½ΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡ 1Π‘ (ΠΌΠ΅Π½Ρ ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅). ΠΠ΄Π½Π°ΠΊΠΎ ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ, Π΅ΡΠ»ΠΈ:
- πΉ ΠΠ΅Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ·-Π·Π° ΠΎΡΠΈΠ±ΠΊΠΈ
"ΠΠ΅ ΡΠ΄Π°Π»ΠΎΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡΡΡ ΠΊ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π°Π·Π΅") - πΉ ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π²ΡΠ·Π²Π°Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ Π½Π° ΡΡΠΎΠ²Π½Π΅ Π‘Π£ΠΠ, Π° Π½Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ 1Π‘
- πΉ ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΌΠ°ΡΡΠΎΠ²ΠΎΠ΅ ΡΠ½ΡΡΠΈΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΡΠ»Π΅ ΡΠ±ΠΎΡ ΡΠ΅ΡΠ²Π΅ΡΠ°)
- πΉ Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠ΅ΡΠ΅Π· ΡΠΊΡΠΈΠΏΡΡ
ΠΠ°ΠΆΠ½ΠΎ: ΠΠ΅ΡΠ΅Π΄ ΡΠ°Π±ΠΎΡΠΎΠΉ Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΡΡ ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠ΅Π·Π΅ΡΠ²Π½Π°Ρ ΠΊΠΎΠΏΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, KILL Π² SQL Server) ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅ΡΠ²Π°ΡΡ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
ΠΡΠ»ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΠΏΠΎΡΠ»Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΎΡΠΊΠ°ΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡ β ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ β ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° β ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ. ΠΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π΅ΡΠ»ΠΈ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ.
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΊ ΡΠ°Π±ΠΎΡΠ΅: Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ
ΠΠ»Ρ ΡΠ½ΡΡΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΠΎΠ»Ρ Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΡΡΡΡ:
- π οΈ ΠΠ»ΠΈΠ΅Π½Ρ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊ Π‘Π£ΠΠ:
- SQL Server Management Studio (SSMS) ΠΈΠ»ΠΈ Azure Data Studio Π΄Π»Ρ Microsoft SQL Server
- pgAdmin ΠΈΠ»ΠΈ psql Π΄Π»Ρ PostgreSQL
- π ΠΡΠ°Π²Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ Π±Π°Π· Π΄Π°Π½Π½ΡΡ
(ΡΡΡΡΠ½Π°Ρ Π·Π°ΠΏΠΈΡΡ Ρ ΡΠΎΠ»ΡΡ
sysadminΠΈΠ»ΠΈdb_owner) - π ΠΠΌΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
(ΠΌΠΎΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ Π² ΡΠ°ΠΉΠ»Π΅
1CV8.1CDΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π·ibases.v8i) - π₯οΈ ΠΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ (Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΠ½Π½ΡΠΉ ΡΠ΅ΡΠ΅Π·
RDP/SSH)
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅ 8.3 Π½Π° PostgreSQL, ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Ρ Π²Π°Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ ΠΏΠ°ΠΊΠ΅Ρ postgresql-client (Π΄Π»Ρ Linux) ΠΈΠ»ΠΈ PostgreSQL Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ (Π΄Π»Ρ Windows).
ΠΠ»Ρ Microsoft SQL Server ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅, ΡΡΠΎ ΡΠ»ΡΠΆΠ±Π° ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» SQL Server Agent Π·Π°ΠΏΡΡΠ΅Π½Π° β ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΊΠΎΠΌΠ°Π½Π΄.
ΠΠ°ΠΊ ΡΠ·Π½Π°ΡΡ ΠΈΠΌΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
1Π‘?
1CV8.1CD (Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠ°) ΠΈΠ»ΠΈ ibases.v8i (Π΄Π»Ρ ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠ³ΠΎ) Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅. ΠΡΠΈΡΠ΅ ΡΡΡΠΎΠΊΡ Π²ΠΈΠ΄Π° Srvr="ΠΈΠΌΡ_ΡΠ΅ΡΠ²Π΅ΡΠ°";Ref="ΠΈΠΌΡ_Π±Π°Π·Ρ".
Π‘Π½ΡΡΠΈΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π² Microsoft SQL Server
ΠΡΠ»ΠΈ Π²Π°ΡΠ° Π±Π°Π·Π° 1Π‘ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° MS SQL Server, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ΡΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ ΡΠ΅ΡΠ΅Π· SSMS ΠΈΠ»ΠΈ sqlcmd.
Π¨Π°Π³ 1. ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ Π±Π»ΠΎΠΊΠΈΡΡΡΡΠΈΠ΅ ΡΠ΅Π°Π½ΡΡ
ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π·Π°ΠΏΡΠΎΡ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π°ΠΊΡΠΈΠ²Π½ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ:
SELECT
session_id,
login_name,
host_name,
program_name,
login_time,
last_request_start_time,
last_request_end_time
FROM sys.dm_exec_sessions
WHERE is_user_process = 1
AND program_name LIKE '%1C%'
ORDER BY last_request_start_time;
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΡΠΎΠ»Π±ΡΡ:
session_idβ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠ΅Π°Π½ΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ Π·Π°Π²Π΅ΡΡΠΈΡΡprogram_nameβ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ1C(ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅, ΡΡΠΎ ΡΡΠΎ ΡΠ΅Π°Π½Ρ 1Π‘)last_request_start_timeβ Π²ΡΠ΅ΠΌΡ Π½Π°ΡΠ°Π»Π° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° (Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ΅Π°Π½ΡΡ β ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ)
Π¨Π°Π³ 2. Π£Π΄Π°Π»ΠΈΡΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ KILL Π΄Π»Ρ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ΅Π°Π½ΡΠ° (Π·Π°ΠΌΠ΅Π½ΠΈΡΠ΅ XX Π½Π° ΡΠ΅Π°Π»ΡΠ½ΡΠΉ session_id):
KILL XX;
ΠΡΠ»ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΡΠ²ΡΠ·Π°Π½Π° Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠ΅ΠΉ, ΡΠ½Π°ΡΠ°Π»Π° ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ Π΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅:
DBCC INPUTBUFFER(XX);
Π¨Π°Π³ 3. ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ
ΠΠΎΠ²ΡΠΎΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π·Π°ΠΏΡΠΎΡ ΠΈΠ· Π¨Π°Π³Π° 1. ΠΡΠ»ΠΈ ΡΠ΅Π°Π½Ρ ΠΈΡΡΠ΅Π· β Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΡΠ½ΡΡΠ°. ΠΡΠ»ΠΈ Π½Π΅Ρ, ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π·Π°Π²Π΅ΡΡΠΈΡΡ Π²ΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ·ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ΅Π°Π½ΡΡ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ»ΡΠΆΠ±Ρ SQL Server.
Π£Π±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΡΠ΅Π°Π½Ρ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ 1Π‘ (ΠΏΠΎΠ»Π΅ program_name)|ΠΡΠΎΠ²Π΅ΡΠΈΡΡ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° (Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ Π±ΠΎΠ»ΡΡΠ΅ 5-10 ΠΌΠΈΠ½ΡΡ)|Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ session_id Π΄Π»Ρ ΠΎΡΠΊΠ°ΡΠ° (Π½Π° ΡΠ»ΡΡΠ°ΠΉ ΠΎΡΠΈΠ±ΠΊΠΈ)|ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠΏΠΎΠ²Π΅ΡΡΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΎ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ ΡΠ°Π·ΡΡΠ²Π΅-->
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΠΎΠΌΠ°Π½Π΄Π°KILLΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌWITH STATUSONLYΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΡΡΠ°ΡΡΡ ΠΎΡΠΌΠ΅Π½Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ. ΠΡΠ»ΠΈ ΠΏΡΠΎΡΠ΅ΡΡ Β«Π·Π°Π²ΠΈΡΒ», ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ° ΡΠ΅ΡΠ²Π΅ΡΠ°.
Π‘Π½ΡΡΠΈΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π² PostgreSQL
ΠΠ»Ρ PostgreSQL Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΏΠΎΡ
ΠΎΠΆ, Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ΡΡ ΠΊ Π±Π°Π·Π΅ ΡΠ΅ΡΠ΅Π· psql ΠΈΠ»ΠΈ pgAdmin.
Π¨Π°Π³ 1. ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ
ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π·Π°ΠΏΡΠΎΡ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ:
SELECT
pid,
usename,
application_name,
client_addr,
query_start,
state,
query
FROM pg_stat_activity
WHERE state = 'active'
AND application_name LIKE '%1C%'
ORDER BY query_start;
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ:
pidβ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡΠ°query_startβ Π²ΡΠ΅ΠΌΡ Π½Π°ΡΠ°Π»Π° Π·Π°ΠΏΡΠΎΡΠ° (Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ β ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ)queryβ ΡΠ΅ΠΊΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° (ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡLOCK)
Π¨Π°Π³ 2. ΠΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠ°
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ pg_terminate_backend (Π·Π°ΠΌΠ΅Π½ΠΈΡΠ΅ XXX Π½Π° pid):
SELECT pg_terminate_backend(XXX);
ΠΡΠ»ΠΈ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π΅ Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ, ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ pg_cancel_backend(XXX) (ΠΌΡΠ³ΠΊΠΎΠ΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅).
Π¨Π°Π³ 3. ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠ°Π±Π»ΠΈΡ
ΠΠ»Ρ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π·Π°ΠΏΡΠΎΡ:
SELECT
blocked_locks.pid AS blocked_pid,
blocking_locks.pid AS blocking_pid,
blocked_activity.usename AS blocked_user,
blocking_activity.usename AS blocking_user,
blocked_activity.query AS blocked_statement
FROM pg_catalog.pg_locks blocked_locks
JOIN pg_stat_activity blocked_activity ON blocked_activity.pid = blocked_locks.pid
JOIN pg_catalog.pg_locks blocking_locks
ON blocking_locks.locktype = blocked_locks.locktype
AND blocking_locks.DATABASE IS NOT DISTINCT FROM blocked_locks.DATABASE
AND blocking_locks.relation IS NOT DISTINCT FROM blocked_locks.relation
AND blocking_locks.page IS NOT DISTINCT FROM blocked_locks.page
AND blocking_locks.tuple IS NOT DISTINCT FROM blocked_locks.tuple
AND blocking_locks.virtualxid IS NOT DISTINCT FROM blocked_locks.virtualxid
AND blocking_locks.transactionid IS NOT DISTINCT FROM blocked_locks.transactionid
AND blocking_locks.classid IS NOT DISTINCT FROM blocked_locks.classid
AND blocking_locks.objid IS NOT DISTINCT FROM blocked_locks.objid
AND blocking_locks.objsubid IS NOT DISTINCT FROM blocked_locks.objsubid
AND blocking_locks.pid != blocked_locks.pid
JOIN pg_stat_activity blocking_activity ON blocking_activity.pid = blocking_locks.pid
WHERE NOT blocked_locks.GRANTED;
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π PostgreSQL Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ²ΡΠ·Π°Π½Ρ Ρ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ. ΠΡΠ»ΠΈ ΠΏΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΠΎΡΡΠ°ΡΡΡΡ, ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΎΡΠΊΡΡΡΡΡ
ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ΡΠ΅ΡΠ΅Π· SELECT * FROM pg_locks WHERE NOT granted;.
Π Π°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈ ΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ
ΠΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡ ΡΠ°ΡΡΠΎ ΡΡΠ°Π»ΠΊΠΈΠ²Π°ΡΡΡΡ Ρ ΡΠΈΠΏΠΎΠ²ΡΠΌΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ. ΠΠΈΠΆΠ΅ β ΡΠ°Π±Π»ΠΈΡΠ° ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΈΡ ΡΡΡΡΠ°Π½Π΅Π½ΠΈΡ:
| ΠΡΠΈΠ±ΠΊΠ° | ΠΡΠΈΡΠΈΠ½Π° | Π Π΅ΡΠ΅Π½ΠΈΠ΅ |
|---|---|---|
Msg 6106, Level 16, State 1: No process with ID XX was found |
Π‘Π΅Π°Π½Ρ ΡΠΆΠ΅ Π·Π°Π²Π΅ΡΡΡΠ½ ΠΈΠ»ΠΈ ΡΠΊΠ°Π·Π°Π½ Π½Π΅Π²Π΅ΡΠ½ΡΠΉ session_id |
ΠΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅Π°Π½ΡΠΎΠ² ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ Π°ΠΊΡΡΠ°Π»ΡΠ½ΡΠΉ ID |
ERROR: canceling statement due to user request (PostgreSQL) |
ΠΡΠΎΡΠ΅ΡΡ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΎΡΠΌΠ΅Π½ΡΠ½, Π½ΠΎ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π½Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½Π° | ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ COMMIT ΠΈΠ»ΠΈ ROLLBACK Π²ΡΡΡΠ½ΡΡ, Π΅ΡΠ»ΠΈ ΡΠ΅Π°Π½Ρ Π²ΡΡ Π΅ΡΡ Π°ΠΊΡΠΈΠ²Π΅Π½ |
Cannot kill a system process |
ΠΠΎΠΏΡΡΠΊΠ° Π·Π°Π²Π΅ΡΡΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ (Π½Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ) | ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ ΠΏΡΠ°Π²Π° ΡΡΡΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΈ ΡΠΈΠ»ΡΡΡΡΠΉΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π°Π½ΡΡ 1Π‘ (program_name LIKE '%1C%') |
ΠΠ»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΠΎΡΡΠ°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅ KILL/pg_terminate_backend |
Π’ΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π½Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½Π° ΠΈΠ»ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠ°Π±Π»ΠΈΡΡ | ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ ΠΎΡΠΊΡΡΡΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΡΠ΅ΡΠ΅Π· DBCC OPENTRAN (SQL Server) ΠΈΠ»ΠΈ pg_locks (PostgreSQL) |
Permission denied for database |
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠ°Π² Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ | ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ΡΡ ΠΏΠΎΠ΄ ΡΡΡΡΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΡΡ Ρ ΡΠΎΠ»ΡΡ sysadmin ΠΈΠ»ΠΈ db_owner |
ΠΡΠ»ΠΈ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π½Π΅ ΠΏΠΎΠΌΠΎΠ³, ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅:
- π Π‘Π΅ΡΠ΅Π²ΡΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ β Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΠΎΠ±ΡΡΠ²Π΅ ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ 1Π‘ ΠΈ Π‘Π£ΠΠ.
- π¦ ΠΡΡΠ½Π°Π»Ρ Π‘Π£ΠΠ β Π² Π»ΠΎΠ³Π°Ρ SQL Server ΠΈΠ»ΠΈ PostgreSQL ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΎ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ΅.
- π Π Π΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ β Π² ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ²ΡΠ·Π°Π½Π° Ρ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ Π΄Π°Π½Π½ΡΡ .
ΠΡΠ»ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎ, Π½Π°ΡΡΡΠΎΠΉΡΠ΅ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π΄ΠΎΠ»Π³ΠΈΡ
ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ΡΠ΅ΡΠ΅Π· SQL Server Profiler ΠΈΠ»ΠΈ pgBadger Π΄Π»Ρ PostgreSQL.
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΡΠ½ΡΡΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ ΡΠ΅ΡΠ΅Π· ΡΠΊΡΠΈΠΏΡΡ
ΠΠ»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ ΡΡΡΠΈΠ½Π½ΡΡ Π·Π°Π΄Π°Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΊΡΠΈΠΏΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΈΡΠΊΠ°ΡΡ ΠΈ ΡΠ½ΠΈΠΌΠ°ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ. ΠΠΈΠΆΠ΅ β ΠΏΡΠΈΠΌΠ΅ΡΡ Π΄Π»Ρ SQL Server ΠΈ PostgreSQL.
Π‘ΠΊΡΠΈΠΏΡ Π΄Π»Ρ SQL Server (PowerShell):
# ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ SQL Server
$server = "ΠΈΠΌΡ_ΡΠ΅ΡΠ²Π΅ΡΠ°"
$dbName = "ΠΈΠΌΡ_Π±Π°Π·Ρ_1Π‘"
$query = @"
SELECT session_id
FROM sys.dm_exec_sessions
WHERE is_user_process = 1
AND program_name LIKE '%1C%'
AND last_request_start_time < DATEADD(minute, -10, GETDATE())
"@
ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠ° ΠΈ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π°Π½ΡΠΎΠ²
Invoke-Sqlcmd -ServerInstance $server -Database "master" -Query $query | ForEach-Object {
Write-Host "ΠΠ°Π²Π΅ΡΡΠ°Π΅ΠΌ ΡΠ΅Π°Π½Ρ $($_.session_id)..."
Invoke-Sqlcmd -ServerInstance $server -Database "master" -Query "KILL $($_.session_id)"
}
"@
Π‘ΠΊΡΠΈΠΏΡ Π΄Π»Ρ PostgreSQL (Bash):
#!/bin/bash
DB_USER="postgres"
DB_HOST="localhost"
DB_NAME="ΠΈΠΌΡ_Π±Π°Π·Ρ_1Π‘"
ΠΠΎΠΈΡΠΊ ΠΈ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ²
psql -U $DB_USER -h $DB_HOST -d $DB_NAME -c "
SELECT pid FROM pg_stat_activity
WHERE state = 'active'
AND application_name LIKE '%1C%'
AND query_start < NOW() - INTERVAL '10 minutes'
" | awk 'NR>2 {print $1}' | while read pid; do
echo "ΠΠ°Π²Π΅ΡΡΠ°Π΅ΠΌ ΠΏΡΠΎΡΠ΅ΡΡ $pid..."
psql -U $DB_USER -h $DB_HOST -d $DB_NAME -c "SELECT pg_terminate_backend($pid);"
done
ΠΠ»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ Π·Π°ΠΏΡΡΠΊΠ°ΠΉΡΠ΅ ΡΠΊΡΠΈΠΏΡΡ ΠΏΠΎ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· cron (Linux) ΠΈΠ»ΠΈ ΠΠ°Π΄Π°ΡΠΈ Windows. ΠΠ΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΠΉΡΠ΅ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ°ΡΡΡΠΉ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ (ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ β ΡΠ°Π· Π² 15-30 ΠΌΠΈΠ½ΡΡ), ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π»ΠΎΠΆΠ½ΡΡ
ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΠΉ Π½Π° Π»Π΅Π³ΠΈΡΠΈΠΌΠ½ΡΠ΅ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅ΡΠ²Π°ΡΡ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°ΠΊΡΡΡΠΈΠ΅ ΠΌΠ΅ΡΡΡΠ° Π² 1Π‘:ΠΡΡ Π³Π°Π»ΡΠ΅ΡΠΈΠΈ). ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π² Π½Π΅ΡΠ°Π±ΠΎΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΈΠ»ΠΈ Π½Π° ΡΠ΅ΡΡΠΎΠ²ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ .
ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠ½ΡΡΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ
ΠΡΠ»ΠΈ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π΅ ΠΏΠΎΠΌΠΎΠ³Π»ΠΈ, ΡΠ°ΡΡΠΌΠΎΡΡΠΈΡΠ΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ:
- π ΠΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊ ΡΠ»ΡΠΆΠ±:
- ΠΠ»Ρ SQL Server:
net stop MSSQLSERVER && net start MSSQLSERVER - ΠΠ»Ρ PostgreSQL:
systemctl restart postgresql(Linux) ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π· Π‘Π»ΡΠΆΠ±Ρ Windows
- ΠΠ»Ρ SQL Server:
- π ΠΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ· ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ β Π΅ΡΠ»ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΡΠ²ΡΠ·Π°Π½Π° Ρ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ .
- π§ ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΈΠ»ΠΈΡ 1Π‘:
chdbfl.exeβ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ1CV8.exe /IBConnectionTestβ ΡΠ΅ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊ Π±Π°Π·Π΅
- π ΠΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ 1Π‘ β Π΅ΡΠ»ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΡΠ²ΡΠ·Π°Π½Π° Ρ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Π²Π΅ΡΡΠΈΡΡ 8.3.20 ΠΈΠ»ΠΈ 8.3.22 Π±ΡΠ»ΠΈ Π±Π°Π³ΠΈ Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ).
ΠΠ»Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠ° 1Π‘ (Π±Π΅Π· Π‘Π£ΠΠ) Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΡΠ½ΠΈΠΌΠ°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π°
Π€Π°ΠΉΠ» Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π°Π·Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΠΎΡΠ»Π΅ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΠ΅ 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅.1Cv8.lck Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Π±Π°Π·Ρ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΅ΡΠ»ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π½Π΅ ΡΠ²ΡΠ·Π°Π½Π° Ρ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ
.
ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΡΠ°ΠΉΠ» 1Cv8.lck?
C:\Bases\ΠΠ°ΡΠ°ΠΠ°Π·Π°\1Cv8.lck). Π£Π΄Π°Π»ΠΈΡΠ΅ Π΅Π³ΠΎ Π²ΡΡΡΠ½ΡΡ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρ:del /F "C:\ΠΏΡΡΡ\ΠΊ\Π±Π°Π·Π΅\1Cv8.lck"
ΠΡΠΎΡΠΈΠ»Π°ΠΊΡΠΈΠΊΠ° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ Π² 1Π‘
Π§ΡΠΎΠ±Ρ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΈΡΠΊ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ, ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌ:
- β‘ ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠΉΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ β Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠ°ΡΡΠΎΠ²ΠΎΠ΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ²) ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ ΡΠ°Π½Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅
ΠΠ°ΠΊΠ΅ΡΠ½ΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΡΠ² 1Π‘ Π΄Π»Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ. - π ΠΠ°ΡΡΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠΌ-Π°ΡΡΡ:
- Π SQL Server: ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ
remote query timeout(ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ 600 ΡΠ΅ΠΊΡΠ½Π΄) - Π PostgreSQL:
statement_timeoutΠ²postgresql.conf
- Π SQL Server: ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ
- π ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π²ΡΠΎΠ΄Π΅ Zabbix ΠΈΠ»ΠΈ Grafana Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ Π΄ΠΎΠ»Π³ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ.
- π Π Π΅Π³ΡΠ»ΡΡΠ½ΠΎΠ΅ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠ΅:
- ΠΠ΅ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² SQL Server (
REINDEX) VACUUM ANALYZEΠ² PostgreSQL
- ΠΠ΅ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² SQL Server (
- π ΠΠ±Π½ΠΎΠ²Π»ΡΠΉΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ β Π² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΡΡ 1Π‘ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Ρ ΠΎΡΠΈΠ±ΠΊΠΈ, Π²Π΅Π΄ΡΡΠΈΠ΅ ΠΊ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ°ΠΌ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² 8.3.23 ΡΠ»ΡΡΡΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ° Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ).
ΠΠ»Ρ ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠ³ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠ° 1Π‘ Π½Π°ΡΡΡΠΎΠΉΡΠ΅ ΠΏΡΠ»Ρ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ Π² ΠΊΠ»Π°ΡΡΠ΅ΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ². ΠΡΠΎ ΡΠΌΠ΅Π½ΡΡΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡΠΊΡΡΡΡΡ ΡΠ΅Π°Π½ΡΠΎΠ² ΠΈ ΡΠ½ΠΈΠ·ΠΈΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° Π‘Π£ΠΠ.
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡ
Ρ Π²ΡΡΠΎΠΊΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΎΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 1Π‘:ERP ΠΈΠ»ΠΈ 1Π‘:Π£Π’ 11) Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π²ΡΠ·Π²Π°Π½Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ°ΠΌΠΈ ΠΏΡΠΈ Π·Π°ΠΏΠΈΡΠΈ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π Π΅Π³Π»Π°ΠΌΠ΅Π½ΡΠ½ΡΡ
Π·Π°Π΄Π°Π½ΠΈΠΉ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π² Π½Π΅ΠΏΠΈΠΊΠΎΠ²ΡΠ΅ ΡΠ°ΡΡ.
FAQ: Π§Π°ΡΡΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΏΠΎ ΡΠ½ΡΡΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ 1Π‘
ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΡΠ½ΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ Π±Π΅Π· ΠΏΡΠ°Π² Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Π‘Π£ΠΠ?
ΠΠ΅Ρ, Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ KILL ΠΈΠ»ΠΈ pg_terminate_backend ΡΡΠ΅Π±ΡΡΡΡΡ ΠΏΡΠ°Π²Π° sysadmin (SQL Server) ΠΈΠ»ΠΈ superuser (PostgreSQL). Π ΠΊΡΠ°ΠΉΠ½Π΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ ΡΠ²ΡΠ·Π°ΡΡΡΡ Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡΡΠ½ΡΡ Π·Π°ΠΏΠΈΡΡ, ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ Π·Π°ΠΏΡΡΠ΅Π½ ΠΊΠ»Π°ΡΡΠ΅Ρ 1Π‘ (Π΅ΡΠ»ΠΈ Ρ Π½Π΅Ρ Π΅ΡΡΡ Π½ΡΠΆΠ½ΡΠ΅ ΠΏΡΠ°Π²Π°).
Π§ΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠ»Π΅ ΡΠ½ΡΡΠΈΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π±Π°Π·Π° 1Π‘ Π½Π΅ ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΡΡ?
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΏΡΠΈΡΠΈΠ½Ρ:
- ΠΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
ΠΏΠΎΡΠ»Π΅ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ. ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅
Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΡΠ΅ΡΠ΅Π· ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡ. - ΠΡΡΠ°Π»ΠΈΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
1Cv8.lck). Π£Π΄Π°Π»ΠΈΡΠ΅ ΠΈΡ Π²ΡΡΡΠ½ΡΡ. - Π‘Π±ΠΎΠΉ ΡΠ»ΡΠΆΠ±Ρ 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅. ΠΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ»ΡΠΆΠ±Ρ
ragent.
ΠΡΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ, Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π±Π°Π·Ρ ΠΈΠ· ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ.
ΠΠ°ΠΊ ΡΠ½ΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ Π² ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ 1Π‘?
ΠΠ»Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ (Π±Π΅Π· Π‘Π£ΠΠ):
- ΠΠ°ΠΊΡΠΎΠΉΡΠ΅ Π²ΡΠ΅ ΡΠ΅Π°Π½ΡΡ 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅.
- Π£Π΄Π°Π»ΠΈΡΠ΅ ΡΠ°ΠΉΠ»
1Cv8.lckΠ² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Π±Π°Π·Ρ. - ΠΡΠ»ΠΈ ΡΠ°ΠΉΠ» Π½Π΅ ΡΠ΄Π°Π»ΡΠ΅ΡΡΡ, Π·Π°Π²Π΅ΡΡΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡ
1cv8.exeΠΈΠ»ΠΈrmngr.exeΡΠ΅ΡΠ΅Π· ΠΠΈΡΠΏΠ΅ΡΡΠ΅Ρ Π·Π°Π΄Π°Ρ. - ΠΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΠ΅ 1Π‘.
ΠΡΠ»ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΡΠ²ΡΠ·Π°Π½Π° Ρ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ ΡΠ°ΠΉΠ»Π° 1Cv8.1CD, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠΈΠ»ΠΈΡΡ chdbfl.exe.
ΠΠΎΡΠ΅ΠΌΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ Π² ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ?
Π‘ΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, ΡΡΠΎ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ΡΠ΅Π³Π»Π°ΠΌΠ΅Π½ΡΠ½ΡΠΌΠΈ Π·Π°Π΄Π°Π½ΠΈΡΠΌΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°ΠΊΡΡΡΠΈΠ΅ ΠΌΠ΅ΡΡΡΠ°, ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈΠ»ΠΈ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅). ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π² ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅ β ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β Π Π΅Π³Π»Π°ΠΌΠ΅Π½ΡΠ½ΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠΈΡΠ΅ ΠΈΡ
Π½Π° Π΄ΡΡΠ³ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠΈΡΠΈΠ½ΠΎΠΉ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠΎΠ½ΠΎΠ²ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ²).
ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π² 1Π‘ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ?
ΠΠ΅Ρ, Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ β ΡΡΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π‘Π£ΠΠ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΉ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ . ΠΠ΄Π½Π°ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΠΈΡ Π²Π»ΠΈΡΠ½ΠΈΠ΅:
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΡΡΠΈΡΠ½ΡΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ (Π΅ΡΠ»ΠΈ ΡΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²Π°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ).
- ΠΠ°ΡΡΡΠΎΠΉΡΠ΅ ΡΡΠΎΠ²Π΅Π½Ρ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ Π² Π‘Π£ΠΠ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
READ COMMITTED SNAPSHOTΠ² SQL Server). - Π Π°Π·Π΄Π΅Π»ΠΈΡΠ΅ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
ΠΠΎΠ»Π½ΠΎΠ΅ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ ΠΏΠΎΡΠ΅ΡΠ΅ Π΄Π°Π½Π½ΡΡ !