БистСма управлСния Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… (Π‘Π£Π‘Π”) являСтся Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚ΠΎΠΌ любой соврСмСнной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, ΠΈ Π² экосистСмС 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ ΠΎΡ‚ Π΅Ρ‘ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ зависит ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΈ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ бизнСс-процСссов. Когда Ρ€Π΅Ρ‡ΡŒ Π·Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΎ взаимодСйствии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…, администраторы часто ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с понятиСм изоляции Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ ΠΈ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ. Одним ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ строгих ΠΈ спСцифичСских Ρ€Π΅ΠΆΠΈΠΌΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ являСтся Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ ΠΏΠΎΠ»Π½ΠΎΠ΅ соСдинСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ 1Π‘ Ρ‡Π°Ρ‰Π΅ ассоциируСтся с ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ изоляции Serializable ΠΈΠ»ΠΈ ТСсткой Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ записСй.

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΡƒΡŽ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ выполнСния слоТных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, прСдотвращая Π»ΡŽΠ±Ρ‹Π΅ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Π΅ измСнСния со стороны Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. Однако Π·Π° Ρ‚Π°ΠΊΡƒΡŽ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ приходится ΠΏΠ»Π°Ρ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ систСма Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Π° Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ рСсурсы Π½Π° Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈ стандартной Ρ€Π°Π±ΠΎΡ‚Π΅. ПониманиС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ формируСтся Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ послСдствия это нСсСт для ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ°, критичСски Π²Π°ΠΆΠ½ΠΎ для любого Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΈΠ»ΠΈ администратора.

Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ взаимодСйствия ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ с Π‘Π£Π‘Π” Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ТСстких ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ, рассмотрим сцСнарии, ΠΊΠΎΠ³Π΄Π° Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, ΠΈ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ, ΠΊΠ°ΠΊ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… ошибок, связанных с Π²Π·Π°ΠΈΠΌΠΎΠ±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ (deadlocks). Π’Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊΠΈΠ΅ настройки кластСра сСрвСров ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ запросов Π²Π»ΠΈΡΡŽΡ‚ Π½Π° этот процСсс, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ практичСскиС Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ.

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ изоляции Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ ΠΈ Ρ€ΠΎΠ»ΡŒ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ соСдинСния

Π’ основС Ρ€Π°Π±ΠΎΡ‚Ρ‹ любой рСляционной Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π»Π΅ΠΆΠΈΡ‚ концСпция Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ β€” ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ ΠΊΠ°ΠΊ Π΅Π΄ΠΈΠ½ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ ANSI SQL опрСдСляСт Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ уровня изоляции Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ компромисс ΠΌΠ΅ΠΆΠ΄Ρƒ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒΡŽ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ систСмы. Π Π΅ΠΆΠΈΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² контСкстС 1Π‘ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ "ΠΏΠΎΠ»Π½ΠΎΠ΅ соСдинСниС" ΠΈΠ»ΠΈ максимально строгая изоляция, соотвСтствуСт ΡƒΡ€ΠΎΠ²Π½ΡŽ Serializable.

ΠŸΡ€ΠΈ использовании этого уровня Π‘Π£Π‘Π” Π²Π΅Π΄Π΅Ρ‚ сСбя Ρ‚Π°ΠΊ, Π±ΡƒΠ΄Ρ‚ΠΎ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΎΠ΄Π½Π° Π·Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Π΄Π°ΠΆΠ΅ Ссли физичСски ΠΎΠ½ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ. Π­Ρ‚ΠΎ достигаСтся Π·Π° счСт Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ систСма Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ измСняСмыС строки, Π½ΠΎ ΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹ запросом. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Ρ‡Π°Ρ‰Π΅, Π½ΠΎ риск получСния Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… (Ρ„Π°Π½Ρ‚ΠΎΠΌΠ½ΠΎΠ³ΠΎ чтСния ΠΈΠ»ΠΈ Π½Π΅ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰Π΅Π³ΠΎΡΡ чтСния) сводится ΠΊ Π½ΡƒΠ»ΡŽ.

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ мягкиС ΡƒΡ€ΠΎΠ²Π½ΠΈ изоляции (Ρ‡Π°Ρ‰Π΅ всСго Read Committed), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ½ΡƒΡŽ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅. Однако Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… сцСнариях, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ слоТных Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈΠ»ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π°, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ТСстких Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ. Π­Ρ‚ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Ρ‡Π΅Ρ‚ΠΊΠΎΠ³ΠΎ понимания послСдствий, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ любоС ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ освобоТдСния рСсурса ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ остановкС Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ "ΠΏΠΎΠ»Π½ΠΎΠ΅ соСдинСниС" Π² Π±Ρ‹Ρ‚ΠΎΠ²ΠΎΠΌ смыслС администрирования 1Π‘ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для описания ситуации, ΠΊΠΎΠ³Π΄Π° клиСнтскоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ устанавливаСт ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ»ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ доступ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…. Π’ этом случаС ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ Π½Π΅ позволяСт Π΄Ρ€ΡƒΠ³ΠΈΠΌ сСансам Π΄Π°ΠΆΠ΅ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π΄ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ установка уровня изоляции Serializable Π² высоконагруТСнных систСмах ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ каскадным Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌ ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ падСнию ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ этот Ρ€Π΅ΠΆΠΈΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для критичСски Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, Π³Π΄Π΅ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… Π²Π°ΠΆΠ½Π΅Π΅ скорости ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ°.

πŸ“Š Как часто Π²Ρ‹ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π΅Ρ‚Π΅ΡΡŒ с Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ Π² 1Π‘?
Π•ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ
Раз в нСдСлю
Π Π΅Π΄ΠΊΠΎ
Никогда Π½Π΅ Π·Π°ΠΌΠ΅Ρ‡Π°Π»

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ Π΄Π°Π½Π½Ρ‹Ρ… Π² 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅

Когда ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΈΠ»ΠΈ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅Ρ‚ запись Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° отправляСт Π² Π‘Π£Π‘Π” ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π½Π° Π·Π°Ρ…Π²Π°Ρ‚ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ. Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ стандартной Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ строки Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚. Π­Ρ‚ΠΎ позволяСт Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с сосСдними записями Π±Π΅Π· ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ. Однако ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ Π² Ρ€Π΅ΠΆΠΈΠΌ, Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΠΎΠ»Π½ΠΎΠΌΡƒ соСдинСнию, ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ΡΡ.

БущСствуСт нСсколько Ρ‚ΠΈΠΏΠΎΠ² Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ для управлСния доступом. ПониманиС Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π΄ΠΈΠ°Π³Π½ΠΎΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ. Если Π² систСмС Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ТСсткая изоляция, Ρ‚ΠΎ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒΡΡ Π½Π° всю Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΈΠ»ΠΈ ΡΡƒΡ‰Π΅ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Π΅Ρ‘ Ρ‡Π°ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠ°Ρ€Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ… сСансов, ΠΏΡ‹Ρ‚Π°ΡŽΡ‰ΠΈΡ…ΡΡ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Ρ‚Π΅ΠΌ ΠΆΠ΅ Π΄Π°Π½Π½Ρ‹ΠΌ.

  • πŸ”’ Эксклюзивная Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° (Exclusive Lock): ΠŸΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ для Π»ΡŽΠ±Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, ΠΊΡ€ΠΎΠΌΠ΅ чтСния (Π² зависимости ΠΎΡ‚ настроСк). УстанавливаСтся ΠΏΡ€ΠΈ записи ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ записи.
  • πŸ“– Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° раздСлСния (Shared Lock): ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΈΠΌ сСансам Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, Π½ΠΎ Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ ΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. Часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ°Ρ… с ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ "Для обновлСния".
  • πŸ—οΈ Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° схСм (Schema Lock): Π—Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ структуры ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†, ΠΏΠΎΠΊΠ° выполняСтся запрос. ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π½Π° ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ слСдуСт ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρƒ Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ изоляции Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊΠ”Π°Π½Π½Ρ‹Ρ…. ИмСнно Ρ‡Π΅Ρ€Π΅Π· этот ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ‚Π΅ΠΌ, насколько "ΠΏΠ»ΠΎΡ‚Π½Ρ‹ΠΌ" Π±ΡƒΠ΄Π΅Ρ‚ соСдинСниС с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Если ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ изоляции Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ сСриализуСмому транзакциям, Π‘Π£Π‘Π” Π½Π°Ρ‡Π½Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² строках, Π½ΠΎ ΠΈ появлСниС Π½ΠΎΠ²Ρ‹Ρ… строк, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‰ΠΈΡ… условиям Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ.

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях, особСнно ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… дСскрипторов. Π—Π΄Π΅ΡΡŒ "ΠΏΠΎΠ»Π½ΠΎΠ΅ соСдинСниС" ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ„ΠΈΠ·ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Π±Π°Π·Ρ‹ Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, ΠΏΠΎΠΊΠ° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π½Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ сСанс. Π’ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрном Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ (SQL) этот процСсс Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ, Π½ΠΎ ΠΈ Π±ΠΎΠ»Π΅Π΅ слоТный Π² ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅.

πŸ’‘

Для Π°Π½Π°Π»ΠΈΠ·Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ… Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ консоль администрирования сСрвСров 1Π‘ ΠΈΠ»ΠΈ спСциализированныС запросы ΠΊ систСмным Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ вашСй Π‘Π£Π‘Π” (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, sys.dm_tran_locks Π² MS SQL).

Настройка монопольного Ρ€Π΅ΠΆΠΈΠΌΠ° ΠΈ ΠΏΡ€Π°Π² доступа

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ сцСнариСв, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ контроля Π½Π°Π΄ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π² 1Π‘ прСдусмотрСн ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ монопольного Ρ€Π΅ΠΆΠΈΠΌΠ°. Π­Ρ‚ΠΎ состояниС, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ конфигурация ΠΈΠ»ΠΈ Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… открываСтся СдинствСнным ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰ΠΈΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΡ€Π°Π²Π°ΠΌΠΈ. Вакая настройка часто трСбуСтся ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ восстановлСнии послС сбоСв.

Π§Ρ‚ΠΎΠ±Ρ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡ запуска /Exclusive ΠΈΠ»ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ настройку Π² ярлыкС запуска прСдприятия. ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π² этот ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΎΠ½ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ сообщСниС ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π±Π°Π·Π° занята Π² монопольном Ρ€Π΅ΠΆΠΈΠΌΠ΅. Π­Ρ‚ΠΎ самый Π³Ρ€ΡƒΠ±Ρ‹ΠΉ, Π½ΠΎ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ способ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ "ΠΏΠΎΠ»Π½ΠΎΠ΅ соСдинСниС" администратора с Π±Π°Π·ΠΎΠΉ Π±Π΅Π· Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° ΠΈΠ·Π²Π½Π΅.

Однако Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ Ρ‡Π°Ρ‰Π΅ трСбуСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ доступом. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°Π”Π°Π½Π½Ρ‹Ρ…. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ явно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈ записи Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ критичСской ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Если Π½Π΅ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ эти Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ своСврСмСнно, ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, создавая ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ ΠΈΠ· ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‰ΠΈΡ… сСансов.

Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° = НовыС Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°Π”Π°Π½Π½Ρ‹Ρ…;

Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°.Π Π΅ΠΆΠΈΠΌ = Π Π΅ΠΆΠΈΠΌΠ‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈΠ”Π°Π½Π½Ρ‹Ρ….Π­ΠΊΡΠΊΠ»ΡŽΠ·ΠΈΠ²Π½Ρ‹ΠΉ;

Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°.Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊΠ”Π°Π½Π½Ρ‹Ρ… = Новый ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅Π’Π°Π±Π»ΠΈΡ†Ρ‹Π”Π°Π½Π½Ρ‹Ρ…("РСгистрБвСдСний.ΠšΡƒΡ€ΡΡ‹Π’Π°Π»ΡŽΡ‚");

Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°.Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ("ΠŸΠ΅Ρ€ΠΈΠΎΠ΄", ВСкущаяДата());

Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°.Π—Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ();

// Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ критичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ

Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°.Π‘Π½ΡΡ‚ΡŒ();

Π”Π°ΠΆΠ΅ Ссли тСхничСски Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΡƒ, ΠΏΡ€Π°Π²Π° Ρ€ΠΎΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ записи Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ рСгистры. Администратор Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Ρƒ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰Π΅ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ соСдинСния, Π΅ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π° ΠœΠΎΠ½ΠΎΠΏΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ ΠΈ АдминистрированиС.

β˜‘οΈ ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ монопольной Ρ€Π°Π±ΠΎΡ‚Π΅

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

Анализ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ выявлСниС ΡƒΠ·ΠΊΠΈΡ… мСст

ИспользованиС ТСстких Ρ€Π΅ΠΆΠΈΠΌΠΎΠ² соСдинСния ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ сказываСтся Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ систСмы. Основная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ оТидания. Когда ΠΎΠ΄ΠΈΠ½ сСанс ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ рСсурс Π² эксклюзивном доступС, всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ запросы ΠΊ этому рСсурсу пСрСходят Π² состояниС оТидания. Если Ρ‚Π°ΠΊΠΈΡ… запросов ΠΌΠ½ΠΎΠ³ΠΎ, образуСтся ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, которая ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚Π°ΠΌ соСдинСний.

