Π Π°Π·Π±ΠΈΡΠ°Π΅ΠΌΡΡ ΡΡΠΎ MySQL ΠΏΠΈΡΠ΅Ρ Π½Π° Π΄ΠΈΡΠΊ ΠΈ Π·Π°ΡΠ΅ΠΌ [ΡΠ°ΡΡΡ 1] / Π₯Π°Π±Ρ
ΠΠ³Π»Π°Π²Π»Π΅Π½ΠΈΠ΅
Double Write buffer ΠΈ Binlogs [ΡΡΠ° ΡΡΠ°ΡΡΡ]
Redo logs ΠΈ ΠΎΠ±ΡΠ°Ρ ΠΊΠ°ΡΡΠΈΠ½Π° [https://habr.com/ru/post/699342/]
Disclaimer: Π°Π²ΡΠΎΡ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ MySQL, Π²ΡΠ΅ Π½ΠΈΠΆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ ΡΠ΅Π°Π»ΡΠ½ΡΠΌ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π΅Π».
Π§Π°ΡΡΡ 0: Π Π°Π·ΠΌΡΡΠ»Π΅Π½ΠΈΡ ΠΎ Ρ ΡΠ°Π½Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΡΡ
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΏΡΠ΅Π΄ΡΡΠ²Π»ΡΡΡ Π²ΡΡΠΎΠΊΠΈΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½ΡΡ : ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΡ (Π½ΠΈΡΠ΅Π³ΠΎ ΠΈΠ· ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π±ΡΠ»ΠΎ Π·Π°ΠΏΠΈΡΠ°Π½ΠΎ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΡΠ΅ΡΡΠ½ΠΎ Π½ΠΈ ΠΏΡΠΈ ΠΊΠ°ΠΊΠΈΡ ΠΎΠ±ΡΡΠΎΡΡΠ΅Π»ΡΡΡΠ²Π°Ρ ), ΠΈ, ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π²ΠΈΠ΄Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠΈ (ΠΠ°ΠΏΠΈΡΡ/Π§ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ OLTP/OLAP). ΠΠΎΡΡΠΈΡΡ ΡΡΠΈΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ ΠΏΡΠΎΡΡΠΎ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ, ΠΊΠ°ΠΊ ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ MySQL.
Π Π°Π·ΠΌΡΡΠ»ΡΡ ΠΎ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , Π»Π΅Π³ΠΊΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ ΡΠ°Π±Π»ΠΈΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΊΠ°ΠΊ HashMap/BinaryTree, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΠΈΠ΅ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ (primary key) Π² ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ. Π’Π°ΠΊΠΎΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ in memory. ΠΠΎ, ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΠΌΡ Π·Π°Ρ ΠΎΡΠΈΠΌ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π½Π° Π΄ΠΈΡΠΊ, ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ Π²ΠΎ Π²Π½Π΅ΡΠ½Π΅ΠΉ ΠΏΠ°ΠΌΡΡΠΈ. ΠΡΠΎΡΡΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ Π½Π°Ρ HashMap Π½Π° Π΄ΠΈΡΠΊ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΏΠ°ΠΌΡΡΡ ΠΈ Π΄ΠΈΡΠΊΠΈ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ°Π·Π½ΡΠ΅: ΡΡΠ΅Π½ΠΈΠ΅/Π·Π°ΠΏΠΈΡΡ Π΄ΠΈΡΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ, latency Π΄ΠΈΡΠΊΠ° Π±ΠΎΠ»ΡΡΠ΅ ΡΠ΅ΠΌ Ρ RAM, Π° Π΅ΡΠ΅ Π½Π΅Π»ΡΠ·Ρ Π±ΡΠ΄Π΅Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΎΠ±ΡΡΠ½ΡΠΌΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ ΠΈ Π°Π»Π»ΠΎΠΊΠ°ΡΠΎΡΠ°ΠΌΠΈ ΠΏΠ°ΠΌΡΡΠΈ β Π²ΡΠ΅ ΡΡΠΎ ΠΏΡΠΈΠ΄Π΅ΡΡΡ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ.
ΠΠΎΡΠ΅ΠΌΡ MMAP Π½Π΅ Π»ΡΡΡΠΈΠΉ Π²ΡΡ ΠΎΠ΄: Are You Sure You Want to Use MMAP in Your Database Management System? https://www.cidrdb.org/cidr2022/papers/p13-crotty.pdf
Π ΡΡΠ°ΡΡΡΡ, Π΄Π°Π²Π½ΠΎ ΡΠΆΠ΅ ΠΏΡΠΈΠ΄ΡΠΌΠ°Π½Ρ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ B+Tree ΠΈ LSM Tree, Π° ΡΠ°ΠΊΠΆΠ΅ Π±Π΅ΡΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΡ Π²Π°ΡΠΈΠ°ΡΠΈΠΉ (ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π² ΠΊΠ½ΠΈΠ³Π΅ βDatabase Internals: A Deep Dive into How Distributed Data Systems Workβ Π·Π° Π°Π²ΡΠΎΡΡΡΠ²ΠΎΠΌ Alex Petrov). InnoDB — ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ MySQL, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²Π°ΡΠΈΠ°ΡΠΈΡ B+Tree. ΠΠ°Π½Π½ΡΠ΅ Ρ ΡΠ°Π½ΡΡΡΡ Π² ΡΡΡΠ°Π½ΠΈΡΠ°Ρ (pages), ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ Ρ Π΄ΠΈΡΠΊΠ° Π² buffer pool ΠΈ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ Π½Π° Π΄ΠΈΡΠΊ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ.
Unix-like ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ°Π·Π½ΡΠ΅ Π³Π°ΡΠ°Π½ΡΠΈΠΈ Π·Π°ΠΏΠΈΡΠΈ ΡΠ°ΠΉΠ»Π°.
Π‘Π°ΠΌΡΠΌ Π±ΡΡΡΡΡΠΌ ΠΈ Π·Π°ΠΎΠ΄Π½ΠΎ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΡΠ½Π°Ρ Π·Π°ΠΏΠΈΡΡ Π² ΡΠ°ΠΉΠ». ΠΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π°ΠΏΠΈΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅ Π² page cache (Π² ΠΏΠ°ΠΌΡΡΡ). Π ΡΠΆΠ΅ Π² ΡΠΎΠ½Π΅ Π·Π°ΠΏΠΈΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅ Π½Π° Π΄ΠΈΡΠΊ.
ΠΡΠ»ΠΈ ΠΏΡΠΈ ΠΎΡΠΊΡΡΡΠΈΠΈ ΡΠ°ΠΉΠ»Π° ΡΠΊΠ°Π·Π°ΡΡ ΡΠ»Π°Π³ O_DIRECT — ΡΠΎ Π·Π°ΠΏΠΈΡΡ Π² ΡΠ°ΠΉΠ» Π±ΡΠ΄Π΅Ρ ΠΈΠ΄ΡΠΈ ΠΌΠΈΠΌΠΎ page cache — ΡΡΠ°Π·Ρ Π²ΠΎ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ Π±ΡΡΠ΅Ρ Π΄ΠΈΡΠΊΠ°. ΠΠΎ ΠΏΡΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ° — ΠΌΡ Π²ΡΠ΅ Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΡΠ΅ΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅.
fsync
βΒ ΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ Π²ΡΠ·ΠΎΠ² Π΄Π»Ρ ΡΠ±ΡΠΎΡΠ° Π΄Π°Π½Π½ΡΡ Π½Π° Π΄ΠΈΡΠΊ. ΠΠ° Linux ΡΠΈΡΡΠ΅ΠΌΠ°Ρfsync
ΠΎΠΆΠΈΠ΄Π°Π΅Ρ Π·Π°ΠΏΠΈΡΠΈ Π½Π° ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΉ Π½ΠΎΡΠΈΡΠ΅Π»Ρ, Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΎ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ Π±ΡΡΠ΅Ρ Π΄ΠΈΡΠΊΠ°. Π€Π°ΠΊΡ Π·Π°ΠΏΠΈΡΠΈ Π½Π° Π΄ΠΈΡΠΊ Π΄Π°Π΅Ρ Π³Π°ΡΠ°Π½ΡΠΈΠΈ ΡΠΎΡ ΡΠ°Π½Π½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ .fdatasync
β ΡΠ°ΠΊ ΠΆΠ΅ ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ Π½Π° Π΄ΠΈΡΠΊ, Π½ΠΎ Π½Π΅ Π΄ΠΎΠΆΠΈΠ΄Π°Π΅ΡΡΡ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΡΠ»ΠΈ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈΡΡ, Π½ΠΎ ΠΈΠ·-Π·Π° ΠΎΡΠΊΠ°Π·ΠΎΠ² Π½Π΅ Π±ΡΠ»ΠΈ Π·Π°ΠΏΠΈΡΠ°Π½Ρ Π½Π° Π΄ΠΈΡΠΊ, ΡΠΎ ΠΏΡΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΡΠ°ΡΡΠ΅, Linux Π½Π΅ ΡΠ·Π½Π°Π΅Ρ ΠΎΠ± ΡΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°ΠΉΠ» Π±ΡΠ» ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ Π² ΡΠ°Π·ΠΌΠ΅ΡΠ΅ ΠΈ ΡΡΠ΄Π° Π±ΡΠ»ΠΈ Π·Π°ΠΏΠΈΡΠ°Π½Ρ Π΄Π°Π½Π½ΡΠ΅) — Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ΄ΡΡ ΠΏΠΎΠ»ΠΎΠΌΠ°Π½Ρ.
Π§Π°ΡΡΡ 1: Double Write Buffer
Π‘ΡΡΠ°Π½ΠΈΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π² InnoDB ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ 16ΠΠ±. Π Π°Π·ΠΌΠ΅Ρ ΡΡΡΠ°Π½ΠΈΡΡ β ΡΡΠΎ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠΈΡΡ. Π‘ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, Π±ΠΎΠ»ΡΡΠΈΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ ΡΠ»ΡΡΡΠ°ΡΡ ΠΏΡΠΎΠΏΠΎΡΡΠΈΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΊ ΡΠ»ΡΠΆΠ΅Π±Π½ΡΠΌ, Ρ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, Π±ΠΎΠ»ΡΡΠΈΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ Π±ΠΠ»ΡΡΠ΅ΠΌΡ write amplification: ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, UPDATE ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° (4 Π±Π°ΠΉΡΠ°) Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠΈ Π²ΡΠ΅ΠΉ ΡΡΡΠ°Π½ΠΈΡΡ (ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡΡ). Π Π°Π·Π½ΡΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΡΡΠ°Π½ΠΈΡ: PostgreSQL ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΠΎ 8ΠΠ±, Π° MySQL ΠΏΠΎ-ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΠΎ 16ΠΠ±, Π½ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈ Π±ΠΎΠ»ΡΡΠΎΠΌ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π²ΡΠ±ΡΠ°ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΎΡ 4ΠΠ± Π΄ΠΎ 64ΠΠ± (innodb_page_size).
Π£ΠΆΠ΅ Π½Π° ΡΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΠΌΡ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π΅ΠΌΡΡ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ Π°ΡΠΎΠΌΠ°ΡΠ½ΠΎΡΡΠΈ Π·Π°ΠΏΠΈΡΠΈ Π΄Π°Π½Π½ΡΡ Π½Π° Π΄ΠΈΡΠΊ: ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Linux-based ΡΠΈΡΡΠ΅ΠΌΡ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΡΡΡ Π°ΡΠΎΠΌΠ°ΡΠ½ΠΎΡΡΡ Π·Π°ΠΏΠΈΡΠΈ Π±Π»ΠΎΠΊΠΎΠ² ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ Π±ΠΎΠ»ΡΡΠ΅ 4ΠΠ±.
ΠΠ΅ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π΄Π΅Π» Ρ Π°ΡΠΎΠΌΠ°ΡΠ½ΠΎΡΡΡΡ Π·Π°ΠΏΠΈΡΠΈ Π½Π° Π΄ΠΈΡΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π½Π° StackOverflow. [ https://stackoverflow.com/a/61832882 ]. Π’Π°ΠΌ ΠΆΠ΅ Π³Π΅ΡΠΎΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΈΡΡΠΎΡΠΈΡ ΠΊΠ°ΠΊ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΡ Google ΠΏΠ°ΡΡΠΈΠ»ΠΈ ΡΠ΄ΡΠΎ, Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ, ΡΡΠΎΠ±Ρ Π°ΡΠΎΠΌΠ°ΡΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ ΠΏΠΎ 16ΠΠ±.
Π§ΡΠΎ Π΄Π΅Π»Π°Π΅Ρ InnoDB, ΡΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΈΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π½Π΅ ΠΏΠΎΠ±ΠΈΠ»ΠΈΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΠΈΡΠΈ? InnoDB ΠΏΠΈΡΠ΅Ρ ΠΈΡ Π΄Π²Π°ΠΆΠ΄Ρ: ΡΠ½Π°ΡΠ°Π»Π° Π² doublewrite buffer, ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠΎΠΌ ΡΡΡΠ°Π½ΠΈΡΡ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π² ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ ΠΈΠΌ ΠΌΠ΅ΡΡΠΎ.
ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° Π½Π°Π·Π²Π°Π½ΠΈΠ΅, ΡΠ°ΠΌ doublewrite buffer Π½Π΅ ΡΠ΄Π²Π°ΠΈΠ²Π°Π΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ IO ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ — ΡΡΡΠ°Π½ΠΈΡΡ Π² doublewrite buffer ΠΏΠΈΡΡΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π²ΡΠ΅Π³ΠΎ ΠΎΠ΄ΠΈΠ½ fsync()
(Π΄Π° ΠΈ ΡΠΎ, Π΅ΡΠ»ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ IO_DIRECT
). ΠΡΠ»ΠΈ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ crash-recovery InnoDB Π½Π°ΠΉΠ΄Π΅Ρ βΠ±ΠΈΡΡΡβ ΡΡΡΠ°Π½ΠΈΡΡ — ΠΎΠ½ ΡΠΌΠΎΠΆΠ΅Ρ Π΄ΠΎΡΡΠ°ΡΡ Π΅Π΅ ΡΠ΅Π»ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΈΠ· doublewrite buffer.
Π ΡΡΠ°ΡΡΡ
Π²Π΅ΡΡΠΈΡΡ
MySQL, doublewrite buffer Π·Π°Π½ΠΈΠΌΠ°Π» ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ 128 ΡΡΡΠ°Π½ΠΈΡ Π² Π½Π°ΡΠ°Π»Π΅ system tablespace (ΡΠ°ΠΉΠ» ibdata1
). ΠΠ°ΠΏΠΈΡΡ Π²Π΅Π»Π°ΡΡ:
Π‘ΡΡΠ°Π½ΠΈΡΡ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ Π² doublewrite buffer Π² ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠΎΠ»ΡΡΠΈΠΌ Π±Π»ΠΎΠΊΠΎΠΌ Π·Π°ΠΏΠΈΡΡΠ²Π°Π»ΠΈΡΡ Π² system tablespace. ΠΡΠ»ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ IO_DIRECT — Π²ΡΠ·ΡΠ²Π°Π»ΡΡ
fsync()
.Π‘ΡΡΠ°Π½ΠΈΡΡ ΠΏΠΈΡΡΡΡΡ Π² Π½ΡΠΆΠ½ΡΠ΅ ΠΌΠ΅ΡΡΠ°, Π΅ΡΠ»ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ IO_DIRECT — Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ
fsync()
.ΠΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, doublewrite buffer ΡΡΠΈΡΠ°Π΅ΡΡΡ ΠΏΡΡΡΡΠΌ ΠΈ Π³ΠΎΡΠΎΠ²ΡΠΌ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ.
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ MySQL 8.0.20, Π°Π»Π³ΠΎΡΠΈΡΠΌ Π±ΡΠ» ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ — ΡΠ΅ΠΏΠ΅ΡΡ doublewrite buffer ΠΏΠΈΡΠ΅ΡΡΡ Π² ΡΠ°Π·Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ°ΠΉΠ» #ib_16384_0.dblwr
). ΠΠΎΠ²ΡΠΉ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π»ΡΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° SSD.
Π§Π°ΡΡΡ 2: Binlogs
MySQL Π±ΡΠ»Π° ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π° ΠΊΠ°ΠΊ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ Π΄Π²ΠΈΠΆΠΊΠ°ΠΌΠΈ (storage engines), ΠΏΠΎΡΡΠΎΠΌΡ MySQL ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π° Π΄Π²Π° ΠΊΡΡΠΏΠ½ΡΡ βΡΠ»ΠΎΡβ — Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ MySQL ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Storage Engine (Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΡΡΠΎ ΠΏΠΎΡΡΠΈ Π²ΡΠ΅Π³Π΄Π° InnoDB, ΡΠ΅ΠΆΠ΅ Memory Engine, Π½ΠΎ ΠΈΠ·ΡΠ΅Π΄ΠΊΠ° Π΅ΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ MyISAM ΠΈ MyRocksDB). ΠΠ·-Π·Π° ΡΡΠΎΠΉ βΠ΄Π²ΡΡ ΡΠ»ΠΎΠΉΠ½ΠΎΡΡΠΈβ Ρ Π½Π°Ρ Π΅ΡΡΡ ΠΈ ΡΠ²Π½ΠΎΠ΅ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡΠ΅ΠΉ — MySQL Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ SQL Π·Π°ΠΏΡΠΎΡΠΎΠ², ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠ΅ΠΉ (ΠΏΠΈΡΠ΅Ρ binlogs), Π° InnoDB ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ΅ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄Π°Π½Π½ΡΡ Π½Π° Π΄ΠΈΡΠΊΠ΅.
ΠΠ»Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π·Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ Π½Π° ΠΌΠ°ΡΡΠ΅ΡΠ΅, MySQL ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Replicated State Machine (RSM)- Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π² binlog, ΠΈ Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ Π½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ. Π Π΅ΠΏΠ»ΠΈΠΊΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΊ ΡΠ²ΠΎΠ΅ΠΌΡ ΡΠ΅ΠΊΡΡΠ΅ΠΌΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ. ΠΡΠ»ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Ρ — ΡΠΎ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π½Π° ΠΌΠ°ΡΡΠ΅ΡΠ΅ ΠΈ Π½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ (ΡΠ΅Π³ΠΎ, ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΠΌΡ ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌ ΠΎΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ). ΠΠ°ΠΊ ΠΏΠΎΠ±ΠΎΡΠ½ΡΠΉ ΡΡΡΠ΅ΠΊΡ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΠ·ΠΌΠ° — ΠΊ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΠΎΠΉ ΠΈΠ· Π±Π΅ΠΊΠ°ΠΏΠ° Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°ΡΡ Π±ΠΈΠ½Π»ΠΎΠ³ΠΈ ΠΈ ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π±Π°Π·Ρ Π½Π° Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ (aka Point-in-Time Recovery).
MySQL ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΈΡΠ°ΡΡ Π² binlog ΠΊΠ°ΠΊ SQL Statements (Statement-based replication), ΡΠ°ΠΊ ΠΈ ΠΏΡΠΎΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ (row-based replication). ΠΠ»Ρ Statment-based replication ΡΠ»ΠΎΠΆΠ½Π΅Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ , Ρ ΡΠ°Π½ΡΡΠΈΡ ΡΡ Π½Π° ΡΠ°Π·Π½ΡΡ Ρ ΠΎΡΡΠ°Ρ .
Binary Log Π² ΡΠΈΡΠΎΠΊΠΎΠΌ ΡΠΌΡΡΠ»Π΅ ΡΠ»ΠΎΠ²Π° — Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Binary Log Events (Π΄Π°Π»Π΅Π΅ βΡΠΎΠ±ΡΡΠΈΡβ). ΠΡΠΈ ΡΠΎΠ±ΡΡΠΈΡ Ρ ΡΠ°Π½ΡΡΡΡ Π² binlog-ΡΠ°ΠΉΠ»Π°Ρ . ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°ΠΉΠ» Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ ΡΠ»ΡΠΆΠ΅Π±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ, ΠΏΠΎΡΠΎΠΌ ΠΈΠ΄ΡΡ ΡΠΎΠ±ΡΡΠΈΡ, ΠΈ Π² ΠΊΠΎΠ½ΡΠ΅ ΠΏΠΈΡΠ΅ΡΡΡ rotate event. ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ, MySQL ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Binlog Index, Π³Π΄Π΅ Ρ ΡΠ°Π½ΠΈΡΡΡ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΠΈΠΌΠ΅ΡΡΠΈΡ ΡΡ Π±ΠΈΠ½Π»ΠΎΠ³ΠΎΠ².
Binlog cache
binlog β ΡΡΠΎ ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΈΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΠ΅Π»ΡΠΌΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ. ΠΠΎΠΊΠ° ΠΎΠ΄Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΠΈΡΠ°Π½Π° ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ, Π½Π΅Π»ΡΠ·Ρ Π½Π°ΡΠΈΠ½Π°ΡΡ ΠΏΠΈΡΠ°ΡΡ Π²ΡΠΎΡΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ. ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΎΠ΄Π½ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π½Π΅ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π»ΠΈ Π·Π°ΠΏΠΈΡΡ Π΄ΡΡΠ³ΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ, Π²ΡΠ΅ binlog events ΠΏΠΈΡΡΡΡΡ ΡΠ½Π°ΡΠ°Π»Π° Π² binlog cache (ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ Π±ΡΡΡΠ΅Ρ Π² ΠΏΠ°ΠΌΡΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠΊΠ°, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠ΅Π³ΠΎ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ) ΠΈ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ ΡΠΆΠ΅ Π½Π° Π΄ΠΈΡΠΊ. Π ΡΠ»ΡΡΠ°Π΅ ΠΎΡΠΊΠ°ΡΠ° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ — binlog cache ΠΎΡΠΈΡΠ°Π΅ΡΡΡ, ΠΊΠ°ΠΊ Π±ΡΠ΄ΡΠΎ Π½ΠΈΡΠ΅Π³ΠΎ ΠΈ Π½Π΅ Π±ΡΠ»ΠΎ Π·Π°ΠΏΠΈΡΠ°Π½ΠΎ Π² Π½Π΅Π³ΠΎ.
Fun Fact: ΠΡΠ»ΠΈ binlog_cache_size Π±ΡΠ»ΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ, MySQL Π½Π°ΡΠ½Π΅Ρ ΡΠ±ΡΠ°ΡΡΠ²Π°ΡΡ ΠΊΡΡ Π½Π° Π΄ΠΈΡΠΊ (Π² Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ ΡΠ΄Π°Π»Π΅Π½ (
unlink
) Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ — Ρ.Π΅. Π±ΡΠ΄Π΅Ρ βΠ½Π΅Π²ΠΈΠ΄ΠΈΠΌβ). ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ binlog cache Π½Π° Π΄ΠΈΡΠΊΠ΅ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ max_binlog_cache_size (ΠΏΠΎ-ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ 18 ΡΠΊΡΠ°Π±Π°ΠΉΡ!). Π₯ΠΎΡΡ, Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π³ΠΎΠ²ΠΎΡΠΈΡ, ΡΡΠΎ MySQL Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π±ΠΈΠ½Π»ΠΎΠ³Π°ΠΌΠΈ Π±ΠΎΠ»ΡΡΠ΅ 4 ΠΠ±: ΠΏΡΠΈ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΠΈ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠ³Π° Π±ΡΠ΄Π΅Ρ Π²ΡΠ±ΡΠΎΡΠ΅Π½Π° ΠΎΡΠΈΠ±ΠΊΠ°.
Group Commit
ΠΠΎΠΎΡΡΠΆΠΈΠ²ΡΠΈΡΡ Π·Π½Π°Π½ΠΈΠ΅ΠΌ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ binlog, Π΄Π»Ρ crash-safe recovery Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π΅Π»Π°ΡΡ fsync()
Π½Π° ΠΊΠ°ΠΆΠ΄ΡΡ Π·Π°ΠΏΠΈΡΡ Π² Π±ΠΈΠ½Π»ΠΎΠ³Π΅ (Π½Π°ΡΡΡΠΎΠΉΠΊΠ° sync_binlog = 1
). ΠΠ΅Π΄Ρ, Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, binlog-ΠΈ Π½Π΅ ΡΡΠ°ΡΡΠ²ΡΡΡ Π² Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π½Π°ΡΠΈΡ
Π΄Π°Π½Π½ΡΡ
Π½Π° Π΄ΠΈΡΠΊ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ (Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ Ρ Ρ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ Π²Π°ΡΠΈΡ
Π΄Π°Π½Π½ΡΡ
Π½Π° Π΄ΠΈΡΠΊΠ΅!) ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅, Π±ΠΈΠ½Π»ΠΎΠ³ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ, ΠΈ Π±Π°Π·Π° ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ!
ΠΡΠ»ΠΈ Π½Π΅ ΡΠΊΠΈΠ΄ΡΠ²Π°ΡΡ Π±ΠΈΠ½Π»ΠΎΠ³ΠΈ Π½Π° Π΄ΠΈΡΠΊ — Π²Π΅Π»ΠΈΠΊ ΡΠ°Π½Ρ ΡΡΠΎ ΡΠΏΠ°Π²ΡΠΈΠΉ MySQL ΠΏΠΎΡΠ»Π΅ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΊΠΎΠ½ΡΠΈΡΡΠ΅Π½ΡΠ΅Π½ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΠΌΠΈ (ΠΈ Π²Π°ΠΌ ΠΏΠΎΠ²Π΅Π·Π΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΡΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΠ΅ ΡΡΠ°Π·Ρ). Π ΡΠ΅Π»ΠΎΠΌ ΠΆΠΈΡΡ Ρ sync_binlog
ΠΎΡΠ»ΠΈΡΠ½ΠΎΠΌ ΠΎΡ 1 ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ ΠΎΡΠΊΠ°Π·Π° ΠΎΡ crash-recovery ΠΈ ΠΏΠ΅ΡΠ΅Π½Π°Π»ΠΈΠ²ΠΊΠΎΠΉ ΡΠΏΠ°Π²ΡΠΈΡ
Ρ
ΠΎΡΡΠΎΠ². ΠΡ ΠΆΠ΅ Π½Π΅ ΠΎΠΆΠΈΠ΄Π°Π΅ΡΠ΅ ΠΊΡΡΡΠ° Π²ΡΠ΅Ρ
Ρ
ΠΎΡΡΠΎΠ² MySQL ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠ΅ΠΉ ΠΈΠ»ΠΈ retry-Π΅ΠΌ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌ Ρ
ΠΎΡΡΠ°ΠΌ π
ΠΠΎΠΏΡΡΡΠΈΠΌ, ΠΌΡ Π²ΡΠ΅-ΡΠ°ΠΊΠΈ Ρ
ΠΎΡΠΈΠΌ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π½Π° Π΄ΠΈΡΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ fsync. ΠΠ°ΠΊ ΠΌΡ ΡΠΆΠ΅ Π·Π½Π°Π΅ΠΌ, Π²ΡΠ·ΠΎΠ² fsync()-Π° ΡΡΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ, Π³Π΄Π΅ ΠΌΡ ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΏΠ΅ΡΠ΅ΡΡΡΡ Π² IOPS (ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π½Π° HDD Π΄ΠΈΡΠΊΠ°Ρ
). ΠΡΠ΅Π²ΠΈΠ΄Π½ΡΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π±ΡΡΡΠ»ΠΎΡΠ½ΠΎΠ³ΠΎ Π³ΠΎΡΠ»ΡΡΠΊΠ° IOPS-ΠΎΠ² ΡΠ²Π»ΡΠ΅ΡΡΡ Π±Π°ΡΡΠΈΠ½Π³ — Π½Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ fsync()
ΠΏΠΈΡΠ°ΡΡ Π½Π΅ ΠΎΠ΄Π½Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ, Π° ΡΡΠ°Π·Ρ ΡΠ΅Π»ΡΡ Π³ΡΡΠΏΠΏΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ. Π MySQL ΡΠ°ΠΊΠΎΠΉ Π±Π°ΡΡΠΈΠ½Π³ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Group Commit.
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, ΡΡΠΎ MySQL 5.0 Π½Π΅ Π΄Π΅Π»Π°Π» Group Commit, ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ ΡΠ²ΠΎΠ΅ΠΉ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π±ΠΈΠ½Π»ΠΎΠ³Π° Π½Π° Π΄ΠΈΡΠΊ. ΠΠΈ ΠΎ ΠΊΠ°ΠΊΠΎΠΉ Π²ΡΡΠΎΠΊΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π·Π΄Π΅ΡΡ ΡΠ΅ΡΠΈ ΠΈΠ΄ΡΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ.
Π Percona Server 5.5.18-23 Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΎΠ΄Π½Ρ ΠΈΠ· ΠΏΠ΅ΡΠ²ΡΡ Π²Π΅ΡΡΠΈΠΉ group commit:
ΠΠΎΠ³Π΄Π° ΠΏΠΎΡΠΎΠΊ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ, ΡΠ΅ΡΠΈΡ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡΠΈΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ — ΠΎΠ½ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΠ΅Π±Ρ Π² group commit queue.
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΏΠΎΡΠΎΠΊ ΠΏΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠ½ΡΡΡ — ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΠΎΠ½ ΠΏΠ΅ΡΠ²ΡΠΌ Π² group commit queue. ΠΡΠ»ΠΈ ΠΎΠ½ ΠΏΠ΅ΡΠ²ΡΠΉ — ΡΠΎ ΠΎΠ½ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ βgroup commit leaderβ.
ΠΠΈΠ΄Π΅Ρ Π±Π΅ΡΠ΅Ρ Π»ΠΎΠΊ Π½Π° Π²Π΅ΡΡ Π±ΠΈΠ½Π»ΠΎΠ³ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ (ΠΡΠΎΡ Π»ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°Π½ΡΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌ Π»ΠΈΠ΄Π΅ΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ΅ Π΅ΡΠ΅ ΠΏΠΈΡΠ΅Ρ Π½Π° Π΄ΠΈΡΠΊ). ΠΠΌΠ΅Π½Π½ΠΎ Π² ΡΡΠΎ Π²ΡΠ΅ΠΌΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠΎΡΠΎΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π² group commit queue — ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΡΠΎΠ±ΠΈΡΠ°ΡΡΡ Π² Π½ΠΎΠ²ΡΡ Π³ΡΡΠΏΠΏΡ.
ΠΠ°ΠΏΠΎΠ»ΡΡΠΈΠ² Π»ΠΎΠΊ Π½Π° Π²Π΅ΡΡ Π±ΠΈΠ½Π»ΠΎΠ³, Π»ΠΈΠ΄Π΅Ρ Π·Π°Π±ΠΈΡΠ°Π΅Ρ ΡΠ΅Π±Π΅ Π²ΡΡ group commit queue (ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π»ΠΈΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅Π±Π΅ Π½ΠΎΠ²ΡΡ queue)
ΠΠΈΠ΄Π΅Ρ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ binlog cache ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΏΠΎΡΠΎΠΊΠΎΠ² ΠΈ Π΄Π΅Π»Π°Π΅Ρ fsync() (Π΅ΡΠ»ΠΈ Π½Π°Π΄ΠΎ). ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΎΠ½ βΠ±ΡΠ΄ΠΈΡβ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΏΠΎΡΠΎΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ Π½Π° Π·Π°ΠΏΠΈΡΠΈ Π² Π±ΠΈΠ½Π»ΠΎΠ³.
Π§ΡΡΡ ΠΏΠΎΠ·ΠΆΠ΅, ΠΏΠΎΠΌΠΈΠΌΠΎ Π³ΡΡΠΏΠΏΠΈΡΠΎΠ²ΠΊΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π°ΡΡΡΠΎΠ΅Π½ Π½Π° Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π΄ Π·Π°ΠΏΠΈΡΡΡ Π² Π±ΠΈΠ½Π»ΠΎΠ³, ΠΏΡΡΠ°ΡΡΡ ΡΠΎΠ±ΡΠ°ΡΡ ΠΏΠΎΠ±ΠΎΠ»ΡΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ Π² group commit queue. ΠΠΎ Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠ°ΠΌ ΡΠ΅Π±ΡΡ ΠΈΠ· Percona — ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Π½Π° 30%.
Π Π°ΠΊΡΡΠ°Π»ΡΠ½ΡΡ
Π²Π΅ΡΡΠΈΡΡ
MySQL group commit ΡΠ΄Π΅Π»Π°Π½ ΡΡΡΡ ΠΏΠΎ-Π΄ΡΡΠ³ΠΎΠΌΡ: Π·Π°ΠΏΠΈΡΡ Π² Π±ΠΈΠ½Π»ΠΎΠ³ ΡΠ°Π·Π±ΠΈΡΠ° Π½Π° ΡΡΠ°ΠΏΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Commit_stage_manager
. MySQL Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ, ΡΡΠΎ ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π·Π°ΠΏΠΈΡΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ Π² Π±ΠΈΠ½Π»ΠΎΠ³Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΠΏΠΎΡΡΠ΄ΠΊΠΎΠΌ Π·Π°ΠΏΠΈΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Storage Engines (ΠΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΡ backup-ΡΡΠ»Π°ΠΌ, ΡΠ°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ xtrabackup ΠΈΠ»ΠΈ MySQL Clone Plugin).
ΠΡΠ΅ ΡΡΠ°ΠΏΡ (stages) ΠΎΠ±ΡΠ°Π·ΡΡΡ pipeline, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΎΠ±ΡΡΠΈΡ Π±Π΅ΡΡΡΡΡ ΠΈΠ· ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ, ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΈ ΡΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡΡΡ Π² ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ. ΠΠ°ΠΆΠ΄Π°Ρ ΠΎΡΠ΅ΡΠ΅Π΄Ρ Π·Π°ΡΠΈΡΠ΅Π½Π° ΡΠ²ΠΎΠΈΠΌ ΠΌΡΡΡΠ΅ΠΊΡΠΎΠΌ.
ΠΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ 4 ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ:
Binlog flush queue — ΠΎΡΠ΅ΡΠ΅Π΄Ρ Π½Π° Π·Π°ΠΏΠΈΡΡ Π½Π° Π΄ΠΈΡΠΊ.
Sync queue — ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΈΠ· ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ Π½Π°Π΄ΠΎ Π²ΡΠ·Π²Π°ΡΡ
fsync()
.Commit queue — ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°Π½ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ group commit. (Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° ΠΏΡΠΈ
binlog_order_commit=1
).Commit order flush queue — ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΈΠ· ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΏΠΈΡΡΡ Π² Π±ΠΈΠ½Π»ΠΎΠ³, Π½ΠΎ ΡΡΠ°ΡΡΠ²ΡΡΡ Π² group commit — ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ gtid_executed Π² ΡΠΊΠ·ΠΎΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ .
ΠΡΠ΅ stage ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠΎ ΠΏΠΎΡ ΠΎΠΆΠ΅ΠΌΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ:
ΠΠΎΠ³Π΄Π° ΠΏΠΎΡΠΎΠΊ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ, ΡΠ΅ΡΠΈΡ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡΠΈΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ — ΠΎΠ½ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΠ΅Π±Ρ Π²ΠΎ flush queue.
ΠΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΏΠΎΡΠΎΠΊ ΠΏΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠ½ΡΡΡ — ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΠΎΠ½ ΠΏΠ΅ΡΠ²ΡΠΌ Π² ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ ΠΈΠ»ΠΈ Π½Π΅Ρ. ΠΡΠ»ΠΈ ΠΎΠ½ ΠΏΠ΅ΡΠ²ΡΠΉ — ΡΠΎ ΠΎΠ½ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ stage leader.
Stage Leader (ΠΏΠΎΡΠ»Π΅ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ Π²
binlog_max_flush_queue_time
ms) Π·Π°Π±ΠΈΡΠ°Π΅Ρ Π²ΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΈΠ· ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠ²ΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡbinlog flush stage — ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ Π·Π°ΠΏΠΈΡΡ Π² Π±ΠΈΠ½Π»ΠΎΠ³: Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· binlog cache (
binlog_cache_mngr
) ΠΏΠΈΡΡΡΡΡ Π² ΡΠ°ΠΉΠ»sync stage — Π²ΡΠ·ΡΠ²Π°Π΅Ρ
fsync()
commit stage — ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡΠΈΡΡΡ Π² storage engine
ΠΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, Stage Leader Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΎΠ½ Π²Π»Π°Π΄Π΅Π», Π² ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ. ΠΠΎΠΆΠ΅Ρ ΡΠ°ΠΊ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ, ΡΡΠΎ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, ΠΊΡΠ΄Π° ΠΏΠΈΡΠ΅Ρ stage leader Π½Π΅ ΠΏΡΡΡΠ° — ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΡΡΠΎ ΠΎΠ½ βΠ½Π°Π³Π½Π°Π»β Π΄ΡΡΠ³ΠΎΠ³ΠΎ Π»ΠΈΠ΄Π΅ΡΠ° (ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ ΡΠ΅Π³ΠΎ-ΡΠΎ: Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΈΠ»ΠΈ ΡΠ°ΠΉΠΌΠ°ΡΡΠ°). Π ΡΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π°Ρ stage leader ΡΠ΅ΡΡΠ΅Ρ ΡΠ²ΠΎΠ΅ Π»ΠΈΠ΄Π΅ΡΡΡΠ²ΠΎ. ΠΠ³ΠΎ ΡΠΎΠ±ΡΡΠΈΡ Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ βΠ½Π°Π³Π½Π°Π½Π½ΡΠΉβ Π»ΠΈΠ΄Π΅Ρ. Π’Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π°Π΄Π°ΠΏΡΠΈΡΡΠ΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ group commit-Π° ΠΊ ΡΠ°ΠΌΠΎΠΉ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ (ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΎ
fsync()
) — Π΄ΠΎΠ»Π³ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π±ΠΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ event-ΠΎΠ² Π·Π° ΡΠ°Π·.
ΠΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½Π°Ρ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎΠΌ group commit ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½Π°Ρ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ — Π² ΠΏΡΠ΅Π΄Π΅Π»Π°Ρ group-commit-Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»Π΅Π½ΠΎ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ replica_parallel_workers ΠΏΠΎΡΠΎΠΊΠΎΠ², ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΎΠ½ΠΈ Π΄Π΅Π»Π°ΡΡ commit Π² ΡΠΎΠΌ ΠΆΠ΅ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΡΡΠΎ ΠΈ Π½Π° ΠΌΠ°ΡΡΠ΅ΡΠ΅ (replica_preserve_commit_order), ΡΡΠΎΠ±Ρ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎ Π½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡΠ»ΠΎ Π½Π° ΠΌΠ°ΡΡΠ΅ΡΠ΅ (ΠΠΎΠ»Π΅Π·Π½ΠΎΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ, Π΅ΡΠ»ΠΈ ΠΡ ΡΠΈΡΠ°Π΅ΡΠ΅ Ρ ΡΠ΅ΠΏΠ»ΠΈΠΊ!).
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρβ¦
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΠ°ΡΡΠΈ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ InnoDB ΠΏΠΈΡΠ΅Ρ Redo Log, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Checkpointing ΠΈ ΠΏΠΎΠΏΡΡΠ°Π΅ΠΌΡΡ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ ΠΊΠ°ΠΊ Π²ΡΠ΅ ΡΠ°ΡΡΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π²ΠΌΠ΅ΡΡΠ΅.
UPD: ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ https://habr.com/ru/post/699342/
ΠΠΊΡΠΏΠΎΡΡ ΠΈ ΠΈΠΌΠΏΠΎΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ MySQL
Vyacheslav Breus
21 Π½ΠΎΡΠ±ΡΡ 2022
ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΎ 6 ΠΈΡΠ½Ρ 2023
ΠΠ°Π·Ρ Π΄Π°Π½Π½ΡΡ
ΠΠ»Ρ ΡΠ΅Π³ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½ΡΠΆΠ΅Π½ ΡΠΊΡΠΏΠΎΡΡ ΠΈ ΠΈΠΌΠΏΠΎΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ
ΠΠ°ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡΡ ΡΠΊΡΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ»ΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΠ΅ΡΠ²Π΅Ρ, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΡ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠ³ΠΎ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈΡ. Π΄.
ΠΠ΅ΡΠΎΠ΄Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ
ΠΠ½ΠΎΠ³ΠΈΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌ ΡΠΊΡΠΏΠΎΡΡΠ°/ΠΈΠΌΠΏΠΎΡΡΠ° Π±Π°Π· Π΄Π°Π½Π½ΡΡ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² aapanel Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°ΠΌΠΏΠ° Π½ΡΠΆΠ½ΠΎ ΠΊΠ»ΠΈΠΊΠ½ΡΡΡ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ Databases, ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ Π΄Π°ΠΌΠΏ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠΎΠΌ ΡΠΊΠ°ΡΠ°ΡΡ Π΅Π΅;
ΠΡΠ»ΠΈ Π½Π° Π²Π°ΡΠ΅ΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ PHPMyadmin, Π΄Π»Ρ ΡΠΊΡΠΏΠΎΡΡΠ° ΠΠ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ. ΠΠΎΠΉΠ΄ΠΈΡΠ΅ Π² PHPMyadmin ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡΠΈΡ Π½Π° ΡΡΠ΅Π½ΠΈΠ΅, Π·Π°ΠΏΠΈΡΡ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , ΡΠ΅Π»ΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΠ, Π·Π°ΡΠ΅ΠΌ ΠΏΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Export ΠΈ, ΡΠΈΠ½Π°Π»ΡΠ½ΠΎ, ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ Go;
ΠΠ΄Π½Π°ΠΊΠΎ Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ Π²ΠΎΠΎΠ±ΡΠ΅ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ ΠΎΠ±Π»Π΅Π³ΡΠ΅Π½ΠΈΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ , ΠΎΡΡΠ°Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΊΡΠΏΠΎΡΡΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π· SSH-ΠΊΠΎΠ½ΡΠΎΠ»Ρ. ΠΠ²ΡΠΎΡΠΈΠ·ΡΠΉΡΠ΅ΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅, Π·Π°ΡΠ΅ΠΌ Π΄Π°ΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
mysqldump ΠΈΠΌΡ_ΠΠ > /ΠΏΡΡΡ/Π΄ΠΎ/ΡΠ°ΠΉΠ»Π°/dump.sql
ΠΠ°ΠΊ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°ΠΌΠΏ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
Π§ΡΠΎΠ±Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π· ΠΏΠ°Π½Π΅Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ aapanel, Π½ΡΠΆΠ½ΠΎ ΡΠ΅Π»ΠΊΠ½ΡΡΡ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ Databases, Π·Π°ΡΠ΅ΠΌ Import, Upload from local, Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΡΠ°ΠΉΠ» Ρ Π΄Π°ΠΌΠΏΠΎΠΌ Π½Π° ΡΠ²ΠΎΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Import;
Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°ΠΌΠΏ ΡΠ΅ΡΠ΅Π· PHPMyadmin. ΠΠΎΠΉΠ΄ΠΈΡΠ΅ Π² Π½Π΅Π³ΠΎ, ΡΠ΅Π»ΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π·Π°ΡΠ΅ΠΌ ΠΊΠ»ΠΈΠΊΠ½ΠΈΡΠ΅ ΠΏΠΎ ___, Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΡΠ°ΠΉΠ» Π΄Π°ΠΌΠΏΠ° ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ Go:
Π, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, Π²Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°ΠΌΠΏ ΠΠ ΡΠ΅ΡΠ΅Π· SSH. ΠΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
mysql -uΠΈΠΌΡ_ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ -p ΠΈΠΌΡ_Π±Π°Π·Ρ < /ΠΏΡΡΡ/Π΄ΠΎ/dump.sql
ΠΠ°ΡΠ΅ΠΌ Π²Π²Π΅Π΄ΠΈΡΠ΅ Π²Π°Ρ ΠΏΠ°ΡΠΎΠ»Ρ.
ΠΡΠΎΠ³ΠΈ
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΠΎΠ±ΡΡΡΠ½ΠΈΠ», Π·Π°ΡΠ΅ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡΡ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈΠ»ΠΈ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΊΠΎΠΏΠΈΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΎΠΏΠΈΡΠ°Π», ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ.
ΠΡΠ΅Π½ΠΊΠ°: 5Β ΠΈΠ· 5Πverage rating : 5
ΠΡΠ΅Π½ΠΎΠΊ: 1
191028 Π‘Π°Π½ΠΊΡ-ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³ ΠΠΈΡΠ΅ΠΉΠ½ΡΠΉ ΠΏΡ., Π΄. 26, ΠΠΈΡ. Π
+7 (812) 403-06-99 700 300 ΠΠΠ Β«ΠΠ’ΠΠΠΠΠΠΠΠΠ ΠΠΠΠ‘Β»191028 Π‘Π°Π½ΠΊΡ-ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³ ΠΠΈΡΠ΅ΠΉΠ½ΡΠΉ ΠΏΡ. , Π΄. 26, ΠΠΈΡ. Π
+7 (812) 403-06-99 700 300 ΠΠΠ Β«ΠΠ’ΠΠΠΠΠΠΠΠΠ ΠΠΠΠ‘Β» 700 3008 ΠΠΎΠ»ΡΡΠΈΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ MySQL
MySQL ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ, ΠΎΡ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π΄ΠΎ Π³ΠΈΠ±ΠΊΠΎΡΡΠΈ ΠΈ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΠΈ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ MySQL ΠΈ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½Π° ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ, ΡΡΠΎΠ±Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ Π²ΡΠ±ΠΎΡ ΠΏΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΠΎΠ³ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΠΈ Π΅Π΅ Π² ΡΠ²ΠΎΠ΅ΠΌ ΡΡΠ΅ΠΊΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ MySQL?MySQL β ΡΡΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ (RDBMS) Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΏΡΠΎΠΏΡΠΈΠ΅ΡΠ°ΡΠ½ΡΠ΅ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΠΎΠ±ΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ GNU (GPL). Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π‘Π£ΠΠ MySQL ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ SQL Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ Π²Π½ΡΡΡΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΠ½ ΠΎΡΠ³Π°Π½ΠΈΠ·ΡΠ΅Ρ ΠΊΠΎΡΡΠ΅Π»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΎΠ΄Π½Ρ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π±Π»ΠΈΡ Π΄Π°Π½Π½ΡΡ , ΠΈ ΡΡΠ° ΠΊΠΎΡΡΠ΅Π»ΡΡΠΈΡ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅.
ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ SQL Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΠΎΡΠΌΠ°Π»ΠΈΠ·ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π² ΡΡΡΠΎΠΊΠ°Ρ ΠΈ ΡΡΠΎΠ»Π±ΡΠ°Ρ ΡΠ°Π±Π»ΠΈΡ, MySQL ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΡΡ, Π½ΠΎ Π³ΠΈΠ±ΠΊΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Ρ ΡΠ΄ΠΎΠ±Π½ΡΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π΄Π°Π½Π½ΡΡ .
MySQL ΡΠ°ΠΊΠΆΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΌΠ΅ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΡΠΏΡΠ°Π²Π»ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΡΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΡΠ°Π²ΠΈΠ» Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°. Π ΡΡΠΎ ΠΎΠ±Π»Π΅Π³ΡΠ°Π΅Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΠΉ.
Π₯ΠΎΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ MySQL ΠΎΠ±ΡΡΠ½ΠΎ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ SQL, ΠΎΠ½ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌΠΈ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ΅ΠΊΠΎΠ², Π²ΠΊΠ»ΡΡΠ°Ρ LAMP (Linux, Apache, MySQL ΠΈ Perl/PHP/Python). Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΌ ΡΡΠ΅Π±ΡΡΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ , ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ , ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ MySQL, Π²ΠΊΠ»ΡΡΠ°Ρ Drupal, Joomla, phpBB ΠΈ WordPress. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ Π²Π΅Π±-ΡΠ°ΠΉΡΡ Π΄Π°ΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ°ΡΡ Facebook, Flickr, Twitter ΠΈ YouTube.
Π§ΡΠΎ Π΄Π΅Π»Π°Π΅Ρ MySQL ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠΉ?MySQL β ΠΎΠ΄Π½Π° ΠΈΠ· ΠΌΠ½ΠΎΠ³ΠΈΡ Π‘Π£ΠΠ, Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π½Π° ΡΡΠ½ΠΊΠ΅. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ½ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ , ΡΡΡΡΠΏΠ°Ρ ΡΠΎΠ»ΡΠΊΠΎ Oracle Database ΠΏΠΎ ΡΠ°ΠΊΠΈΠΌ Π²Π°ΠΆΠ½ΡΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌ, ΠΊΠ°ΠΊ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΠΎΠΈΡΠΊΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌ, ΠΏΡΠΎΡΠΈΠ»ΠΈ LinkedIn ΠΈ ΡΠ°ΡΡΠΎΡΠ° ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠΉ Π½Π° ΠΎΠ½Π»Π°ΠΉΠ½-ΡΠΎΡΡΠΌΠ°Ρ . ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΊΡΡΠΏΠ½ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ Π³ΠΈΠ³Π°Π½ΡΠΎΠ² ΠΎΡ MySQL Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΡΠΊΡΠ΅ΠΏΠ»ΡΠ΅Ρ Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ.
Π₯ΠΎΡΡ Π² ΠΎΡΡΠ°ΡΠ»ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ Π΄ΠΎΠΌΠΈΠ½ΠΈΡΡΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π³ΠΈΠ³Π°Π½ΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Microsoft, Oracle ΠΈ IBM, Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ (Π‘Π£ΠΠ) Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Apache Cassandra, PostgreSQL ΠΈ MySQL, ΠΎΡΡΠ°ΡΡΡΡ Π²Π΅ΡΡΠΌΠ° ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΡΠΌΠΈ.
ΠΠΎΡ ΡΠ΅ΡΡΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠΈΡΠΈΠ½Ρ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎΠΉ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΠΈ MySQL.
ΠΡΠΎΡΡΠΎΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡMySQL β ΡΡΠΎ ΠΏΡΠΎΡΡΠ°Ρ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ Π³ΠΈΠ±ΠΊΠ°Ρ Π‘Π£ΠΠ. Π ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 30 ΠΌΠΈΠ½ΡΡ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ MySQL Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ ΡΠΎ ΡΠ²ΠΎΠΈΠΌΠΈ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΡΠΌΠΈ. Π ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΡΠ°ΡΠΈΡΡ Π΄Π΅Π½ΡΠ³ΠΈ Π½Π° ΡΡΠΎΡ ΡΡΠΎΠ²Π΅Π½Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Ρ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ.
ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΉΠΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π‘Π£ΠΠ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ Π²Π°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ Π²Π°ΡΠΈΠΌ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠΎΠΌ. Π ΡΡΠ°ΡΡΡΡ, MySQL Π²ΡΠ΅Π³Π΄Π° ΠΎΡΠ΄Π°Π΅Ρ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ²ΠΎΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ Π΄ΠΎΡΡΡΠΏΠ° ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΡΠ΅ΡΠ½ΡΠΌΠΈ Π·Π°ΠΏΠΈΡΡΠΌΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. MySQL ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Ρ ΠΎΡΡΠ° ΠΈ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΡΠΎΠ»Π΅ΠΉ.
ΠΡΡΠΎΠΊΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΠΠ»Π°ΡΡΠ΅Ρ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ MySQL. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, MySQL ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΏΠ»Π°Π²Π½ΡΡ ΠΏΠΎΠΌΠΎΡΡ Ρ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΡΡ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, Ρ ΡΠ°Π½ΠΈΡΠ΅ Π»ΠΈ Π²Ρ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΌΡ Π±ΠΎΠ»ΡΡΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π±ΠΈΠ·Π½Π΅Ρ-Π°Π½Π°Π»ΠΈΡΠΈΠΊΠΈ (BI).
ΠΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΡΠΉ ΡΡΠ°Π½Π΄Π°ΡΡMySQL ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ, ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΠ² Π΅Π³ΠΎ Π² ΠΎΡΡΠ°ΡΠ»Π΅Π²ΠΎΠΉ ΡΡΠ°Π½Π΄Π°ΡΡ. ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΅ΡΡΡ ΠΎΠ±ΠΈΠ»ΡΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ Π΄Π»Ρ ΠΊΠ²Π°Π»ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π² Π»ΡΠ±ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ Π±ΡΡΡΡΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π² MySQL, ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΌΠΎΠ³ΡΡ Π½Π°Π½ΠΈΠΌΠ°ΡΡ Π²Π½Π΅ΡΡΠ°ΡΠ½ΡΡ ΡΠΊΡΠΏΠ΅ΡΡΠΎΠ² ΠΏΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΌΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π·Π° ΠΌΠ΅Π½ΡΡΡΡ ΠΏΠ»Π°ΡΡ.
8 Π³Π»Π°Π²Π½ΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² MySQL 1. ΠΡΠΊΡΡΡΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄MySQL ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΡΡΠ»ΡΠ³Ρ. ΠΠ³ΠΎ Π²Π΅ΡΡΠΈΡ Π΄Π»Ρ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ Π΄ΠΎΡΡΡΠΏΠ½Π° Π΄Π»Ρ Π²ΡΠ΅Ρ , ΠΊΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ, ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΏΡΠ΅Π²ΠΎΡΡ ΠΎΠ΄Π½ΡΡ ΡΠΊΠΎΡΠΎΡΡΡ, ΠΌΠ°ΡΡΡΠ°Π± ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΡ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ Π²ΡΠ³ΠΎΠ΄Π½ΠΎ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΊΠΎΠ³Π΄Π° ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡ Ρ ΠΎΡΡΡ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΠΏΠ»Π°ΡΡ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΎΠ½Π½ΡΡ ΡΠ±ΠΎΡΠΎΠ².
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π»ΡΠ±ΠΎΠΌΡ Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ Π²Π½ΠΎΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ²ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ ΡΠΎ ΡΠ²ΠΎΠΈΠΌΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌΠΈ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΡΠΌΠΈ. ΠΡΠ° Π³ΠΈΠ±ΠΊΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΠΌ Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΈΠ»ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ.
2. ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡMySQL β ΡΠ°ΠΌΠ°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ Π² ΠΌΠΈΡΠ΅. ΠΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ MySQL ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π·Π°ΡΠΈΡΡ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½Π΅ΡΡΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΠΎΠ»ΡΠ·Ρ Π»ΡΠ±ΠΎΠΌΡ Π±ΠΈΠ·Π½Π΅ΡΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡΠΌ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΡΡΠΎ ΠΏΡΠΎΠ²ΠΎΠ΄ΡΡ Π΄Π΅Π½Π΅ΠΆΠ½ΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ.
3. ΠΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΡ ΠΏΠΎ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΡ ΠΏΠΎ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ»ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΡΠΎΠΉ MySQL. ΠΠ½ ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π³Π»ΡΠ±ΠΎΠΊΠΎ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π½Π΅Π³Π»ΡΠ±ΠΎΠΊΠΈΠΉ ΡΠ»Π΅Π΄, Π΄Π°ΠΆΠ΅ Π² Π±Π°Π·Π°Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΡΠ°Π½ΡΡ ΡΠ΅ΡΠ°Π±Π°ΠΉΡΡ Π΄Π°Π½Π½ΡΡ . ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, MySQL ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠΉ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠΈΠΈ Ρ ΠΎΡΠΎΠ±ΡΠΌΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌΠΈ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ .
4. ΠΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠ°Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡMySQL ΠΈΠΌΠ΅Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Ρ ΡΠ°Π½Π΅Π½ΠΈΡ. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°ΠΌ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ΅ΡΠ²Π΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ MySQL Π΄Π»Ρ Π±Π΅Π·ΡΠΏΡΠ΅ΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ. ΠΠ΅Π²Π°ΠΆΠ½ΠΎ, Π±ΡΠ΄Π΅Ρ Π»ΠΈ ΡΡΠΎ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠΈΠΈ, ΠΏΠΎΠ»ΡΡΠ°ΡΡΠ΅Π΅ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΈΠ»ΠΈ Π²ΡΡΠΎΠΊΠΎΡΠΊΠΎΡΠΎΡΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ.
MySQL ΡΠΎΠ·Π΄Π°Π½ Π΄Π»Ρ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠ΅Π½ΠΈΡ ΡΠ°ΡΡΡΡΠΈΡ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠ΅ΠΉ ΠΏΠΎΡΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΊΡΡΠ΅ΠΉ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
5. ΠΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ° 24Γ7MySQL Π³Π°ΡΠ°Π½ΡΠΈΡΡΠ΅Ρ Π±Π΅ΡΠΏΠ΅ΡΠ΅Π±ΠΎΠΉΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ 24/7. ΠΠ½ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΠΈΡΠΎΠΊΠΈΠΉ ΡΠΏΠ΅ΠΊΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Π±Π°Π· Π΄Π°Π½Π½ΡΡ Ρ Π²ΡΡΠΎΠΊΠΎΠΉ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡΡ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ master/slave ΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ².
6. ΠΠΎΠ»Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉMySQL ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄Π²ΠΈΠΆΠΊΠΎΠΌ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π½ΠΎΠΌΠ΅Ρ ΠΎΠ΄ΠΈΠ½ Π² ΠΌΠΈΡΠ΅. ΠΠ³ΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠ΅Π±Ρ ΠΏΠΎΠ»Π½ΡΡ Π°ΡΠΎΠΌΠ°ΡΠ½ΡΡ, Π½Π΅ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠΈΠ²ΡΡ, ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ, Π½Π°Π΄Π΅ΠΆΠ½ΡΡ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ²Π΅ΡΡΠΈΠΎΠ½Π½ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΡΡΠΎΠΊ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΈΠΌ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ ΡΡΠ½ΠΊΡΠΈΡΠΌ MySQL ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π»Ρ Π²ΡΠ΅ΠΎΠ±ΡΠ΅ΠΌΠ»ΡΡΠ΅ΠΉ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΡΡΠΏΠΈΠΊΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π·Π° ΡΡΠ΅Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΡΠ»ΠΎΡΠ½ΠΎΠΉ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°.
7. ΠΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠΈΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌMySQL ΡΠ΄ΠΎΠ±Π½Π° Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ΅Π½Π΅Π΅ 30 ΠΌΠΈΠ½ΡΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊΠ°Ρ Ρ Π²Π°Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°: Microsoft, Macintosh, Linux ΠΈΠ»ΠΈ UNIX; MySQL β ΡΡΠΎ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ. ΠΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΡΡΡ Π²ΡΠ΅, ΠΎΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° Π΄ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ .
8. ΠΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠ°Ρ ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½Π°Ρ ΡΡΠΎΠΈΠΌΠΎΡΡΡ Π²Π»Π°Π΄Π΅Π½ΠΈΡ (TCO)ΠΠΎΠ³Π΄Π° ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΡΡ Ρ ΡΠ΅ΠΊΡΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π±Π°Π· Π΄Π°Π½Π½ΡΡ Π½Π° MySQL, ΠΎΠ½ΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΊΠΎΠ½ΠΎΠΌΡΡ Π½Π° ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΠΉ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ Π²Π»Π°Π΄Π΅Π½ΠΈΡ. ΠΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ Π΄Π΅Π½ΡΠ³ΠΈ Π½Π° Π½ΠΎΠ²ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ . ΠΠ°Π΄Π΅ΠΆΠ½ΠΎΡΡΡ ΠΈ ΠΏΡΠΎΡΡΠΎΡΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ MySQL ΠΌΠΎΠ³ΡΡ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ Π΄Π΅Π½ΡΠ³ΠΈ ΠΈ Π²ΡΠ΅ΠΌΡ, Π·Π°ΡΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΠ΅ Π½Π° ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΠΏΠΎΠ»Π°Π΄ΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠ°ΡΡΡΡΡ Π½Π° ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΠΎΠ΅Π² ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ.
3 ΡΠΎΠ²Π΅ΡΠ° ΠΏΠΎ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ MySQLΠ‘Π΅Π³ΠΎΠ΄Π½Ρ ΠΏΠΎΡΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ MySQL. ΠΠ½ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌ Ρ Π»ΡΠ±ΡΠΌ Ρ ΠΎΡΡΠΈΠ½Π³-ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠΎΠΌ ΠΈ ΡΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ ΠΏΡΠΎΡΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΠΎ, Π΅ΡΠ»ΠΈ Π²Π°ΡΠ΅ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π²Π΅Π±-ΡΠ°ΠΉΡ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠΈΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠ»ΠΎΡ ΠΎ, Π²ΠΎΡ ΡΡΠΈ ΠΏΡΠΈΠ΅ΠΌΠ° ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ.
1. Π’ΠΎΠ½ΠΊΠ°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΎΡΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΠ² Π²ΡΡΠΎΠΊΠΎΠ΄ΠΎΡΡΡΠΏΠ½ΡΠΉ ΠΏΡΠΎΠΊΡΠΈ-ΡΠ΅ΡΠ²Π΅Ρ ΠΈΠ»ΠΈ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ HAProxy. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΠΊΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠΈ, ΡΡΠΎΠ±Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΡΠΊΠΎΡΠΈΡΡ ΡΠ°Π±ΠΎΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ°. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΠΊΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΎ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π³ΠΈΠ±ΠΊΠΎΡΡΠΈ ΠΈ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΠΈ Π΄Π»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ. ΠΠ½ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠΈΡΡ Π½Π΅Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠΈ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ.
2. ΠΡΠ΄ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈΠΡΠ°ΠΊΠΈ ΡΠΈΠΏΠ° «ΠΎΡΠΊΠ°Π· Π² ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠΈ» (DoS) ΠΈ ΡΠ°ΡΡΡΠ»ΠΊΠ° ΡΠΏΠ°ΠΌΠ° ΠΌΠΎΠ³ΡΡ Π½Π°Π½Π΅ΡΡΠΈ ΡΡΠ΅ΡΠ± ΡΠ΅ΡΠ²Π΅ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΠΎ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΠΊΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ Π²ΡΠ΅ΠΌΡ Π±Π΅Π·ΠΎΡΠΊΠ°Π·Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ. ΠΠ½ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΠ΅ΡΡΡΡ ΠΈ ΡΠ²ΠΎΠ΅Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
3. ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ²ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΌΠΎΡΡ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° ΡΠ΅ΡΠ²Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π²Π΅Π±-ΡΠ°ΠΉΡΡ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π°ΠΏΠΈΡΠ°Π½Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ. ΠΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΠΊΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠΈ SQL Server ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΌΠΎΡΡ Π² Π±ΠΎΠ»ΡΡΠ΅ΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ. ΠΡΠΎ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±Π΅ΡΠΏΠ΅ΡΠ΅Π±ΠΎΠΉΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ, ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ , ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ Π·Π°ΡΡΠ°Ρ Π½Π° ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠ΅.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΎΠ½ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². ΠΠΎΡΠΎΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ, MySQL Π΄Π΅Π»Π°Π΅Ρ Π²ΡΠ΅, ΠΎΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ Π΄ΠΎ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° ΠΈ ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌΠΈ.
ΠΠΎΠΌΡ Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ MySQL?ΠΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π΅ΡΠΊΠΈΡ ΠΏΡΠΈΡΠΈΠ½ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ MySQL; Ρ ΠΎΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π°Π½Ρ Π½Π° Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΠΈ. ΠΠΎΡΡΠΎΠΌΡ ΠΏΠ΅ΡΠ΅Π΄ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ΠΌ MySQL ΠΏΡΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΡΠΈ ΠΏΡΠΈΡΠΈΠ½Ρ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅, ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΡ Π»ΠΈ ΠΎΠ½ΠΈ ΠΊ Π²Π°ΡΠ΅ΠΌΡ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡ. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, ΠΎΡΠΊΠ°Π· ΠΎΡ Π»ΡΠ±ΠΎΠΉ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π±Π°Π· Π΄Π°Π½Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°ΡΡΡΡ Π½Π° Π²Π΅ΡΠΊΠΈΡ ΠΏΡΠΈΡΠΈΠ½Π°Ρ , Π° Π½Π΅ Π½Π° ΠΌΠ½Π΅Π½ΠΈΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ (DBA).
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ GPLΠΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ ΠΏΡΠΈΡΠΈΠ½Π° ΠΎΡΠΊΠ°Π·Π° ΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ MySQL. ΠΠΈΡΠ΅Π½Π·ΠΈΡ GPL ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎΠΌ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ , Π½ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ GPL ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡΡ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΠ΅Π΄. Π ΡΠ°ΠΊΠΈΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡΠ΄Π°Π²Π°ΡΡΡΡ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΎΠΉ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ, Π΅ΡΠ»ΠΈ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ Berkeley Source Distribution (BSD) Π΄Π»Ρ PostgreSQL Π²ΡΠ΅ Π΅ΡΠ΅ ΡΠΈΡΠΎΠΊΠΎ Β«ΠΎΡΠΊΡΡΡΠ°Β».
Π ΡΠ΅Ρ ΡΠ»ΡΡΠ°ΡΡ , ΠΊΠΎΠ³Π΄Π° MySQL Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΌ, GPL ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡΡ Π΄Π»Ρ ΡΡΠΈΡ ΡΠΈΡΡΠ°ΡΠΈΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ Π½Π° Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²ΠΌΠ΅ΡΡΠ΅ ΡΠΎ ΡΠ²ΠΎΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ, ΠΏΡΠΎΠ΅ΠΊΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π»ΠΈΠ±ΠΎ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΠΎΠ²Π°Π½ ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠΉ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ, Π»ΠΈΠ±ΠΎ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΡΡ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ Π·Π° ΠΏΠ»Π°ΡΡ.
ΠΡΠΎΠΏΡΠΈΠ΅ΡΠ°ΡΠ½Π°Ρ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ ΡΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡΠΡΠ»ΠΈ Π² ΠΠ’-ΡΡΠ΅Π΄Π΅ ΡΠΆΠ΅ Π΅ΡΡΡ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ Π½Π° Oracle ΠΈ Sybase ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΉ Π½Π° MS-SQL Server, ΡΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ MS-SQL Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΡΠ²Π»ΡΡΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π½Π΅Π·Π½Π°Π½ΠΈΡ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°ΠΌΠΈ ΠΎΡΠ΄Π΅Π»Π° ΠΈΡ ΠΏΠ»Π°ΡΠ½ΡΡ ΡΡΠ»ΡΠ³. Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ Π½Π° Π΄ΡΡΠ³ΠΈΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
ΠΠΎΠ±Π°Π²Π»ΡΡΡ Π»ΡΠ±ΡΡ Π΄ΡΡΠ³ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π²ΠΊΠ»ΡΡΠ°Ρ MySQL, Π² ΡΡΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π½Π΅ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ°ΠΌ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΡΠΆΠ΅ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΈΠΌΠ΅ΡΡ Π΄Π΅Π»ΠΎ ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ ΡΡΠ΅Π΄Π°ΠΌΠΈ. ΠΠ΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΉ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΠ½ΠΈΠΆΠ°Π΅Ρ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΡΠΆΠ΅ Π·Π°ΠΏΠ»Π°ΡΠΈΠ»Π° Π·Π° ΠΏΡΠΎΠΏΡΠΈΠ΅ΡΠ°ΡΠ½ΡΡ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΡΠ°ΠΊΠ°Ρ ΠΊΠ°ΠΊ MySQL, Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠΉ.
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π±ΡΡΡΡΠΎMySQL Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΌΠ° ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡΡ Π΄Π»Ρ Π±ΡΡΡΡΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ ΠΏΠΎΡΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΌ Π² ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ° Π²Π΅ΡΠ΅ΠΉ (IoT), ΡΡΠ΅Π±ΡΡΡΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΌΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΈ ΡΡΠ΅Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ°Π»ΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΡ.
Π ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°ΡΡ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ IoT ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. Π₯ΠΎΡΡ Π²Π°ΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ MySQL ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠ΄Π½Π°ΠΊΠΎ Π΄Π»Ρ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΠΎΡΡΠ΅Π±ΡΡΡΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ.
Π‘Π»ΠΎΠΆΠ½ΡΠ΅ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ ΡΡΠ΅Π±ΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ²ΠΠ°ΠΊ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ MySQL ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡΡ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠΎ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ ΡΡΡΡΠΊΡΡΡΠ°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ , ΡΡΠ΅Π±ΡΡΡΠΈΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΠ»Ρ ΡΠ»ΠΎΠΆΠ½ΡΡ ΡΠ°Π±ΠΎΡΠΈΡ Π½Π°Π³ΡΡΠ·ΠΎΠΊ Ρ Π²ΡΡΠΎΠΊΠΎΠΉ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎΡΡΡΡ Π·Π°ΠΏΠΈΡΠΈ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ NoSQL, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ MongoDB. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, MySQL ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡΡ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠΎ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΡΠΌΠΈ, ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π³ΡΠ°ΡΠΎΠ² ΠΈΠ»ΠΈ Π΄Π°Π½Π½ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΄ΠΎΠ².
ΠΡΡΡΡΡΡΠ²ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈΠ‘Π΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ β Π»ΡΠ±ΠΈΠΌΠΎΠ΅ Π·Π°Π½ΡΡΠΈΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΠ’-ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠΉ. Π₯ΠΎΡΡ Ρ MySQL Π΅ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ, Π΅Π΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ, ΡΠ΅ΠΌ Oracle ΠΈΠ»ΠΈ MS-SQL Server. Π Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΎΠΌ ΡΠΌΡΡΠ»Π΅, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΠ’-ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ² Ρ Π½Π°Π²ΡΠΊΠ°ΠΌΠΈ ΡΠ°Π±ΠΎΡΡ Ρ MySQL Π½Π°ΠΉΡΠΈ Π½Π΅ΡΠ»ΠΎΠΆΠ½ΠΎ, ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΡΠ»ΠΎΠΆΠ½Π΅Π΅ ΠΈΠ·-Π·Π° Π½Π°Π»ΠΈΡΠΈΡ Π»ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ² ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ. ΠΠΎΠ»Π΅Π΅ ΠΊΡΡΠΏΠ½ΡΠΌ ΠΠ’-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΠΌ Π½ΡΠΆΠ½Ρ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ Ρ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΡΠΌ ΠΎΠΏΡΡΠΎΠΌ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»Ρ Ρ ΠΎΠΏΡΡΠΎΠΌ ΡΠ°Π±ΠΎΡΡ Ρ MySQL ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ ΠΌΠ΅Π½ΡΡΡΡ Π³Π»ΡΠ±ΠΈΠ½Ρ.
ΠΡΠ΅ ΠΎΠ΄Π½Π° ΡΠ²ΡΠ·Π°Π½Π½Π°Ρ Ρ ΡΡΠΈΠΌ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° β Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ ΠΊΠ²Π°Π»ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Π½Π΅ΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ. ΠΠ°Π»ΠΈΡΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΎΡ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΡΠΌΡΠ³ΡΠ°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π΄ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ. Π Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Π½Π΅ΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ Π½Π° ΠΌΠ΅ΡΡΠ΅.
ΠΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡMicrosoft, Oracle ΠΈ Sybase ΡΠ²Π»ΡΡΡΡΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΠΌΠΈ. Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, MySQL β ΡΡΠΎ ΡΠ°ΡΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅Π΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΅Π³ΠΎ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠ΅ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π±ΠΈΠ·Π½Π΅ΡΠΎΠΌ, Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΏΠΎ Π·Π°ΠΊΠΎΠ½Ρ, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΡ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌΠΈ.
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π½Π° Π±ΠΈΡΠΆΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΠΉ, ΠΈ ΡΡΠ° ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΡΡΡ, ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΡΡΡ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΠ’-ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ² ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΠ΅Π»Π΅ΠΉ. ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΡΠ°Π±ΠΎΡΠ° Ρ ΠΊΡΡΠΏΠ½ΠΎΠΉ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ΅ΠΉ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ Π»ΡΠ΄ΡΠΌ ΡΠΏΠΎΠΊΠΎΠΉΠ½ΠΎ ΡΠΏΠ°ΡΡ ΠΏΠΎ Π½ΠΎΡΠ°ΠΌ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½Π΅Π½ΠΈΠ΅, ΡΡΠΎ MySQL ΠΏΠ»ΠΎΡ ΠΎ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΡΡΡΠ‘ΡΠ΅Π΄ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΠ’-ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ² ΡΠΈΡΠΎΠΊΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΎ ΠΌΠ½Π΅Π½ΠΈΠ΅, ΡΡΠΎ MySQL Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π»ΡΡΡΠ΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°ΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΌΠ΅Ρ ΡΠΏΠΎΡΠΎΠ², ΠΈ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΎΠ±ΡΡΠΆΠ΄Π°Π΅ΡΡΡ ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌΠΈ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ (Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ) ΠΈ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ (Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ). ΠΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΡ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ»Π° ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π³Π»Π°Π²Π½ΡΡ ΠΏΡΠΈΡΠΈΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ MySQL; Ρ ΠΎΡΡ Π² Π½Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ±ΡΡΠΆΠ΄Π°Π΅ΡΡΡ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, ΡΠ΅ΠΌ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅.
ΠΡΠ»ΠΎ ΠΏΠΎΠ΄ΡΡΠΈΡΠ°Π½ΠΎ (Π±Π΅Π· ΠΎΡΠΎΠ±ΡΡ Π΄ΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΡΡΠ²), ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΎΠ±ΡΡΠ΅Π½Π½ΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ² Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°ΡΡ ΠΏΡΠΎΠΏΡΠΈΠ΅ΡΠ°ΡΠ½ΡΡ Π‘Π£ΠΠ, ΡΠ°ΠΊΡΡ ββΠΊΠ°ΠΊ Oracle, ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. Π Π±ΠΎΠ»Π΅Π΅ ΠΊΡΡΠΏΠ½ΠΎΠΉ ΠΠ’-ΡΡΠ΅Π΄Π΅ ΠΏΠΎΠ΄ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΡΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Π±Π°Π· Π΄Π°Π½Π½ΡΡ MySQL Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΌΠ΅Π½ΡΡΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ.
Π ΡΡΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ ΠΊΡΠΈΡΠΈΠΊΠ° ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΠΈ MySQL ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π½Π΅ΡΠΌΠ΅ΡΡΠ½ΠΎΠΉ. ΠΠΎΠ³Π΄Π° Π² Π²Π°ΡΠ΅ΠΌ ΡΠ°ΡΠΏΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ Π΅ΡΡΡ ΡΠ°Π»Π°Π½ΡΡ ΠΈ Π΄Π΅Π½Π΅ΠΆΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ, Π²ΡΠ΅Π³Π΄Π° Π»ΡΡΡΠ΅ ΡΠ½Π°Π±Π΄ΠΈΡΡ ΠΈΡ ΡΠ΄ΠΎΠ±Π½ΡΠΌΠΈ Π΄Π»Ρ Π½ΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π²ΡΠ΅Π³Π΄Π° ΠΎΠΊΡΠΏΠ°Π΅ΡΡΡ Π² Π΄ΠΎΠ»Π³ΠΎΡΡΠΎΡΠ½ΠΎΠΉ ΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ²Π΅.
Π’ΠΎΠΏ-3 Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ MySQLΠΠΎΠ½Π΅ΡΠ½ΠΎ, MySQL ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ . ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π° ΡΡΠ½ΠΊΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΡΠ΅Π²ΠΎΡΡ ΠΎΠ΄Π½ΡΠ΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ . ΠΠΎΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Ρ ΠΎΡΠΎΡΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ²:
1. PostgreSQLPostgreSQL, ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ ΠΊΠ°ΠΊ Postgres, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΌΠΎΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΠΌΠΈ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΊΠΎΠ½ΠΊΡΡΠΈΡΡΠ΅Ρ Ρ Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΠ»Π°ΡΠ½ΠΎΠΉ Π‘Π£ΠΠ. ΠΠ½ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌ Ρ Windows, Linux, Mac ΠΈ BSD.
ΠΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»Ρ- PostgreSQL ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ΅Π»ΠΎΡΡΠ½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ , ΡΡΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡ ΡΠ²ΠΎΠ΅ ΠΎΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΏΠΎΠ»Π½ΠΎΠΌ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ ACID.
- ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ PostgreSQL ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Ρ ΠΊΠ°ΠΆΠ΄ΡΠΌ Π²ΡΠΏΡΡΠΊΠΎΠΌ. ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π°Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ ΡΠ΅ΡΡΠ°ΠΌΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
- Π‘ΠΈΠ»ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ PostgreSQL, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡ ΡΡΠ΅Π±Π½ΡΠ΅ ΠΏΠΎΡΠΎΠ±ΠΈΡ, ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ.
- ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ, ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²ΡΠΏΡΡΠΊΠ°ΡΡΡΡ Π²ΠΎΠ²ΡΠ΅ΠΌΡ.
- PostgreSQL ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ JavaScript Object Notation (JSON) β ΠΎΡΠΊΡΡΡΡΠΉ ΡΠΎΡΠΌΠ°Ρ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½ΡΠΌΠΈ, ΠΏΠΎΠ½ΡΡΠ½ΡΠΉ Π»ΡΠ΄ΡΠΌ ΠΈ ΠΌΠ°ΡΠΈΠ½Π°ΠΌ.
- PostgreSQL ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Perl ΠΈ Python, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌ Π±ΡΡΡΡΠΎ ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΡΡ ΡΠ΅ΡΠ²Π΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π² Π½Π°Π΄Π΅ΠΆΠ½ΡΠΉ ΡΠ΅ΡΠ²ΠΈΡ ΡΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ.
- PostgreSQL Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΡΠΏΡΠ°Π²ΠΈΡΡΡΡ Ρ Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠΎΡΠ½ΠΎΡΡΡΡ ΠΈ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ.
MariaDB β ΡΡΠΎ Π±ΡΡΡΡΠΎΡΠ°ΡΡΡΡΠ°Ρ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠ°Ρ Ρ MySQL Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ. ΠΠ½ ΠΈΠΌΠ΅Π΅Ρ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ ΠΈ ΠΏΠ»Π°ΡΠ½ΡΡ Π²Π΅ΡΡΠΈΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΏΠ»Π°Π³ΠΈΠ½Ρ Π΄Π»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ GPL.
ΠΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»Ρ- MariaDB ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠ»ΡΠ½ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Π° Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅, Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, ΡΡΡΡΠ°Π½Π΅Π½ΠΈΠΈ Π½Π΅ΠΏΠΎΠ»Π°Π΄ΠΎΠΊ ΠΈ ΡΡΠ΅Π±Π½ΡΡ ΠΏΠΎΡΠΎΠ±ΠΈΡΡ .
- ΠΠ½ ΠΈΠΌΠ΅Π΅Ρ ΠΏΠ΅ΡΠ΅Π΄ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π³Π΅ΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° (ΠΠΠ‘).
- ΠΠ½ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠΎΠ»Π±ΡΡ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ NoSQL.
- ΠΠΎΡΠΎΠ³ΠΎΡΡΠΎΡΡΠΈΠΉ ΠΏΡΠΎΡΠ΅ΡΡ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
- ΠΠ΅Π½ΡΡΠΈΠΉ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π» ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Ρ Π³ΡΠΎΠΌΠΎΠ·Π΄ΠΊΠΈΠΌΠΈ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ .
- ΠΠ»ΠΎΡ Π°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°ΡΡΠ΅ΡΠΎΠΌ.
- ΠΠ΅Π½ΡΡΠΈΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ.
SQLite β ΡΡΠΎ RDMS, ΠΊΠΎΡΠΎΡΠ°Ρ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ-ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠΉ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ . ΠΠ΄Π½Π°ΠΊΠΎ SQLite ΠΈ PostgreSQL ΠΈΠΌΠ΅ΡΡ ΡΡ ΠΎΠΆΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ.
Pros- ΠΠ½ ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ Π΄Π»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π²ΠΊΠ»ΡΡΠ°Ρ BASIC, C, C++, Java, JavaScript, Perl, PHP, Python, Ruby ΠΈ Visual Basic.
- ΠΡΠΎ Π»Π΅Π³ΠΊΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅.
- ΠΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ Ρ ΠΌΠ΅ΠΆΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ.
- SQLite Π½Π°Π΄Π΅ΠΆΠ΅Π½ Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ.
- ΠΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π½Π°ΡΠ°Π»ΡΠ½ΡΡ ΡΡΠ°ΠΏΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
- ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ.
- ΠΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ.
- ΠΡΡΡΡΡΡΠ²ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ SQL, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ FOR EACH STATEMENT ΠΈ RIGHT OUTER JOIN.
MySQL β ΡΡΠΎ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½Π°Ρ, Π·ΡΠ΅Π»Π°Ρ, ΠΎΡΠΊΡΡΡΠ°Ρ ΠΈ ΡΠ°ΡΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ . ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ ΠΌΡ Π²Π·Π²Π΅ΡΠΈΠΌ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΠ΅ Π²ΡΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° MySQL, ΠΏΡΡΡ Π΅Π΅ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠ΅ΠΉ ΠΈ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² Π²ΡΠ΄Π΅Π»ΡΡΡΡΡ ΡΡΠ΅Π΄ΠΈ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ .
MySQL β ΡΡΠΎ Π½Π°Π΄Π΅ΠΆΠ½Π°Ρ, ΠΏΡΠΎΡΡΠ°Ρ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π°Ρ Π‘Π£ΠΠ, Π³ΠΎΡΠΎΠ²Π°Ρ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡΡ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ GPL ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°ΡΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡΠΌΠΈ ΠΏΠΎΡΠ»Π΅ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΎΠ½ΠΊΠΎΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ.
ΠΡΠΈΡΠΈΠ½ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΠΈ MySQL ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ. ΠΡΠΎ Π΄ΠΎΡΡΡΠΏΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ Ρ ΡΠ»ΡΡΡΠ΅Π½Π½ΡΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ. ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΡΠΎ-ΡΠΎ ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ MySQL, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Π°ΠΌ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ MariaDB.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠΈΡΠΈΠ½Ρ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ MySQL
1. ΠΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΡ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡΡ
Π‘Π΅ΡΠ²Π΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ MySQL ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΡ, ΡΠΏΠΎΡΠΎΠ±Π½ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π³Π»ΡΠ±ΠΎΠΊΠΎ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ Π²ΡΠ΅Π³ΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. ΠΠΈΠ±ΠΊΠΎΡΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ β Π²Π°ΠΆΠ½Π°Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ MySQL, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²ΡΠ΅ ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΠΈ Linux, UNIX ΠΈ Windows. Π, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, ΠΏΡΠΈΡΠΎΠ΄Π° MySQL Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠΎΠ»Π½ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ Π΄Π»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ Ρ ΠΎΡΠ΅Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ .
2. ΠΡΡΠΎΠΊΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ
Π£Π½ΠΈΠΊΠ°Π»ΡΠ½Π°Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠ°ΠΌ ΠΏΠΎ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½ΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΡΠ΅ΡΠ²Π΅Ρ Π±Π°Π· Π΄Π°Π½Π½ΡΡ MySQL ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΠ΅Π³ΠΎ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ ΠΏΠΎΡΡΡΡΠ°ΡΡΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ. ΠΠ΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΡΠΎΠΊΠΎΡΠΊΠΎΡΠΎΡΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ΠΈΠ»ΠΈ Π²Π΅Π±-ΡΠ°ΠΉΡΠΎΠΌ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΌΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΌΠΈΠ»Π»ΠΈΠ°ΡΠ΄Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² Π΄Π΅Π½Ρ, MySQL ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΠΈΡΡ ΡΠ°ΠΌΡΠ΅ Π²ΡΡΠΎΠΊΠΈΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π»ΡΠ±ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π²ΡΡΠΎΠΊΠΎΡΠΊΠΎΡΠΎΡΡΠ½ΡΠΌ ΡΡΠΈΠ»ΠΈΡΠ°ΠΌ Π·Π°Π³ΡΡΠ·ΠΊΠΈ, ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ ΠΊΡΡΠ°ΠΌ ΠΏΠ°ΠΌΡΡΠΈ, ΠΏΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌ ΠΈ Π΄ΡΡΠ³ΠΈΠΌ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ°ΠΌ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ MySQL ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π΄Π»Ρ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈ Π²Π°ΠΆΠ½ΡΡ Π±ΠΈΠ·Π½Π΅Ρ-ΡΠΈΡΡΠ΅ΠΌ.
3. ΠΡΡΠΎΠΊΠ°Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ
ΠΠ΅ΠΏΡΠ΅Π²Π·ΠΎΠΉΠ΄Π΅Π½Π½Π°Ρ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡΡ ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½Π°Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ ΡΠ²Π»ΡΡΡΡΡ ΠΎΡΠ»ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΡΠ΅ΡΡΠ°ΠΌΠΈ MySQL, ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π½Π° MySQL, ΡΡΠΎΠ±Ρ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΡΡΠ³Π»ΠΎΡΡΡΠΎΡΠ½ΡΡ Π±Π΅Π·ΠΎΡΠΊΠ°Π·Π½ΡΡ ΡΠ°Π±ΠΎΡΡ.
4. ΠΠ°Π΄Π΅ΠΆΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ
MySQL ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΌΠΎΡΠ½ΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ Π½Π° ΡΡΠ½ΠΊΠ΅. Π€ΡΠ½ΠΊΡΠΈΠΈ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π² ΡΠ΅Π±Ρ ΠΏΠΎΠ»Π½ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ACID (Π°ΡΠΎΠΌΠ°ΡΠ½ΡΡ , ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΡΡ , ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ , Π½Π°Π΄Π΅ΠΆΠ½ΡΡ ), Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΡΡΠΎΠΊ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΌΠ½ΠΎΠ³ΠΎΠ²Π΅ΡΡΠΈΠΎΠ½Π½ΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ, ΠΊΠΎΠ³Π΄Π° ΡΡΠΈΡΡΠ²Π°ΡΠ΅Π»ΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±Π»ΠΎΠΊΠΈΡΡΡΡ ΠΏΠΈΡΠ°ΡΠ΅Π»ΠΈ ΠΈ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ. ΠΠΎΠ»Π½Π°Ρ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅ΡΡΡ Π·Π° ΡΡΠ΅Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΡΠ»ΠΎΡΠ½ΠΎΠΉ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅, ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΡΠΎΠ²Π½Π΅ΠΉ ΠΈΠ·ΠΎΠ»ΡΡΠΈΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ ΠΈ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π²Π·Π°ΠΈΠΌΠΎΠ±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ.
5. Π‘ΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΠΎΡΠΎΠ½Ρ Π²Π΅Π±-ΡΠ°ΠΉΡΠΎΠ² ΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡ Π΄Π°Π½Π½ΡΡ
MySQL ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠΌ Π΄Π΅-ΡΠ°ΠΊΡΠΎ Π΄Π»Ρ Π²Π΅Π±-ΡΠ°ΠΉΡΠΎΠ² Ρ Π²ΡΡΠΎΠΊΠΎΠΉ ΠΏΠΎΡΠ΅ΡΠ°Π΅ΠΌΠΎΡΡΡΡ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ²ΠΎΠ΅ΠΌΡ Π²ΡΡΠΎΠΊΠΎΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΡΡΠ΅Π·Π²ΡΡΠ°ΠΉΠ½ΠΎ Π±ΡΡΡΡΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π²ΡΡΠ°Π²ΠΊΠΈ Π΄Π°Π½Π½ΡΡ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π²Π΅Π±-ΡΡΠ½ΠΊΡΠΈΠΉ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Π±ΡΡΡΡΠ°Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΠΏΠΎΠΈΡΠΊ. ΠΡΠΈ ΠΆΠ΅ ΡΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΠΎΡΠΎΠ½Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΡ ΠΊ ΡΡΠ΅Π΄Π°ΠΌ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ , Π³Π΄Π΅ MySQL ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΡΡΡ Π΄ΠΎ ΡΠ΅ΡΠ°Π±Π°ΠΉΡΠ½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π»ΠΈΠ±ΠΎ Π΄Π»Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ², Π»ΠΈΠ±ΠΎ Π΄Π»Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡ. ΠΡΡΠ³ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠ°Π±Π»ΠΈΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, B-Π΄Π΅ΡΠ΅Π²ΠΎ ΠΈ Ρ Π΅Ρ-ΠΈΠ½Π΄Π΅ΠΊΡΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΆΠ°ΡΡΠ΅ Π°ΡΡ ΠΈΠ²Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ½ΠΈΠΆΠ°ΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΡ Π΄ΠΎ Π²ΠΎΡΡΠΌΠΈΠ΄Π΅ΡΡΡΠΈ ΠΏΡΠΎΡΠ΅Π½ΡΠΎΠ², Π΄Π΅Π»Π°ΡΡ MySQL ΠΎΡΠ»ΠΈΡΠ½ΡΠΌ Π²ΡΠ±ΠΎΡΠΎΠΌ ΠΊΠ°ΠΊ Π΄Π»Ρ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π±ΠΈΠ·Π½Π΅Ρ-Π°Π½Π°Π»ΠΈΡΠΈΠΊΠΈ.
6. ΠΠ°Π΄Π΅ΠΆΠ½Π°Ρ Π·Π°ΡΠΈΡΠ° Π΄Π°Π½Π½ΡΡ
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π·Π°ΡΠΈΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ Π°ΠΊΡΠΈΠ²ΠΎΠ² ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π°Π΄Π°ΡΠ΅ΠΉ Π½ΠΎΠΌΠ΅Ρ ΠΎΠ΄ΠΈΠ½ Π΄Π»Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ² ΠΏΠΎ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½ΡΡ , MySQL ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠ΅ Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΡ Π·Π°ΡΠΈΡΡ Π΄Π°Π½Π½ΡΡ . Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , MySQL ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠΎΡΠ½ΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ, Π³Π°ΡΠ°Π½ΡΠΈΡΡΡΡΠΈΠ΅, ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π°Π²ΡΠΎΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΈΠΌΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ΅ΡΠ²Π΅ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π²ΠΏΠ»ΠΎΡΡ Π΄ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Ρ. Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° SSH ΠΈ SSL Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΡ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ. ΠΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π΄Π΅ΡΠ°Π»ΡΠ½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΡΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π²ΠΈΠ΄ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌ Π½ΡΠΆΠ½Ρ, Π° ΠΌΠΎΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π΄Π΅ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π·Π°ΡΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΎΡ Π½Π΅ΡΠ°Π½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ°. ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΡΡΠΈΠ»ΠΈΡΡ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ MySQL ΠΈ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΌΠΈ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠ°ΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΈ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π½ΠΎΠ΅ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
7. ΠΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½Π°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ
ΠΠ΄Π½Π° ΠΈΠ· ΠΏΡΠΈΡΠΈΠ½, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ MySQL ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΠΌΠΎΠΉ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠΉ Π² ΠΌΠΈΡΠ΅ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½Π° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π²ΡΠ΅ΡΡΠΎΡΠΎΠ½Π½ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π²ΡΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠ΅ΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π΄Π»Ρ Ρ ΡΠ°Π½ΠΈΠΌΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡ, ΡΡΠΈΠ³Π³Π΅ΡΠΎΠ², ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ, ΠΊΡΡΡΠΎΡΠΎΠ², SQL-ΡΡΠ°Π½Π΄Π°ΡΡΠ° ANSI ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΎΠ³ΠΎ. ΠΠ»Ρ Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ Π²ΡΡΡΠΎΠΈΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ MySQL ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π² Π»ΡΠ±ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
8. ΠΡΠΎΡΡΠΎΡΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ
MySQL ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π±ΡΡΡΡΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ°, ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΎΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π΄ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ΅Π½Π΅Π΅ ΠΏΡΡΠ½Π°Π΄ΡΠ°ΡΠΈ ΠΌΠΈΠ½ΡΡ. ΠΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ ΠΎΡΡΠ°Π΅ΡΡΡ Π²Π΅ΡΠ½ΡΠΌ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° Microsoft Windows, Linux, Macintosh ΠΈΠ»ΠΈ UNIX. ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊ ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΡΠ½ΠΈΠΌΠ°ΡΡ Π±ΠΎΠ»ΡΡΡΡ ΡΠ°ΡΡΡ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Ρ ΡΠΆΠ΅ ΠΏΠ΅ΡΠ΅Π³ΡΡΠΆΠ΅Π½Π½ΡΡ ΡΠ°Π±ΠΎΡΠΎΠΉ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ² Π±Π°Π· Π΄Π°Π½Π½ΡΡ . MySQL ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠ»Π½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡ, ΡΡΡΡΠ°Π½ΡΡΡ Π½Π΅ΠΏΠΎΠ»Π°Π΄ΠΊΠΈ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² MySQL Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΡΠ°Π½ΡΠΈΠΈ.
ΠΠ»Ρ MySQL ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ ΠΏΠΎΡΡΠ°Π²ΡΠΈΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ, Π½Π°ΡΠΈΠ½Π°Ρ ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈ ETL ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Ρ ΠΏΠΎΠ»Π½ΡΠΌ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±Π°Π· Π΄Π°Π½Π½ΡΡ , ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π·Π°Π΄Π°Π½ΠΈΡΠΌΠΈ ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ΠΎΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.9. Π‘Π²ΠΎΠ±ΠΎΠ΄Π° ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ ΠΊΡΡΠ³Π»ΠΎΡΡΡΠΎΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° 7 Π΄Π½Π΅ΠΉ Π² Π½Π΅Π΄Π΅Π»Ρ
ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠΈ Π½Π΅ ΡΠ΅ΡΠ°ΡΡΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΈΡΠ°ΡΡ, ΡΡΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΎΡ ΡΠΈΠΏ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ ΡΡΠ»ΡΠ³, Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ, Ρ ΠΏΡΠΎΠΏΡΠΈΠ΅ΡΠ°ΡΠ½ΡΠΌ ΠΠ. ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅Π³ΠΎ ΡΡΠΏΠ΅Ρ Π° ΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ΅ΡΠ΅Π΄ΠΊΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΈ Π²ΠΎΠΏΡΠΎΡΡ Π²ΠΎΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ±ΡΡΠΊΠΎΠ². ΠΡΠΈ Π·Π°Π±ΠΎΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠ½ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ MySQL, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ΅ΡΠ΅Π· MySQL Enterprise Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΏΠΎΠ»Π½Π°Ρ ΠΊΡΡΠ³Π»ΠΎΡΡΡΠΎΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ±ΡΡΠΊΠΎΠ². MySQL Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΈΠΏΠΈΡΠ½ΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Oracle, ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ Π΄ΠΎΡΡΡΠΏΠ½Π° ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½Π°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠ΅ ΡΠ²ΠΎΠ±ΠΎΠ΄Ρ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ.