ΠΠ°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅ ΡΠ°ΡΡΠΎ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . Π‘ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΡΠ΅Π½ΠΈΡ/Π·Π°ΠΏΠΈΡΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΎΡΡΠ΅ΡΡ ΡΠΎΡΠΌΠΈΡΡΡΡΡΡ Π΄ΠΎΠ»ΡΡΠ΅, Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ "ΠΏΠΎΠ΄Π²ΠΈΡΠ°Π΅Ρ" ΠΏΡΠΈ ΠΏΡΠΎΡΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΡ . ΠΡΠΈΡΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² β ΡΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡ 1Π‘ ΠΏΡΠΎΠ²ΠΎΠ΄ΡΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎ. ΠΠΎ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ, ΡΡΠΎΠ±Ρ Π½Π΅ Π½Π°Π²ΡΠ΅Π΄ΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΠ΅?
ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΎΡΠ½ΠΎ ΠΏΡΡΠ°ΡΡ ΠΎΡΠΈΡΡΠΊΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Ρ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ Π΄Π΅ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΡΠΎ ΡΠ°Π·Π½ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ: ΠΎΡΠΈΡΡΠΊΠ° ΡΠ΄Π°Π»ΡΠ΅Ρ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠ΅ Π·Π°ΠΏΠΈΡΠΈ ΠΈΠ· ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡ, Π° ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅Ρ ΡΡΡΡΠΊΡΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ, ΠΊΠΎΠ³Π΄Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΡΠΈΡΡΠΊΠ°, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π΅ΡΡΡ Π² Π°ΡΡΠ΅Π½Π°Π»Π΅ 1Π‘, ΠΈ ΠΊΠ°ΠΊ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΠΈΠΏΠΈΡΠ½ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ MS SQL Server, PostgreSQL ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ.
ΠΠ΅ΡΠ΅Π΄ Π½Π°ΡΠ°Π»ΠΎΠΌ Π»ΡΠ±ΡΡ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΉ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΡΠΈΠ±ΠΊΠΈ ΠΏΡΠΈ ΠΎΡΠΈΡΡΠΊΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΡΠΎΡΡΠΎΡΠΌ ΡΠΈΡΡΠ΅ΠΌΡ. Π’Π°ΠΊΠΆΠ΅ ΡΡΡΠΈΡΠ΅, ΡΡΠΎ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΡΡΠ΅Π±ΡΠ΅Ρ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π±Π°Π·Π΅ β Π²ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΎΡΠΊΠ»ΡΡΠ΅Π½Ρ.
ΠΠΎΠ³Π΄Π° Π½ΡΠΆΠ½Π° ΠΎΡΠΈΡΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² 1Π‘
ΠΠ΅ Π²ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΡΠ΅ΡΠ°ΡΡΡΡ ΠΎΡΠΈΡΡΠΊΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ². ΠΡΠ° ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° Π°ΠΊΡΡΠ°Π»ΡΠ½Π° Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΡΠ»ΡΡΠ°ΡΡ :
- π ΠΠ°ΠΌΠ΅ΡΠ½ΠΎΠ΅ Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΡΠ΅Π½ΠΈΡ (ΠΎΡΡΠ΅ΡΡ, Π²ΡΠ±ΠΎΡΠΊΠΈ, ΠΎΡΠΊΡΡΡΠΈΠ΅ ΡΠΎΡΠΌ) ΠΏΡΠΈ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠ΅ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ. ΠΡΠΎΠ±Π΅Π½Π½ΠΎ Π΅ΡΠ»ΠΈ ΡΠ°Π½Π΅Π΅ Π²ΡΡ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ Π±ΡΡΡΡΠ΅Π΅.
- ποΈ ΠΠ»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π°Π·Ρ (Π±ΠΎΠ»Π΅Π΅ 1-2 Π»Π΅Ρ) Π±Π΅Π· ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ. ΠΠ½Π΄Π΅ΠΊΡΡ Π½Π°ΠΊΠ°ΠΏΠ»ΠΈΠ²Π°ΡΡ "ΠΌΡΡΠΎΡΠ½ΡΠ΅" Π·Π°ΠΏΠΈΡΠΈ ΠΎΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ².
- π Π§Π°ΡΡΡΠ΅ ΠΌΠ°ΡΡΠΎΠ²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ: Π·Π°Π³ΡΡΠ·ΠΊΠ° Π΄Π°Π½Π½ΡΡ , Π³ΡΡΠΏΠΏΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΠ²ΠΈΠ·ΠΈΡΠΎΠ², ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ².
- π οΈ ΠΠΎΡΠ»Π΅ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ 1Π‘ ΠΈΠ»ΠΈ Π‘Π£ΠΠ, ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠ³Π»ΠΈ ΠΎΡΡΠ°ΡΡΡΡ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡΠ°Ρ .
ΠΡΠΈΡΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π½Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π²:
- π₯οΈ ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΡ ΡΠ΅ΡΡΡΡΠ°Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° (CPU, RAM, Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ).
- π ΠΠ΅ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ Π·Π°ΠΏΡΠΎΡΠ°Ρ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΠ±ΠΎΡΠΊΠ° Π²ΡΠ΅Ρ ΡΡΡΠΎΠΊ Π±Π΅Π· ΡΠΈΠ»ΡΡΡΠΎΠ²).
- π ΠΡΠΎΠ±Π»Π΅ΠΌΠ°Ρ Ρ ΡΠ΅ΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ 1Π‘.
Π§ΡΠΎΠ±Ρ ΡΠΎΡΠ½ΠΎ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΠΎΡΠΈΡΡΠΊΠΈ, ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² Π²Π°ΡΠ΅ΠΉ Π‘Π£ΠΠ. Π MS SQL Server Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π·Π°ΠΏΡΠΎΡ:
SELECT
OBJECT_NAME(ind.OBJECT_ID) AS TableName,
ind.name AS IndexName,
indexstats.avg_fragmentation_in_percent
FROM
sys.dm_db_index_physical_stats(DB_ID(), NULL, NULL, NULL, 'LIMITED') indexstats
INNER JOIN
sys.indexes ind ON ind.object_id = indexstats.object_id AND ind.index_id = indexstats.index_id
WHERE
indexstats.avg_fragmentation_in_percent > 30
ORDER BY
indexstats.avg_fragmentation_in_percent DESC;
ΠΡΠ»ΠΈ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΡΠ΅Π²ΡΡΠ°Π΅Ρ 30-40%, ΠΏΠΎΡΠ° Π·Π°Π΄ΡΠΌΠ°ΡΡΡΡ ΠΎΠ± ΠΎΡΠΈΡΡΠΊΠ΅ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
ΠΠ΅ΡΠΎΠ΄Ρ ΠΎΡΠΈΡΡΠΊΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² 1Π‘ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ Π‘Π£ΠΠ
Π‘ΠΏΠΎΡΠΎΠ± ΠΎΡΠΈΡΡΠΊΠΈ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΈΠΏΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ:
1. ΠΡΠΈΡΡΠΊΠ° Π² ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ 1Π‘
ΠΠ»Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ
Π±Π°Π· (.1CD) ΠΏΡΠΎΡΠ΅ΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡ, Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ:
- πΉ ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ Π±Π°Π·Ρ (
chdbfl.exe). - πΉ ΠΠ΅ ΡΡΠ΅Π±ΡΠ΅Ρ ΡΡΡΠ½ΠΎΠ³ΠΎ Π²ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΡΡΠ²Π° Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π².
- πΉ ΠΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠΎΠ½ΠΊΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΎΡΠΈΡΡΠΊΠΈ.
Π§ΡΠΎΠ±Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ:
- ΠΠ°ΠΊΡΠΎΠΉΡΠ΅ Π²ΡΠ΅ ΡΠ΅Π°Π½ΡΡ 1Π‘, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ Ρ Π±Π°Π·ΠΎΠΉ.
- ΠΡΠΊΡΠΎΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ ΠΎΡ ΠΈΠΌΠ΅Π½ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°.
- ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
"C:\Program Files\1cv8\8.3.x.xxx\bin\chdbfl.exe" -F "ΠΡΡΡ_ΠΊ_ΡΠ°ΠΉΠ»Ρ.1CD" -TestAndRepair
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΠ»Ρ Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ Π±Π°Π· (Π±ΠΎΠ»Π΅Π΅ 10 ΠΠ) ΠΏΡΠΎΡΠ΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΠΎΠ². ΠΠ΅ ΠΏΡΠ΅ΡΡΠ²Π°ΠΉΡΠ΅ Π΅Π³ΠΎ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ β ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ .
2. ΠΡΠΈΡΡΠΊΠ° Π² MS SQL Server
ΠΠ»Ρ MS SQL ΠΎΡΠΈΡΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ°. Π‘Π°ΠΌΡΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ»Π°Π½ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ (Maintenance Plan):
- π§ Π‘ΠΆΠ°ΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² (
REORGANIZE) β ΠΌΡΠ³ΠΊΠ°Ρ ΠΎΡΠΈΡΡΠΊΠ° Π±Π΅Π· Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΡΠ°Π±Π»ΠΈΡ. - π ΠΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² (
REBUILD) β ΠΏΠΎΠ»Π½Π°Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΡΡΡΡΠΊΡΡΡΡ (ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ ΡΠ΅ΡΡΡΡΠΎΠ²). - ποΈ ΠΡΠΈΡΡΠΊΠ° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ β ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡΠ° Π·Π°ΠΏΡΠΎΡΠΎΠ².
ΠΡΠΈΠΌΠ΅Ρ ΡΠΊΡΠΈΠΏΡΠ° Π΄Π»Ρ ΠΎΡΠΈΡΡΠΊΠΈ Π²ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π±Π°Π·Ρ 1Π‘:
USE [ΠΠ°ΡΠ°ΠΠ°Π·Π°1Π‘];
GO
-- Π‘Π½Π°ΡΠ°Π»Π° ΠΏΡΡΠ°Π΅ΠΌΡΡ ΡΠ΅ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ 10-30%
DECLARE @Database VARCHAR(255)
DECLARE @Table VARCHAR(255)
DECLARE @cmd NVARCHAR(500)
DECLARE @fillfactor INT
SET @fillfactor = 80 -- ΠΡΠΎΡΠ΅Π½Ρ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΈΡ
DECLARE DatabaseCursor CURSOR FOR
SELECT name FROM sys.databases WHERE name = DB_NAME()
OPEN DatabaseCursor
FETCH NEXT FROM DatabaseCursor INTO @Database
WHILE @@FETCH_STATUS = 0
BEGIN
DECLARE TableCursor CURSOR FOR
SELECT TABLE_SCHEMA + '.' + TABLE_NAME AS TableName
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE'
OPEN TableCursor
FETCH NEXT FROM TableCursor INTO @Table
WHILE @@FETCH_STATUS = 0
BEGIN
SET @cmd = 'ALTER INDEX ALL ON ' + @Table + ' REORGANIZE'
BEGIN TRY
EXEC sp_executesql @cmd
END TRY
BEGIN CATCH
-- ΠΡΠ»ΠΈ ΡΠ΅ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ Π½Π΅ ΠΏΠΎΠΌΠΎΠ³Π»Π°, ΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠΈΡΡ
SET @cmd = 'ALTER INDEX ALL ON ' + @Table + ' REBUILD WITH (FILLFACTOR = ' + CONVERT(VARCHAR(3), @fillfactor) + ')'
EXEC sp_executesql @cmd
END CATCH
FETCH NEXT FROM TableCursor INTO @Table
END
CLOSE TableCursor
DEALLOCATE TableCursor
FETCH NEXT FROM DatabaseCursor INTO @Database
END
CLOSE DatabaseCursor
DEALLOCATE DatabaseCursor
GO
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² (REBUILD) Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ°ΠΏΡΡΠΊΠ°ΠΉΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ Π² ΠΏΠ΅ΡΠΈΠΎΠ΄ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ ΠΈΠ»ΠΈ Π½Π° ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ Π±Π°Π·Ρ.
3. ΠΡΠΈΡΡΠΊΠ° Π² PostgreSQL
ΠΠ»Ρ PostgreSQL ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΎΡΠΈΡΡΠΊΠΈ β ΠΊΠΎΠΌΠ°Π½Π΄Π° VACUUM. Π ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ 1Π‘ ΠΎΠ½Π° ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΈ Π½ΡΠ°Π½ΡΡ:
- π§Ή
VACUUMβ ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ ΠΎΡΠΈΡΡΠΊΠ° (Π½Π΅ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΡ). - π§Ή
VACUUM FULLβ Π³Π»ΡΠ±ΠΎΠΊΠ°Ρ ΠΎΡΠΈΡΡΠΊΠ° Ρ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΡΡ ΡΠ°Π±Π»ΠΈΡ (Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΡ). - π
VACUUM ANALYZEβ ΠΎΡΠΈΡΡΠΊΠ° + ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡΠ°.
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π»Ρ Π±Π°Π·Ρ 1Π‘:
-- ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ΡΡ ΠΊ Π±Π°Π·Π΅ ΡΠ΅ΡΠ΅Π· psql ΠΈΠ»ΠΈ pgAdmin
VACUUM (VERBOSE, ANALYZE);
ΠΠ»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΎΡΠΈΡΡΠΊΠΈ Π½Π°ΡΡΡΠΎΠΉΡΠ΅ autovacuum Π² postgresql.conf:
autovacuum = on
autovacuum_vacuum_threshold = 50 -- ΠΏΠΎΡΠΎΠ³ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΡ
autovacuum_analyze_threshold = 50
autovacuum_vacuum_scale_factor = 0.2
autovacuum_analyze_scale_factor = 0.1
Π‘ΠΎΠ·Π΄Π°ΡΡ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΡ Π±Π°Π·Ρ|ΠΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π½Π° Π΄ΠΈΡΠΊΠ΅ (ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ~20% ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π±Π°Π·Ρ)|ΠΡΠΊΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΎΡ Π±Π°Π·Ρ|ΠΠ°ΠΏΡΡΡΠΈΡΡ VACUUM Π² ΠΏΠ΅ΡΠΈΠΎΠ΄ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ-->
ΠΡΠΈΡΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΠΎΠ»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ 1Π‘
Π ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ 1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅ 8.3 ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ. ΠΠ½ΠΈ ΠΌΠ΅Π½Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠ΅, ΡΠ΅ΠΌ ΠΏΡΡΠΌΡΠ΅ SQL-Π·Π°ΠΏΡΠΎΡΡ, Π½ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π΅Π΅ Π΄Π»Ρ Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ².
Π§ΡΠΎΠ±Ρ ΠΎΡΠΈΡΡΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΠΎΠ»Ρ:
- ΠΡΠΊΡΠΎΠΉΡΠ΅ ΠΠΎΠ½ΡΠΎΠ»Ρ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² 1Π‘ (
rac.exe). - ΠΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΠ΅ΡΡ ΠΊ ΠΊΠ»Π°ΡΡΠ΅ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ².
- ΠΡΠ±Π΅ΡΠΈΡΠ΅ Π½ΡΠΆΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π·Ρ ΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΡΠ°Π·Π΄Π΅Π»
ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. - Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ»Π°Π³ΠΈ:
- π ΠΡΠΎΠ²Π΅ΡΡΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΡΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ
- π ΠΡΠΎΠ²Π΅ΡΡΡΡ ΡΡΡΠ»ΠΎΡΠ½ΡΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ
- π Π Π΅ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π±Π»ΠΈΡΡ (ΡΡΠΎ ΠΈ Π΅ΡΡΡ ΠΎΡΠΈΡΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²)
- π ΠΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΏΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ° (Π΅ΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅)
- ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ
ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ. - β ΠΠ΅ ΡΡΠ΅Π±ΡΠ΅Ρ Π·Π½Π°Π½ΠΈΡ SQL.
- β ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΡΡΡΠΊΡΡΡΡ Π±Π°Π·Ρ 1Π‘.
- β ΠΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π±Π΅Π· ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ (Π½ΠΎ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ).
- β ΠΠ΅Π½Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ, ΡΠ΅ΠΌ ΡΡΡΠ½ΡΠ΅ SQL-Π·Π°ΠΏΡΠΎΡΡ.
- β ΠΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π΄Π΅ΡΠ°Π»ΡΠ½ΡΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
- β ΠΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π΄ΠΎΠ»ΡΡΠ΅ Π½Π° Π±ΠΎΠ»ΡΡΠΈΡ Π±Π°Π·Π°Ρ .
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΡΡΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°:
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ:
ΠΡΠ»ΠΈ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΎΠΏΡΠΈΡ "Π Π΅ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π±Π»ΠΈΡΡ", ΠΎΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ 1Π‘ Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 8.3.18 ΠΈΠ»ΠΈ Π½ΠΎΠ²Π΅Π΅.
Π’ΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΡΠΈ ΠΎΡΠΈΡΡΠΊΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈ ΠΊΠ°ΠΊ ΠΈΡ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ
ΠΠ°ΠΆΠ΅ ΠΎΠΏΡΡΠ½ΡΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡ ΠΈΠ½ΠΎΠ³Π΄Π° Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ ΡΠ±ΠΎΡΠΌ ΠΈΠ»ΠΈ ΠΏΠΎΡΠ΅ΡΠ΅ Π΄Π°Π½Π½ΡΡ . ΠΠΎΡ ΡΠ°ΠΌΡΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠ΅:
- ΠΡΠΈΡΡΠΊΠ° Π±Π΅Π· ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ
ΠΠ΅ΡΠ΅Π΄ Π»ΡΠ±ΠΎΠΉ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠ΅ΠΉ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π±ΡΠΊΠ°ΠΏ Π±Π°Π·Ρ. Π ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ»
.1CD, Π΄Π»Ρ SQL-Π±Π°Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. - ΠΠ°ΠΏΡΡΠΊ Π² ΡΠ°Π±ΠΎΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ
ΠΡΠΈΡΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² β ΡΠ΅ΡΡΡΡΠΎΠ΅ΠΌΠΊΠ°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ. ΠΠ° Π±ΠΎΠ»ΡΡΠΈΡ Π±Π°Π·Π°Ρ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π±Π»ΠΈΡΡ Π½Π° ΡΠ°ΡΡ, ΡΡΠΎ ΠΏΠ°ΡΠ°Π»ΠΈΠ·ΡΠ΅Ρ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. ΠΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ β Π½ΠΎΡΡΡ ΠΈΠ»ΠΈ Π² Π²ΡΡ ΠΎΠ΄Π½ΡΠ΅.
- ΠΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
ΠΠ΅ Π²ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π½ΡΠΆΠ΄Π°ΡΡΡΡ Π² ΠΎΡΠΈΡΡΠΊΠ΅. ΠΡΠ»ΠΈ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΌΠ΅Π½Π΅Π΅ 10%, ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ° ΠΏΡΠΈΠ½Π΅ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅Π΄Π°, ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·Ρ (Π»ΠΈΡΠ½ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΠ° Π½Π° Π΄ΠΈΡΠΊ). ΠΡΠΎΠ²Π΅ΡΡΠΉΡΠ΅ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΠΏΠ΅ΡΠ΅Π΄ Π½Π°ΡΠ°Π»ΠΎΠΌ.
- ΠΡΠ΅ΡΡΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠ°
ΠΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΠΎΡΠΈΡΡΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ΡΠ΅Π· ΠΠΈΡΠΏΠ΅ΡΡΠ΅Ρ Π·Π°Π΄Π°Ρ) ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π² Π½Π΅ΠΊΠΎΠ½ΡΠΈΡΡΠ΅Π½ΡΠ½ΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ. ΠΡΠ»ΠΈ ΠΏΡΠΎΡΠ΅ΡΡ Π·Π°Π²ΠΈΡ, Π΄ΠΎΠΆΠ΄ΠΈΡΠ΅ΡΡ Π΅Π³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ΅ΡΠ²Π΅Ρ Π‘Π£ΠΠ.
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΠΎΡΠ»Π΅ ΠΎΡΠΈΡΡΠΊΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² MS SQL Server ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ°ΠΉΠ»Π° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΡΠΎ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ β ΡΠ΅ΡΠ²Π΅Ρ ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΡΠ΅Ρ ΠΌΠ΅ΡΡΠΎ Π΄Π»Ρ Π±ΡΠ΄ΡΡΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ. Π§Π΅ΡΠ΅Π· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π½Π΅ΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΠ°Π±ΠΈΠ»ΠΈΠ·ΠΈΡΡΠ΅ΡΡΡ.
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΠΎΡΠΈΡΡΠΊΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²
Π ΡΡΠ½Π°Ρ ΠΎΡΠΈΡΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² β ΡΡΡΠ΄ΠΎΠ΅ΠΌΠΊΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±Π°Π· 1Π‘. Π ΡΡΠ°ΡΡΡΡ, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ.
1. ΠΠ»Π°Π½Ρ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ Π² MS SQL Server
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Maintenance Plan Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ ΡΠ°Π³Π°ΠΌΠΈ:
- ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π±Π°Π·Ρ (
CHECKDB). - ΠΡΠΈΡΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² (
REORGANIZEΠΈΠ»ΠΈREBUILD). - ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ.
- ΠΡΠΈΡΡΠΊΠ° ΠΆΡΡΠ½Π°Π»Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ (Π΅ΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ
FULL).
ΠΠ°ΡΡΡΠΎΠΉΡΠ΅ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π½Π° Π΅ΠΆΠ΅Π½Π΅Π΄Π΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π² Π½Π΅ΡΠ°Π±ΠΎΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ.
2. Π‘ΠΊΡΠΈΠΏΡΡ Π΄Π»Ρ PostgreSQL
ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π² cron Π·Π°Π΄Π°ΡΡ Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ° VACUUM:
0 3 0 /usr/bin/vacuumdb --dbname=ΠΠ°ΡΠ°ΠΠ°Π·Π°1Π‘ --analyze --quiet
ΠΠ»Ρ Π³Π»ΡΠ±ΠΎΠΊΠΎΠΉ ΠΎΡΠΈΡΡΠΊΠΈ ΡΠ°Π· Π² ΠΌΠ΅ΡΡΡ:
0 4 1 /usr/bin/vacuumdb --dbname=ΠΠ°ΡΠ°ΠΠ°Π·Π°1Π‘ --full --analyze --quiet
3. ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ 1Π‘
Π ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅Π³Π»Π°ΠΌΠ΅Π½ΡΠ½ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π±Π°Π·Ρ ΠΏΠΎ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΡ:
- ΠΡΠΊΡΠΎΠΉΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΎΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅
1Π‘:ΠΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅. - ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π²
ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β Π Π΅Π³Π»Π°ΠΌΠ΅Π½ΡΠ½ΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ. - Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ Ρ ΡΠΈΠΏΠΎΠΌ
Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉΠΠ°Π·Ρ. - ΠΠ°ΡΡΡΠΎΠΉΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ (Π²ΠΊΠ»ΡΡΠΈΡΠ΅ ΡΠ΅ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΈΡ) ΠΈ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΠ΅.
| ΠΠ΅ΡΠΎΠ΄ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ | ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° | ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ | Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ |
|---|---|---|---|
| ΠΠ»Π°Π½Ρ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ MS SQL | ΠΠΈΠ±ΠΊΠ°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°, ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Agent | Π’ΡΠ΅Π±ΡΠ΅Ρ ΠΏΡΠ°Π² sysadmin | ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΊΡΡΠΏΠ½ΡΡ Π±Π°Π· |
| Cron-Π·Π°Π΄Π°ΡΠΈ (PostgreSQL) | ΠΡΠΎΡΡΠΎΡΠ° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΠΎΡΡΡ | ΠΠ΅Ρ Π΄Π΅ΡΠ°Π»ΡΠ½ΡΡ Π»ΠΎΠ³ΠΎΠ² | ΠΠΎΠ±Π°Π²ΠΈΡΡ Π²ΡΠ²ΠΎΠ΄ Π»ΠΎΠ³ΠΎΠ² Π² ΡΠ°ΠΉΠ» |
| Π Π΅Π³Π»Π°ΠΌΠ΅Π½ΡΠ½ΡΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ 1Π‘ | ΠΠ΅ ΡΡΠ΅Π±ΡΠ΅Ρ Π·Π½Π°Π½ΠΈΡ SQL, ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΈΠ· 1Π‘ | ΠΠ΅Π½ΡΡΠ΅ ΠΎΠΏΡΠΈΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ | ΠΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ Π±Π°Π· |
Π§ΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ ΠΎΡΠΈΡΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π½Π΅ ΠΏΠΎΠΌΠΎΠ³Π»Π°
ΠΡΠ»ΠΈ ΠΏΠΎΡΠ»Π΅ ΠΎΡΠΈΡΡΠΊΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π½Π΅ ΡΠ»ΡΡΡΠΈΠ»Π°ΡΡ, ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ:
- π ΠΠ½Π°Π»ΠΈΠ· ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΡ
Π·Π°ΠΏΡΠΎΡΠΎΠ²: ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ SQL Server Profiler ΠΈΠ»ΠΈ
pg_stat_statementsΠ² PostgreSQL, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ "ΡΠ·ΠΊΠΈΠ΅ ΠΌΠ΅ΡΡΠ°". - π₯οΈ Π Π΅ΡΡΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ°: ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ Π·Π°Π³ΡΡΠ·ΠΊΡ CPU, RAM ΠΈ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π°ΠΏΠ³ΡΠ΅ΠΉΠ΄ "ΠΆΠ΅Π»Π΅Π·Π°".
- π Π‘ΡΠ°ΡΠΈΡΡΠΈΠΊΠ° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ: Π 1Π‘ Π²ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΆΡΡΠ½Π°Π» ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ Ρ ΡΡΠΎΠ²Π½Π΅ΠΌ Π΄Π΅ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠΈ ΠΏΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠΉΡΠ΅ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ. - π§ ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ 1Π‘: ΠΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ ΠΈ ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π²Π΅ΡΡΠΈΠΉ β Π² Π½ΠΈΡ ΡΠ°ΡΡΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΡΡΡΡ Π·Π°ΠΏΡΠΎΡΡ.
ΠΡΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ Π·Π°ΠΏΡΠΎΡΠ°Ρ , ΡΠ°ΡΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ:
- π οΈ ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΏΠΎΠ»Π΅ΠΉ.
- π ΠΠ΅ΡΠ΅ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°ΠΌΠ΅Π½ΠΈΡΠ΅
ΠΠΠΠΠΠΠΠ½Π° ΠΏΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΠΏΠΎΠΈΡΠΊ). - ποΈ ΠΡΠΈΡΡΠΈΡΠ΅ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅: Π°ΡΡ ΠΈΠ²ΠΈΡΡΠΉΡΠ΅ ΠΈΠ»ΠΈ ΡΠ΄Π°Π»ΡΠΉΡΠ΅ Π½Π΅Π½ΡΠΆΠ½ΡΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ.
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΠ΅ΡΠ΅Π΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ²ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΏΡΠΎΠΊΠΎΠ½ΡΡΠ»ΡΡΠΈΡΡΠΉΡΠ΅ΡΡ Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ 1Π‘. ΠΠ΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΌΠΎΠ³ΡΡ ΡΡ ΡΠ΄ΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΡΠΈ ΠΌΠ°ΡΡΠΎΠ²ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡ Π·Π°ΠΏΠΈΡΠΈ.
ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ Π² 1Π‘?
ΠΠΊΠ»ΡΡΠΈΡΠ΅ ΠΆΡΡΠ½Π°Π» ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ Ρ ΡΡΠΎΠ²Π½Π΅ΠΌ Π΄Π΅ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ "ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎ" ΠΈ ΡΠΈΠ»ΡΡΡΠΎΠΌ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, >1000 ΠΌΡ). ΠΠΎΡΠ»Π΅ ΡΠ±ΠΎΡΠ° Π΄Π°Π½Π½ΡΡ ΠΎΡΡΠΎΡΡΠΈΡΡΠΉΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ ΠΏΠΎ ΡΠ±ΡΠ²Π°Π½ΠΈΡ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΡΠΎΠ±ΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠ΄Π΅Π»ΠΈΡΠ΅ Π·Π°ΠΏΡΠΎΡΠ°ΠΌ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ IN, LIKE ΠΈ ΠΏΠΎΠ΄Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ.
FAQ: Π§Π°ΡΡΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΏΠΎ ΠΎΡΠΈΡΡΠΊΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² 1Π‘
ΠΠ°ΠΊ ΡΠ°ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΠΎΡΠΈΡΠ°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π² 1Π‘?
Π§Π°ΡΡΠΎΡΠ° Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π±Π°Π·Ρ:
- π Π€Π°ΠΉΠ»ΠΎΠ²ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ: 1 ΡΠ°Π· Π² 3-6 ΠΌΠ΅ΡΡΡΠ΅Π².
- π MS SQL/PostgreSQL: 1 ΡΠ°Π· Π² 1-3 ΠΌΠ΅ΡΡΡΠ° (ΠΈΠ»ΠΈ ΠΏΠΎ ΡΠ°ΡΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· ΠΏΠ»Π°Π½Ρ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ).
- π ΠΡΡΠΎΠΊΠΎΠ½Π°Π³ΡΡΠΆΠ΅Π½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ (Π±ΠΎΠ»Π΅Π΅ 100 ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ): Π΅ΠΆΠ΅ΠΌΠ΅ΡΡΡΠ½ΠΎ ΠΈΠ»ΠΈ ΡΠ°ΡΠ΅.
ΠΡΠΈΠ΅Π½ΡΠΈΡΡΠΉΡΠ΅ΡΡ Π½Π° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ β Π΅ΡΠ»ΠΈ ΠΎΠ½Π° ΠΏΡΠ΅Π²ΡΡΠ°Π΅Ρ 30%, ΠΏΠΎΡΠ° ΠΎΡΠΈΡΠ°ΡΡ.
ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΎΡΠΈΡΠ°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π±Π΅Π· ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ?
ΠΠ°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΌΠ΅ΡΠΎΠ΄Π°:
- β
REORGANIZE(MS SQL) β ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ Ρ ΡΠ°Π±ΠΎΡΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. - β
REBUILD(MS SQL) β Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΡ, ΡΡΠ΅Π±ΡΠ΅Ρ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ°. - β
VACUUM(PostgreSQL) β Π½Π΅ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΡ (ΠΊΡΠΎΠΌΠ΅VACUUM FULL). - β Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π² 1Π‘ β ΡΡΠ΅Π±ΡΠ΅Ρ ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΡΠ½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ°.
ΠΠ»Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ REORGANIZE ΠΈΠ»ΠΈ VACUUM Π² Π½Π΅ΠΏΠΈΠΊΠΎΠ²ΡΠ΅ ΡΠ°ΡΡ.
Π§ΡΠΎ Π»ΡΡΡΠ΅: ΠΎΡΠΈΡΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈΠ»ΠΈ ΠΈΡ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅?
ΠΡΠ±ΠΎΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ:
- πΉ ΠΡΠΈΡΡΠΊΠ° (
REORGANIZE/VACUUM) β Π΅ΡΠ»ΠΈ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ 10-30%. ΠΡΠ³ΠΊΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄, Π½Π΅ Π±Π»ΠΎΠΊΠΈΡΡΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΡ. - πΉ ΠΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ (
REBUILD/VACUUM FULL) β Π΅ΡΠ»ΠΈ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ >30%. ΠΠΎΠ»Π½Π°Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ, Π½ΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ ΡΠ΅ΡΡΡΡΠΎΠ².
ΠΠ»Ρ ΠΏΡΠΎΡΠΈΠ»Π°ΠΊΡΠΈΠΊΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΎΡΠΈΡΡΠΊΠΈ. ΠΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΠΉΡΠ΅ ΠΏΡΠΈ ΡΠ΅ΡΡΠ΅Π·Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°Ρ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ.
ΠΠΎΡΠ΅ΠΌΡ ΠΏΠΎΡΠ»Π΅ ΠΎΡΠΈΡΡΠΊΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π±Π°Π·Π° ΡΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅?
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΏΡΠΈΡΠΈΠ½Ρ:
- πΈ ΠΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ°: ΠΠΎΡΠ»Π΅ ΠΎΡΠΈΡΡΠΊΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅
UPDATE STATISTICS(MS SQL) ΠΈΠ»ΠΈANALYZE(PostgreSQL). - πΈ Π‘Π»ΠΈΡΠΊΠΎΠΌ Π²ΡΡΠΎΠΊΠΈΠΉ FILLFACTOR: ΠΡΠ»ΠΈ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠΎΠ΅Π½ΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ
FILLFACTOR=100, ΡΡΡΠ°Π½ΠΈΡΡ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ, ΡΡΠΎ Π·Π°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ Π±ΡΠ΄ΡΡΠΈΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ. - πΈ ΠΠ΅Ρ Π²Π°ΡΠΊΠ° ΡΠ΅ΡΡΡΡΠΎΠ²: ΠΡΠΈΡΡΠΊΠ° ΠΌΠΎΠ³Π»Π° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π΄ΠΈΡΠΊ, ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ Π‘Π£ΠΠ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ ΠΏΠΎΠ΄ΠΊΠ°ΡΠΊΠΎΠΉ.
ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ ΠΏΠ»Π°Π½Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² β Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ ΡΡΠ°Π» ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ.
ΠΠ°ΠΊ ΠΎΡΠΈΡΡΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π² ΠΎΠ±Π»Π°ΡΠ½ΠΎΠΉ 1Π‘ (1C:Fresh, 1C:Guru)?
Π ΠΎΠ±Π»Π°ΡΠ½ΡΡ ΡΠ΅ΡΠ²ΠΈΡΠ°Ρ ΠΏΡΡΠΌΠΎΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊ Π‘Π£ΠΠ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½. ΠΠ°ΡΠΈΠ°Π½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ:
- πΉ ΠΠ±ΡΠ°ΡΠΈΡΠ΅ΡΡ Π² ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠ° Ρ Π·Π°ΠΏΡΠΎΡΠΎΠΌ Π½Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π±Π°Π·Ρ.
- πΉ ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ:
- Π 1C:Fresh:
ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β ΠΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠ΅ β Π’Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. - Π 1C:Guru: Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠΉ ΡΠ°Π·Π΄Π΅Π» Π² Π»ΠΈΡΠ½ΠΎΠΌ ΠΊΠ°Π±ΠΈΠ½Π΅ΡΠ΅.
- Π 1C:Fresh:
- πΉ ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠΉΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ: ΡΠ΄Π°Π»ΠΈΡΠ΅ Π½Π΅Π½ΡΠΆΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΠΎΡΠ±ΠΎΡΡ Π² ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΎΡΡΠ΅ΡΡ.
ΠΠ±Π»Π°ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ°ΠΌΠΈ ΡΠ»Π΅Π΄ΡΡ Π·Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², Π½ΠΎ ΠΏΡΠΈ ΡΠ²Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°Ρ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΡΡΠΎΠΈΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ.
Π Π΅Π³ΡΠ»ΡΡΠ½Π°Ρ ΠΎΡΠΈΡΡΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² β ΡΡΠΎ Π½Π΅ ΡΠ°Π·ΠΎΠ²Π°Ρ Π°ΠΊΡΠΈΡ, Π° ΡΠ°ΡΡΡ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ 1Π‘. ΠΠΎΠΌΠ±ΠΈΠ½ΠΈΡΡΠΉΡΠ΅ Π΅Ρ Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ, Π΄Π΅ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ Π΄ΠΈΡΠΊΠΎΠ² ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠ΅ΠΉ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π΄Π»Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΡΠ΅ΠΊΡΠ°.