Для диагностики ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ситуаций Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ встроСнныС инструмСнты ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°. Π–ΡƒΡ€Π½Π°Π» рСгистрации 1Π‘ содСрТит события, связанныС с Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ, Π½ΠΎ для Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° часто трСбуСтся ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ срСдствам самой Π‘Π£Π‘Π”. НапримСр, Π² MS SQL Server ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ динамичСскиС прСдставлСния для поиска Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… процСссов (Blockers).

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π°Π½Π°Π»ΠΈΠ·Π° ОписаниС влияния Π½Π° систСму Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΠΎΠ΅ дСйствиС
ВрСмя удСрТания Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π§Π΅ΠΌ дольшС транзакция Π°ΠΊΡ‚ΠΈΠ²Π½Π°, Ρ‚Π΅ΠΌ Π²Ρ‹ΡˆΠ΅ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ². ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄, Ρ€Π°Π·Π±ΠΈΠ²Π°Ρ‚ΡŒ Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π½Π° части.
Π“Ρ€Π°Π½ΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° всСй Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ…ΡƒΠΆΠ΅, Ρ‡Π΅ΠΌ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° строки. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ условия Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Π² запросах.
Частота Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ Высокая частота ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΠ΅Ρ€Π΅ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ структуру рСгистров ΠΈ индСксов.

Одним ΠΈΠ· ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ являСтся рост количСства ΠΏΡ€Π΅Ρ€Π²Π°Π½Π½Ρ‹Ρ… соСдинСний. Если ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ массово ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ ошибки ΠΎ нСвозмоТности ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΡƒ, это сигнал ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ процСсс ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ рСсурсы слишком Π΄ΠΎΠ»Π³ΠΎ. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ зависшСго сСанса Ρ‡Π΅Ρ€Π΅Π· консоль администрирования.

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° Π΄ΠΈΡΠΊΠΎΠ²ΡƒΡŽ подсистСму. Π Π΅ΠΆΠΈΠΌΡ‹ строгой изоляции часто Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ интСнсивной Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΆΡƒΡ€Π½Π°Π»ΠΎΠΌ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ (Transaction Log). Если диск Π½Π΅ справляСтся с записью Π»ΠΎΠ³ΠΎΠ², ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΏΠ°Π΄Π°Π΅Ρ‚, ΠΈ врСмя удСрТания Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ увСличиваСтся, создавая эффСкт снСТного ΠΊΠΎΠΌΠ°.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΈ способы ΠΈΡ… устранСния

НаиболСС распространСнной ошибкой ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ являСтся Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ (Deadlock). Π­Ρ‚ΠΎ ситуация, ΠΊΠΎΠ³Π΄Π° Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ сСанса ΠΆΠ΄ΡƒΡ‚ освобоТдСния рСсурсов, ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³ΠΎΠΌ. НапримСр, БСанс А Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π» Π—Π°ΠΏΠΈΡΡŒ 1 ΠΈ Ρ…ΠΎΡ‡Π΅Ρ‚ Π—Π°ΠΏΠΈΡΡŒ 2, Π° БСанс Π‘ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π» Π—Π°ΠΏΠΈΡΡŒ 2 ΠΈ ΠΆΠ΄Π΅Ρ‚ Π—Π°ΠΏΠΈΡΡŒ 1. Π‘Π£Π‘Π” Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Π° Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ "ΠΆΠ΅Ρ€Ρ‚Π²Ρƒ" ΠΈ ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈΠ· Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΎΡ€Π²Π°Ρ‚ΡŒ ΠΊΡ€ΡƒΠ³ оТидания.

