π§ ΠΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ MySQL: ΠΏΡΠΎΡΡΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ
ALTER TABLE Π½Π°Π·Π²Π°Π½ΠΈΠ΅_ΡΠ°Π±Π»ΠΈΡΡ ENGINE = InnoDB;
ΠΠ΄Π΅ΡΡ "Π½Π°Π·Π²Π°Π½ΠΈΠ΅_ΡΠ°Π±Π»ΠΈΡΡ" - ΡΡΠΎ ΠΈΠΌΡ Π²Π°ΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΡ, Π° "InnoDB" - ΡΡΠΎ ΠΈΠΌΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄Π²ΠΈΠΆΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ. ΠΠ°ΠΌΠ΅Π½ΠΈΡΠ΅ ΠΈΡ
ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ.
ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°, Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ Π±ΡΠ΄Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ Π½Π° ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ. Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Ρ Π²Π°Ρ Π΅ΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠ°Π² Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ°ΠΊΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
Π£Π΄Π°ΡΠΈ Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄Π²ΠΈΠΆΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ Π² MySQL!
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ MySQL
ΠΠΎΠ±ΡΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°ΡΡ Π² ΠΌΠΈΡ MySQL! Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ, ΠΊΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ MySQL. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ.
1. Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ MySQL?
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΌΡ Π½Π°ΡΠ½Π΅ΠΌ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ "Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ MySQL". Π MySQL, Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ - ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅, ΠΎΡΠ²Π΅ΡΠ°ΡΡΠ΅Π΅ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ Π΄Π°Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ°Ρ . ΠΠ²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ MySQL ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΏΡΠ°Π²ΠΈΠ»Π° Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ, Π·Π°ΠΏΠΈΡΠΈ, ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ .
ΠΠ²Π° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΡ Π΄Π²ΠΈΠΆΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ Π² MySQL - InnoDB ΠΈ MyISAM. ΠΠ½ΠΈ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΏΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌ.
2. ΠΠ°ΠΊ ΡΠ·Π½Π°ΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ?
ΠΠ΅ΡΠ΅Π΄ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄Π²ΠΈΠΆΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ Π²Π°ΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ, ΠΊΠ°ΠΊΠΎΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ SQL-Π·Π°ΠΏΡΠΎΡ:
SHOW TABLE STATUS LIKE 'table_name';
ΠΠ΄Π΅ΡΡ 'table_name' - ΡΡΠΎ ΠΈΠΌΡ ΡΠ°Π±Π»ΠΈΡΡ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ·Π½Π°ΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ Π΄Π²ΠΈΠΆΠΎΠΊ.
3. ΠΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ Π½Π° InnoDB?
ΠΡΠ»ΠΈ Π²Ρ ΡΠ΅ΡΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ Π½Π° InnoDB, ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΡΡΠΈΠΌ ΡΠ°Π³Π°ΠΌ:
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ Π΄Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ .
- Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ InnoDB Π΄Π²ΠΈΠΆΠΎΠΊ Π²ΠΊΠ»ΡΡΠ΅Π½ Π² Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ MySQL. ΠΡΠ»ΠΈ Π½Π΅Ρ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅ Π΅Π³ΠΎ.
- ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΡΠΉΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΡΡ ΡΠ°Π±Π»ΠΈΡΡ, ΡΡΠΎΠ±Ρ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡΡ ΠΈΠΌΡ.
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Π½ΠΎ Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ InnoDB Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΄Π²ΠΈΠΆΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ.
- Π‘ΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΡΠ°ΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π² Π½ΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ.
- Π£Π΄Π°Π»ΠΈΡΠ΅ ΡΡΠ°ΡΡΡ ΡΠ°Π±Π»ΠΈΡΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ½Π°.
ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ SQL-ΠΊΠΎΠ΄Π° Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΈΡ ΡΠ°Π³ΠΎΠ²:
CREATE TABLE backup_table LIKE original_table;
ALTER TABLE backup_table ENGINE=InnoDB;
INSERT INTO backup_table SELECT * FROM original_table;
DROP TABLE original_table;
RENAME TABLE backup_table TO original_table;
ΠΡΠΎΡ ΠΊΠΎΠ΄ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ Ρ InnoDB Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΄Π²ΠΈΠΆΠΊΠ°, ΡΠΊΠΎΠΏΠΈΡΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΡ.
4. ΠΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ Π½Π° MyISAM?
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π²ΡΡΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠΌΡ ΠΌΠ΅ΡΠΎΠ΄Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ Π½Π° MyISAM, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°Π³ΠΈ:
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΡ ΡΠ°Π±Π»ΠΈΡΡ Π΄Π»Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Π΄Π°Π½Π½ΡΡ .
- Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ MyISAM Π΄Π²ΠΈΠΆΠΎΠΊ Π²ΠΊΠ»ΡΡΠ΅Π½ Π² Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ MySQL. ΠΡΠ»ΠΈ Π½Π΅Ρ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅ Π΅Π³ΠΎ.
- ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΡΠΉΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΡΡ ΡΠ°Π±Π»ΠΈΡΡ, ΡΡΠΎΠ±Ρ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡΡ ΠΈΠΌΡ.
- Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Π½ΠΎ Ρ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ MyISAM Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΄Π²ΠΈΠΆΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ.
- Π‘ΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΡΠ°ΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π² Π½ΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ.
- Π£Π΄Π°Π»ΠΈΡΠ΅ ΡΡΠ°ΡΡΡ ΡΠ°Π±Π»ΠΈΡΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ½Π°.
ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ SQL-ΠΊΠΎΠ΄Π° Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΈΡ ΡΠ°Π³ΠΎΠ²:
CREATE TABLE backup_table LIKE original_table;
ALTER TABLE backup_table ENGINE=MyISAM;
INSERT INTO backup_table SELECT * FROM original_table;
DROP TABLE original_table;
RENAME TABLE backup_table TO original_table;
ΠΡΠΎΡ ΠΊΠΎΠ΄ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΡ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ, ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΡ ΡΠ°Π±Π»ΠΈΡΡ Ρ MyISAM Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΄Π²ΠΈΠΆΠΊΠ°, ΡΠΊΠΎΠΏΠΈΡΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΡ.
5. ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ Π·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π΄Π²ΠΈΠΆΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ MySQL. ΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π΄Π²ΠΈΠΆΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΈ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΠ΄ΡΠΌΠ°Π½Π½ΡΠΌ ΡΠ°Π³Π°ΠΌ, ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΏΠΎΡΠ΅ΡΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
ΠΠ΅ ΡΡΠ΅ΡΠ½ΡΠΉΡΠ΅ΡΡ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π΄Π²ΠΈΠΆΠΊΠ°ΠΌΠΈ ΡΠ°Π±Π»ΠΈΡΡ MySQL ΠΈ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. Π£Π΄Π°ΡΠΈ Π²Π°ΠΌ Π² ΠΈΠ·ΡΡΠ΅Π½ΠΈΠΈ MySQL!