Π’ ΠΆΡƒΡ€Π½Π°Π»Π΅ рСгистрации 1Π‘ Ρ‚Π°ΠΊΠΈΠ΅ события Ρ„ΠΈΠΊΡΠΈΡ€ΡƒΡŽΡ‚ΡΡ с ΠΊΠΎΠ΄ΠΎΠΌ ошибки, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ Π½Π° ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ. Анализ тСкста ошибки позволяСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… стали ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π°. Часто ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° кроСтся Π² Π½Π΅ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠΌ порядкС доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ Π² ΠΊΠΎΠ΄Π΅.

  • πŸ”„ ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ порядка блокирования: Π Π°Π·Π½Ρ‹Π΅ части ΠΊΠΎΠ΄Π° Π·Π°Ρ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π² Ρ€Π°Π·Π½ΠΎΠΌ порядкС. РСшСниС: ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ порядок доступа ΠΊΠΎ всСм ΠΎΠ±Ρ‰ΠΈΠΌ рСсурсам.
  • ⏳ Π”ΠΎΠ»Π³ΠΈΠ΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ: Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ тяТСлых вычислСний ΠΈΠ»ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ Π²Π²ΠΎΠ΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ. РСшСниС: Π²Ρ‹Π½ΠΎΡΠΈΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ.
  • πŸ“‰ ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ индСксов: Π‘Π£Π‘Π” Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Π° ΡΠΊΠ°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всю Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, блокируя лишниС строки. РСшСниС: Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ индСксы ΠΏΠΎ полям условий ΠΎΡ‚Π±ΠΎΡ€Π°.

Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠΉ ошибкой являСтся ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ Π² Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ врСмя Π±Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΏΡ€ΠΎΡΡ‚ΠΎΡŽ всСго прСдприятия. ВсСгда ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ‚Π°ΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π° Π½Π΅Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ врСмя ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Π½ΠΈΠΉ с ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΏΠΎΠ»Π½ΠΎΠΉ остановки ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ ошибки Π²Π·Π°ΠΈΠΌΠΎΠ±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π½Π΅ ΠΏΡ‹Ρ‚Π°ΠΉΡ‚Π΅ΡΡŒ просто ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ процСсс. НСобходимо ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΌ запускС ситуация с высокой Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ воспроизвСдСтся.

Как ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ Deadlock Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΊΠΎΠ΄Π°?

Π‘Ρ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ всСгда ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈ Ρ‚ΠΎΠΌ ΠΆΠ΅ порядкС Π²ΠΎ всСх модулях ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. НапримСр, сначала всСгда Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠΉΡ‚Π΅ справочник "НомСнклатура", ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΡ‚ΠΎΠΌ "Π‘ΠΊΠ»Π°Π΄". Π­Ρ‚ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ цикличСскоС ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ запросов для сниТСния ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ²

Π‘Π½ΠΈΠΆΠ΅Π½ΠΈΠ΅ частоты ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ зависит ΠΎΡ‚ качСства написания запросов ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ запрос выполняСтся быстрСС, Π° Π·Π½Π°Ρ‡ΠΈΡ‚, ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ мСньшСС врСмя. ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ здСсь являСтся использованиС индСксов ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠ° условий ΠΎΡ‚Π±ΠΎΡ€Π°.

Если запрос Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ индСкс, Π‘Π£Π‘Π” выполняСт ΠΏΠΎΠ»Π½ΠΎΠ΅ сканированиС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ (Table Scan). Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ строгой изоляции это ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅ всСй Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π΄Π°ΠΆΠ΅ Ссли измСняСтся всСго ΠΎΠ΄Π½Π° строка. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π°Π½Π°Π»ΠΈΠ· ΠΏΠ»Π°Π½ΠΎΠ² выполнСния запросов являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ этапом ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ конструктор запросов ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΈΠ· ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ прСдприятия, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ "тяТСлыС" запросы. ΠžΠ±Ρ€Π°Ρ‰Π°ΠΉΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π°warn-сообщСния ΠΎ отсутствии индСксов. Иногда Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ составного индСкса ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ запроса Π² дСсятки Ρ€Π°Π· ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡƒΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ.

Π’Π°ΠΊΠΆΠ΅ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌ АвтоблокировкаДанных с ΠΎΡΡ‚ΠΎΡ€ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях явноС ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°Π”Π°Π½Π½Ρ‹Ρ… Π΄Π°Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ прСдсказуСмый Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, Ρ‡Π΅ΠΌ автоматичСский ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ большС Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Π΅ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ.

πŸ’‘

Π“Π»Π°Π²Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ: Ρ‡Π΅ΠΌ мСньшС Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ запрос ΠΈ Ρ‡Π΅ΠΌ Ρ‚ΠΎΡ‡Π½Π΅Π΅ условия ΠΎΡ‚Π±ΠΎΡ€Π°, Ρ‚Π΅ΠΌ мСньшС рСсурсов блокируСтся ΠΈ Ρ‚Π΅ΠΌ Π²Ρ‹ΡˆΠ΅ общая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ систСмы Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрном Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с соСдинСниями ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ сущСствСнно различаСтся Π² зависимости ΠΎΡ‚ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° запуска 1Π‘. Π’ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… прСдставляСт собой Π΅Π΄ΠΈΠ½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» (ΠΈΠ»ΠΈ Π½Π°Π±ΠΎΡ€ Ρ„Π°ΠΉΠ»ΠΎΠ²), ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ².

Π—Π΄Π΅ΡΡŒ понятиС "ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ соСдинСния" носит Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€: Ссли ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Π» Π±Π°Π·Ρƒ Π² монопольном Ρ€Π΅ΠΆΠΈΠΌΠ΅, Ρ„Π°ΠΉΠ» блокируСтся ОБ, ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ физичСски Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊ Π½Π΅ΠΌΡƒ доступ Π΄ΠΎ закрытия Ρ„Π°ΠΉΠ»Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ. Π­Ρ‚ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ ΠΈ Π΄Π΅Π»Π°Π΅Ρ‚ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π΅ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹ΠΌ для интСнсивной ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ТСсткими трСбованиями ΠΊ цСлостности.

Π’ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрном Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ (SQL) всС ΠΈΠ½Π°Ρ‡Π΅. Π‘Π΅Ρ€Π²Π΅Ρ€ 1Π‘ выступаСт посрСдником ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΈ Π‘Π£Π‘Π”. Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π΄Π²ΠΈΠΆΠΊΠΎΠΌ Π‘Π£Π‘Π” (PostgreSQL, MS SQL, Oracle) ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ гранулярными. Π—Π΄Π΅ΡΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ мноТСства Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ уровнями изоляции Π±Π΅Π· ΠΏΠΎΠ»Π½ΠΎΠΉ остановки систСмы.

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ с Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Π½Π° SQL часто Π²Ρ‹ΡΠ²Π»ΡΡŽΡ‚ΡΡ ошибки Π² ΠΊΠΎΠ΄Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π½Π΅Π΅ Π½Π΅ ΠΏΡ€ΠΎΡΠ²Π»ΡΠ»ΠΈΡΡŒ явно, Π½ΠΎ создавали скрытыС ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ Π½Π° запись. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΡ€ΠΈ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ проводится Π°ΡƒΠ΄ΠΈΡ‚ ΠΊΠΎΠ΄Π° Π½Π° ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с транзакциями ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ ΠΈ Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ названия ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² консоли администрирования ΠΈΠ»ΠΈ мСню ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² зависимости ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ (8.3, 8.4 ΠΈ Ρ‚.Π΄.). ВсСгда ΡΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ΡΡŒ с ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ для вашСй ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ вСрсии Ρ€Π΅Π»ΠΈΠ·Π° ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ критичСских настроСк кластСра.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли Π±Π°Π·Π° зависла Π² монопольном Ρ€Π΅ΠΆΠΈΠΌΠ΅?

НСобходимо Π·Π°ΠΉΡ‚ΠΈ Π½Π° сСрвСр 1Π‘ Ρ‡Π΅Ρ€Π΅Π· консоль администрирования (mmc), Π½Π°ΠΉΡ‚ΠΈ зависший процСсс Π² спискС Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… сСансов ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ. Если это Π½Π΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ пСрСзапуск слуТбы сСрвСра 1Π‘, Π½ΠΎ это ΠΏΡ€Π΅Ρ€Π²Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

МоТно Π»ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ?

НСт, Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠΌ обСспСчСния цСлостности Π΄Π°Π½Π½Ρ‹Ρ… Π² рСляционных Π±Π°Π·Π°Ρ…. ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈΡ… ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΏΠΎΡ€Ρ‡Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. МоТно лишь ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ изоляции Π½Π° Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΈΠΉ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Read Uncommitted), Π½ΠΎ это допускаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ², Π³Π΄Π΅ допустима нСбольшая Π½Π΅Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ.

Как ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΡ‚ΠΎ Π΄Π΅Ρ€ΠΆΠΈΡ‚ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΡƒ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚?

Π’ Ρ‚ΠΈΠΏΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Ρ‡Π΅Ρ‚ "Анализ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ" ΠΈΠ»ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ· состава ИВБ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ"). Π’ SQL ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ запрос ΠΊ систСмным Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π‘Π£Π‘Π”.

ВлияСт Π»ΠΈ вСрсия ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ?

Π”Π°, с Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ Π½ΠΎΠ²Ρ‹Ρ… вСрсий ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ взаимодСйствия с Π‘Π£Π‘Π”. НапримСр, Π² Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Ρ‹Ρ… вСрсиях ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° с управляСмыми Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ ΠΈ сниТСн риск Π»ΠΎΠΆΠ½Ρ‹Ρ… Π²Π·Π°ΠΈΠΌΠΎΠ±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… сцСнариях.