ΠΠ°ΠΊ Π΄Π° ΠΈΠ·Π±ΡΠΎΠΈΠΌ MySQL Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΡΡΠ΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ Π½Π° Linux
ΠΠ·Π±ΡΠΎΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π²ΡΠΈΡΠΊΠΈ MySQL Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° Ρ Π΅Π΄ΠΈΠ½ SQL ΠΈΠ·ΡΠ°Π· β SHOW DATABASES; β ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ ΡΠ»Π΅Π΄ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°ΠΌΠΎΠ»ΠΈΡΠ½ΠΎΡΡΡΠ° ΠΊΡΠΌ MySQL ΡΡΡΠ²ΡΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ° mysql. Π’ΠΎΠ²Π° ΡΠ°Π±ΠΎΡΠΈ Π½Π° Π²ΡΡΠΊΠ° Linux Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡ, ΡΠ°Π±ΠΎΡΠ΅ΡΠ° Ρ MySQL 5.7, MySQL 8.x ΠΈΠ»ΠΈ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌ MariaDB ΡΡΡΠ²ΡΡ, ΠΈ ΠΈΠ·ΠΈΡΠΊΠ²Π° ΠΈΠ»ΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΡΠ° SHOW DATABASES, ΠΈΠ»ΠΈ Π΄ΠΎΡΡΡΠΏ ΠΊΠ°ΡΠΎ ΡΡΠΏΠ΅ΡΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π».
Π’ΠΎΠ²Π° ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π½Π°Π΄Ρ Π²ΡΡΠ»Ρ ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π°. Π’ΠΎ ΠΎΠ±Ρ Π²Π°ΡΠ° ΠΎΠΏΡΠΈΠΈ Π·Π° ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅, Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ ΡΠΏΠΎΡΠ΅Π΄ ΠΎΠ±Ρ Π²Π°ΡΠ° Π½Π° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈΡΠ΅, ΡΠ°Π±Π»ΠΎΠ½ΠΈ Π·Π° Π½Π΅ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎ ΡΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅, ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ Π½Π° performance schema ΠΈ ΡΠ΅ΡΡΠΎ ΡΡΠ΅ΡΠ°Π½ΠΈ Π³ΡΠ΅ΡΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ Π·Π°ΡΡΡΠ΄Π½ΡΠ²Π°Ρ Π΄ΠΎΡΠΈ ΠΎΠΏΠΈΡΠ½ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈ.
ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ
ΠΡΠ΅Π΄ΠΈ Π΄Π° ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠΈΡΠ΅, ΠΏΠΎΡΠ²ΡΡΠ΄Π΅ΡΠ΅ ΡΠ»Π΅Π΄Π½ΠΎΡΠΎ:
- MySQL Server ΠΈΠ»ΠΈ MariaDB Π΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ ΠΈ ΡΡΠ»ΡΠ³Π°ΡΠ° Π΅ Π°ΠΊΡΠΈΠ²Π½Π°.
- ΠΠΌΠ°ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ Π°ΠΊΠ°ΡΠ½Ρ Ρ ΠΏΠΎΠ½Π΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΡΠ°
SHOW DATABASES, ΠΈΠ»ΠΈ ΡΠ΅ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°ΡΠ΅ ΠΊΠ°ΡΠΎroot. - ΠΠΈΠ½Π°ΡΠ½ΠΈΡΡ ΡΠ°ΠΉΠ» Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ°
mysqlΠ΅ Π½Π°Π»ΠΈΡΠ΅Π½ Π²PATHΠ½Π° Π²Π°ΡΠ°ΡΠ° ΠΎΠ±Π²ΠΈΠ²ΠΊΠ° (ΠΏΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ Ρwhich mysql).
ΠΠΊΠΎ ΡΠΏΡΠ°Π²Π»ΡΠ²Π°ΡΠ΅ ΠΎΡΠ΄Π°Π»Π΅ΡΠ΅Π½ ΡΡΡΠ²ΡΡ β Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΠ΅Π΄Π° Π·Π° VPS Π₯ΠΎΡΡΠΈΠ½Π³ β ΡΠ²Π΅ΡΠ΅ΡΠ΅ ΡΠ΅ ΡΡΡΠΎ, ΡΠ΅ MySQL ΠΏΠΎΡΡΡΡ (ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ 3306) Π΅ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΈΠ»ΠΈ ΡΠ΅ ΡΠ΅ ΡΠ²ΡΡΠ·Π²Π°ΡΠ΅ ΡΡΠ΅Π· SSH.
Π‘ΡΡΠΏΠΊΠ° 1: ΠΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ Π΄Π°Π»ΠΈ MySQL ΡΡΠ»ΡΠ³Π°ΡΠ° ΡΠ°Π±ΠΎΡΠΈ
ΠΡΠ΅Π΄ΠΈ Π΄Π° ΡΠ΅ ΠΎΠΏΠΈΡΠ°ΡΠ΅ Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ΡΠ΅, ΠΏΠΎΡΠ²ΡΡΠ΄Π΅ΡΠ΅, ΡΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡ Π΅ Π°ΠΊΡΠΈΠ²Π΅Π½:
sudo systemctl status mysqlΠΡΠΈ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈ Π½Π° MariaDB ΠΈΠΌΠ΅ΡΠΎ Π½Π° ΡΡΠ»ΡΠ³Π°ΡΠ° Π΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΎ:
sudo systemctl status mariadbΠΠΊΠΎ ΡΡΠ»ΡΠ³Π°ΡΠ° Π΅ ΡΠΏΡΡΠ½Π°, ΡΡΠ°ΡΡΠΈΡΠ°ΠΉΡΠ΅ Ρ:
sudo systemctl start mysqlΠΠ΅ΡΡΠΏΠ΅ΡΠ½ΠΎΡΠΎ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ ΠΏΠΎΡΡΠΈ Π²ΠΈΠ½Π°Π³ΠΈ ΡΠ΅ ΠΎΠ±ΡΡΠ½ΡΠ²Π° Π² journalctl -xe ΠΈΠ»ΠΈ Π² /var/log/mysql/error.log. ΠΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ ΡΠ΅Π·ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΏΡΡΠ²ΠΎ, ΠΏΡΠ΅Π΄ΠΈ Π΄Π° ΠΏΡΠΈΠ΅ΠΌΠ΅ΡΠ΅, ΡΠ΅ ΠΈΠΌΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ°.
Π‘ΡΡΠΏΠΊΠ° 2: Π£Π΄ΠΎΡΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ ΡΠ°ΠΌΠΎΠ»ΠΈΡΠ½ΠΎΡΡΡΠ° ΡΠΈ ΠΊΡΠΌ MySQL ΡΡΡΠ²ΡΡΠ°
Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎ Π²Π»ΠΈΠ·Π°Π½Π΅
mysql -u root -p-u rootβ ΡΠΊΠ°Π·Π²Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΈΠΌΠ΅ Π·Π° MySQL. ΠΠ°ΠΌΠ΅Π½Π΅ΡΠ΅rootΡ Π²ΡΠ΅ΠΊΠΈ Π²Π°Π»ΠΈΠ΄Π΅Π½ Π°ΠΊΠ°ΡΠ½Ρ.-pβ ΠΏΠΎΠ΄ΠΊΠ°Π½Π²Π° Π·Π° ΠΏΠ°ΡΠΎΠ»Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎ. ΠΠΈΠΊΠΎΠ³Π° Π½Π΅ ΠΏΡΠ΅Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠ°ΡΠΎΠ»Π°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π° ΡΡΠ΅Π΄Π° (Π½Π°ΠΏΡ.-pMyPassword), ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΡ Π΅ Π²ΠΈΠ΄ΠΈΠΌΠ° Π² ΡΠΏΠΈΡΡΡΠΈΡΠ΅ Ρ ΠΏΡΠΎΡΠ΅ΡΠΈ ΠΈ ΠΈΡΡΠΎΡΠΈΡΡΠ° Π½Π° ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°ΡΠ°.
Π‘Π»Π΅Π΄ Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π½Π° ΠΏΠ°ΡΠΎΠ»Π° ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ²Π° ΠΏΠΎΠ΄ΠΊΠ°Π½Π°ΡΠ° Π½Π° MySQL:
mysql>Π‘Π²ΡΡΠ·Π²Π°Π½Π΅ ΠΊΡΠΌ ΠΎΡΠ΄Π°Π»Π΅ΡΠ΅Π½ Ρ ΠΎΡΡ ΠΈΠ»ΠΈ Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ΅Π½ ΠΏΠΎΡΡ
mysql -u root -p -h 192.168.1.100 -P 3307-hβ ΡΠΊΠ°Π·Π²Π° IP Π°Π΄ΡΠ΅ΡΠ° ΠΈΠ»ΠΈ Ρ ΠΎΡΡΠ½Π΅ΠΉΠΌΠ° Π½Π° ΠΎΡΠ΄Π°Π»Π΅ΡΠ΅Π½ΠΈΡ Ρ ΠΎΡΡ.-Pβ ΡΠΊΠ°Π·Π²Π° Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ΅Π½ Π½ΠΎΠΌΠ΅Ρ Π½Π° ΠΏΠΎΡΡ.
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ» Ρ ΠΎΠΏΡΠΈΠΈ Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ
ΠΠ° ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ ΠΈ cron Π·Π°Π΄Π°ΡΠΈ, ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΠΉΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ Π² Π·Π°ΡΠΈΡΠ΅Π½ ΡΠ°ΠΉΠ» Ρ ΠΎΠΏΡΠΈΠΈ, Π²ΠΌΠ΅ΡΡΠΎ Π΄Π° Π³ΠΈ Π²Π³ΡΠ°ΠΆΠ΄Π°ΡΠ΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ°:
# ~/.my.cnf
[client]
user=root
password=YourSecurePasswordΠΠ³ΡΠ°Π½ΠΈΡΠ΅ΡΠ΅ ΠΏΡΠ°Π²Π°ΡΠ° Π²Π΅Π΄Π½Π°Π³Π° ΡΠ»Π΅Π΄ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»Π°:
chmod 600 ~/.my.cnfΠ‘ Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° ΡΠΎΠ·ΠΈ ΡΠ°ΠΉΠ», mysql ΡΠ΅ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π° Π±Π΅Π· Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ ΡΠ»Π°Π³ΠΎΠ²Π΅:
mysqlΠ‘ΡΡΠΏΠΊΠ° 3: ΠΠ·Π±ΡΠΎΠΈΡΠ΅ Π²ΡΠΈΡΠΊΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ
ΠΠ΅Π΄Π½ΡΠΆ Π² MySQL ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°ΡΠ°, ΠΈΠ·ΠΏΡΠ»Π½Π΅ΡΠ΅:
SHOW DATABASES;ΠΡΠΈΠΌΠ΅ΡΠ΅Π½ ΠΈΠ·Ρ ΠΎΠ΄ ΠΏΡΠΈ ΠΏΡΡΡΠ½ΠΎ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ MySQL 8 Π΅ΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ:
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)Π’Π΅Π·ΠΈ ΡΠ΅ΡΠΈΡΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΡΡ Π΅ΠΌΠΈ ΠΏΡΠΈΡΡΡΡΠ²Π°Ρ ΠΏΡΠΈ Π²ΡΡΠΊΠ° ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡ Π½Π° MySQL:
| Π‘Ρ Π΅ΠΌΠ° | ΠΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ |
|---|---|
| `information_schema` | ΠΠΈΡΡΡΠ°Π»Π½Π° ΡΡ Π΅ΠΌΠ° ΡΠ°ΠΌΠΎ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅, ΠΊΠΎΡΡΠΎ ΠΈΠ·Π»Π°Π³Π° ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ Π·Π° Π²ΡΠΈΡΠΊΠΈ ΠΎΡΡΠ°Π½Π°Π»ΠΈ ΡΡ Π΅ΠΌΠΈ, ΡΠ°Π±Π»ΠΈΡΠΈ, ΠΊΠΎΠ»ΠΎΠ½ΠΈ ΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ |
| `mysql` | ΠΡΠ½ΠΎΠ²Π½ΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ Π·Π° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ, Π΄Π°Π½Π½ΠΈ Π·Π° ΡΠ°ΡΠΎΠ²ΠΈΡΠ΅ Π·ΠΎΠ½ΠΈ ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Π½Π° ΡΡΡΠ²ΡΡΠ° |
| `performance_schema` | ΠΠ°Π½Π½ΠΈ Π·Π° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠ°Π½Π΅ Π½Π° Π½ΠΈΡΠΊΠΎ Π½ΠΈΠ²ΠΎ Π·Π° ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠ°Π½Π΅ Π½Π° Π·Π°ΡΠ²ΠΊΠΈ ΠΈ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ° |
| `sys` | Π§Π΅ΡΠΈΠΌΠΈ ΠΎΡ Ρ ΠΎΡΠ° ΠΈΠ·Π³Π»Π΅Π΄ΠΈ, ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½ΠΈ Π²ΡΡΡ Ρ `performance_schema` |
Π‘ΡΠ·Π΄Π°Π΄Π΅Π½ΠΈΡΠ΅ ΠΎΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ²Π°Ρ Π·Π°Π΅Π΄Π½ΠΎ Ρ ΡΠ΅Π·ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΡΡ Π΅ΠΌΠΈ.
Π‘ΡΡΠΏΠΊΠ° 4: Π€ΠΈΠ»ΡΡΠΈΡΠ°ΠΉΡΠ΅ ΡΠΏΠΈΡΡΠΊΠ° Ρ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ
Π€ΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ ΠΏΠΎ ΡΠ°Π±Π»ΠΎΠ½ Π½Π° ΠΈΠΌΠ΅ΡΠΎ
SHOW DATABASES ΠΏΡΠΈΠ΅ΠΌΠ° ΠΊΠ»Π°ΡΠ·Π° LIKE, ΠΊΠΎΠ΅ΡΠΎ Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, ΠΊΠΎΠ³Π°ΡΠΎ ΡΡΡΠ²ΡΡΡΡ Ρ
ΠΎΡΡΠ²Π° Π΄Π΅ΡΠ΅ΡΠΊΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ:
SHOW DATABASES LIKE 'wp_%';Π’ΠΎΠ²Π° Π²ΡΡΡΠ° ΡΠ°ΠΌΠΎ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΡΠΈΠΈΡΠΎ ΠΈΠΌΠ΅Π½Π° Π·Π°ΠΏΠΎΡΠ²Π°Ρ Ρ wp_ β ΠΎΠ±ΡΠ° ΠΊΠΎΠ½Π²Π΅Π½ΡΠΈΡ Π·Π° ΠΈΠΌΠ΅Π½ΡΠ²Π°Π½Π΅ ΠΏΡΠΈ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈ Π½Π° WordPress.
ΠΠ°ΡΠ²ΠΊΠ° ΠΊΡΠΌ information_schema Π·Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΎ ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅
ΠΠ° ΠΏΠΎ-ΠΏΡΠ΅ΡΠΈΠ·Π½ΠΎ ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅, ΠΏΡΠ°Π²Π΅ΡΠ΅ Π·Π°ΡΠ²ΠΊΠ° Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΊΡΠΌ ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° information_schema.SCHEMATA:
SELECT schema_name, default_character_set_name, default_collation_name
FROM information_schema.SCHEMATA
WHERE schema_name NOT IN ('information_schema', 'mysql', 'performance_schema', 'sys')
ORDER BY schema_name;Π’ΠΎΠ·ΠΈ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠΈΠ»ΡΡΠΈΡΠ°ΡΠ΅ ΠΏΠΎ Π½Π°Π±ΠΎΡ ΠΎΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈ, ΡΡΠΏΠΎΡΡΠ°Π²ΡΠ½Π΅ ΠΈΠ»ΠΈ Π²ΡΡΠΊΠ° Π΄ΡΡΠ³Π° ΠΊΠΎΠ»ΠΎΠ½Π° Ρ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ β Π½Π΅ΡΠΎ, ΠΊΠΎΠ΅ΡΠΎ SHOW DATABASES Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈ.
Π‘ΡΡΠΏΠΊΠ° 5: ΠΡΠ΅Π³Π»Π΅Π΄Π°ΠΉΡΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
ΠΠ° Π΄Π° ΠΏΡΠ΅Π³Π»Π΅Π΄Π°ΡΠ΅ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, ΠΏΡΠ΅Π²ΠΊΠ»ΡΡΠ΅ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Ρ USE ΠΈ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΠΈΠ·Π±ΡΠΎΠΈΡΠ΅ Π½Π΅ΠΉΠ½ΠΈΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠΈ:
USE database_name;
SHOW TABLES;ΠΠ° Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠΈΡΠ΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠΈΡΠ΅, Π±ΡΠΎΡ Π½Π° ΡΠ΅Π΄ΠΎΠ²Π΅ΡΠ΅ ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈΡΠ΅ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π² Π΅Π΄Π½Π° Π·Π°ΡΠ²ΠΊΠ°:
SELECT
table_name,
engine,
table_rows,
ROUND((data_length + index_length) / 1024 / 1024, 2) AS size_mb
FROM information_schema.TABLES
WHERE table_schema = 'database_name'
ORDER BY (data_length + index_length) DESC;Π’ΠΎΠ²Π° Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎ-ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΎΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»Π½ΠΎΡΠΎ SHOW TABLES ΠΈ Π΅ Π²ΠΈΠ΄ΡΡ Π·Π°ΡΠ²ΠΊΠ°, ΠΊΠΎΡΡΠΎ DBA ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΠΏΡΠ΅Π΄ΠΈ ΠΏΠ»Π°Π½ΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ ΠΈΠ»ΠΈ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ Π·Π° Π°ΡΡ
ΠΈΠ²ΠΈΡΠ°Π½Π΅.
Π‘ΡΡΠΏΠΊΠ° 6: ΠΠ·Π»Π΅Π·ΡΠ΅ ΠΎΡ MySQL ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°ΡΠ°
EXIT;ΠΠ»ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΠΊΠ»Π°Π²ΠΈΡΠ½Π°ΡΠ° ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ Ctrl+D.
ΠΠ΅ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½Π° ΡΠΏΠΎΡΡΠ΅Π±Π°: ΠΠ·Π±ΡΠΎΡΠ²Π°Π½Π΅ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°ΡΠ°
Π Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠΈ β ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ Π·Π° Π°ΡΡ ΠΈΠ²ΠΈΡΠ°Π½Π΅, Π°Π³Π΅Π½ΡΠΈ Π·Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅, deployment ΠΊΡΠΊΠΈ β ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ·Π²Π»Π΅ΡΠ΅ΡΠ΅ ΡΠΏΠΈΡΡΠΊΠ° Ρ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Π±Π΅Π· Π΄Π° Π²Π»ΠΈΠ·Π°ΡΠ΅ Π² ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½Π° ΡΠ΅ΡΠΈΡ.
ΠΠ΄Π½ΠΎΡΠ΅Π΄ΠΎΠ²Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ ΡΠ»Π°Π³Π° -e
mysql -u root -p -e "SHOW DATABASES;"ΠΠΎΡΠΈΡΠΊΠ°Π½Π΅ Π½Π° Π·Π°Π³Π»Π°Π²Π½ΠΈΡ ΡΠ΅Π΄ Π·Π° ΡΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅
mysql -u root -p --skip-column-names -e "SHOW DATABASES;" 2>/dev/nullΠ€Π»Π°Π³ΡΡ --skip-column-names ΠΏΡΠ΅ΠΌΠ°Ρ
Π²Π° Π·Π°Π³Π»Π°Π²ΠΈΠ΅ΡΠΎ Database, ΠΏΡΠΎΠΈΠ·Π²Π΅ΠΆΠ΄Π°ΠΉΠΊΠΈ ΡΠΈΡΡ ΠΈΠ·Ρ
ΠΎΠ΄, ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡ Π·Π° ΠΈΡΠ΅ΡΠ°ΡΠΈΡ Π² ΡΠΈΠΊΡΠ» Π½Π° ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°ΡΠ°:
for db in $(mysql -u root -p --skip-column-names -e "SHOW DATABASES;" 2>/dev/null); do
echo "Processing: $db"
doneΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° mysqlshow ΠΊΠ°ΡΠΎ Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π°
ΠΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° mysqlshow ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π±ΡΡΠ· ΠΏΡΠ΅Π³Π»Π΅Π΄, Π±Π΅Π· Π΄Π° Π²Π»ΠΈΠ·Π°ΡΠ΅ Π² MySQL ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°ΡΠ°:
mysqlshow -u root -pΠ’Ρ ΠΈΠ·Π±ΡΠΎΡΠ²Π° Π²ΡΠΈΡΠΊΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» ΠΌΠΎΠΆΠ΅ Π΄Π° Π²ΠΈΠΆΠ΄Π°, ΠΈ ΠΏΡΠΈΠ΅ΠΌΠ° Π°ΡΠ³ΡΠΌΠ΅Π½Ρ Ρ ΠΈΠΌΠ΅ΡΠΎ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π·Π° Π΄Π΅ΡΠ°ΠΉΠ»Π΅Π½ ΠΏΡΠ΅Π³Π»Π΅Π΄ Π½Π° Π½ΠΈΠ²ΠΎ ΡΠ°Π±Π»ΠΈΡΠ°:
mysqlshow -u root -p database_nameΠΠ±Ρ Π²Π°Ρ Π½Π° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈΡΠ΅: ΠΠ°ΡΠΎ Π½ΡΠΊΠΎΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΡΠ° ΡΠΊΡΠΈΡΠΈ
Π’ΠΎΠ²Π° Π΅ Π΅Π΄Π½ΠΎ ΠΎΡ Π½Π°ΠΉ-Π½Π΅ΡΠ°Π·Π±ΡΠ°Π½ΠΈΡΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ Π² MySQL. ΠΠΎΠ³Π°ΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ Π½ΡΠΌΠ° Π³Π»ΠΎΠ±Π°Π»Π½Π°ΡΠ° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ SHOW DATABASES, SHOW DATABASES Π²ΡΡΡΠ° ΡΠ°ΠΌΠΎ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Π·Π° ΠΊΠΎΠΈΡΠΎ ΡΠΎΠ·ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» ΠΏΡΠΈΡΠ΅ΠΆΠ°Π²Π° ΠΏΠΎΠ½Π΅ Π΅Π΄Π½Π° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ. Π’ΠΎΠ²Π° Π΅ ΠΏΠΎ Π·Π°ΠΌΠΈΡΡΠ» β ΡΠΎΠ²Π° Π΅ Π³ΡΠ°Π½ΠΈΡΠ° Π½Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ°, Π° Π½Π΅ Π³ΡΠ΅ΡΠΊΠ°.
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅: ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΏΡΠ»Π½ΠΈ SHOW DATABASES; ΠΈ Π΄Π° Π²ΠΈΠ΄ΠΈ ΡΠ°ΠΌΠΎ Π΅Π΄Π½Π° ΠΈΠ»ΠΈ Π΄Π²Π΅ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Π΄ΠΎΡΠΈ Π°ΠΊΠΎ ΡΡΡΠ²ΡΡΡΡ Ρ
ΠΎΡΡΠ²Π° ΠΏΠ΅ΡΠ΄Π΅ΡΠ΅Ρ. Π’ΠΎΠ²Π° Π΅ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅. ΠΠΊΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ ΡΡΡΠ±Π²Π° Π΄Π° Π²ΠΈΠΆΠ΄Π° ΠΏΡΠ»Π½ΠΈΡ ΡΠΏΠΈΡΡΠΊ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅ΡΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΡΠ° ΠΈΠ·ΡΠΈΡΠ½ΠΎ:
GRANT SHOW DATABASES ON *.* TO 'username'@'host';
FLUSH PRIVILEGES;ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΡΠΎΠ²Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ ΠΏΠ΅ΡΡΠ΅Π»ΠΈΠ²ΠΎ. Π ΡΡΠ΅Π΄ΠΈ Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π½Π°Π΅ΠΌΠ°ΡΠ΅Π»ΠΈ β ΠΊΠ°ΡΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π·Π° Π‘ΠΏΠΎΠ΄Π΅Π»Π΅Π½ Π£Π΅Π± Π₯ΠΎΡΡΠΈΠ½Π³ ΠΈΠ»ΠΈ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π½Π° Dedicated Π‘ΡΡΠ²ΡΡΠΈ Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ β ΠΈΠ·Π»Π°Π³Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠ»Π½ΠΈΡ ΡΠΏΠΈΡΡΠΊ Ρ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΅ ΡΠΈΡΠΊ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ°.
MySQL ΡΡΠ΅ΡΡ MariaDB: ΠΠΎΠ²Π΅Π΄Π΅Π½ΡΠ΅ΡΠΊΠΈ ΡΠ°Π·Π»ΠΈΠΊΠΈ
Π MySQL, ΠΈ MariaDB ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ SHOW DATABASES; ΠΈ information_schema.SCHEMATA, Π½ΠΎ ΠΈΠΌΠ° ΡΠΈΠ½ΠΈ ΡΠ°Π·Π»ΠΈΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠΈ ΡΡΡΡΠ²Π° Π΄Π° Π·Π½Π°Π΅ΡΠ΅:
| Π€ΡΠ½ΠΊΡΠΈΡ | MySQL 8.x | MariaDB 10.x |
|---|---|---|
| Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ `SHOW DATABASES` | ΠΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ | ΠΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ |
| `information_schema.SCHEMATA` | ΠΠ°Π»ΠΈΡΠ΅Π½ | ΠΠ°Π»ΠΈΡΠ΅Π½ |
| ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ `performance_schema` | ΠΠΊΡΠΈΠ²ΠΈΡΠ°Π½ | ΠΠΊΡΠΈΠ²ΠΈΡΠ°Π½ (10.5+) |
| Π‘Ρ Π΅ΠΌΠ° `sys` | ΠΠΊΠ»ΡΡΠ΅Π½Π° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ | ΠΠΎ ΠΈΠ·Π±ΠΎΡ, Π½Π΅ Π²ΠΈΠ½Π°Π³ΠΈ ΠΏΡΠΈΡΡΡΡΠ²Π° |
| `SHOW DATABASES LIKE` | ΠΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ | ΠΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ |
| ΠΠΎΠ΄Π΅Π» Π½Π° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ, Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° ΡΠΎΠ»ΠΈ | ΠΠ³ΡΠ°Π΄Π΅Π½ (8.0+) | ΠΠ³ΡΠ°Π΄Π΅Π½ (10.0.5+) |
| ΠΠΈΠ½Π°ΡΠ΅Π½ ΡΠ°ΠΉΠ» Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ° `mysql` | `mysql` | `mysql` ΠΈΠ»ΠΈ `mariadb` |
ΠΡΠΈ ΠΏΠΎ-Π½ΠΎΠ²ΠΈ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈ Π½Π° MariaDB, ΠΊΠ°Π½ΠΎΠ½ΠΈΡΠ½ΠΈΡΡ Π±ΠΈΠ½Π°ΡΠ΅Π½ ΡΠ°ΠΉΠ» ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ mariadb Π²ΠΌΠ΅ΡΡΠΎ mysql, Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Π½Π° Π²ΡΡΠ·ΠΊΠ° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ Π·Π°ΠΏΠ°Π·Π²Π° ΠΎΠ±ΡΠ°ΡΠ½Π°ΡΠ° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ.
Π§Π΅ΡΡΠΈ Π³ΡΠ΅ΡΠΊΠΈ ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΈ ΠΏΠΎΠΏΡΠ°Π²ΠΈΡΠ΅
ERROR 1045 (28000): Access denied for user
Π’ΠΎΠ²Π° ΠΎΠ·Π½Π°ΡΠ°Π²Π°, ΡΠ΅ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅ΡΠΎ Π΅ Π½Π΅ΡΡΠΏΠ΅ΡΠ½ΠΎ. ΠΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ ΠΎΡΠ½ΠΎΠ²ΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΈΠΌΠ΅, ΠΏΠ°ΡΠΎΠ»Π°ΡΠ° ΠΈ Ρ
ΠΎΡΡΠ°. ΠΠ° root Π² MySQL 8, ΠΏΡΠΈΡΡΠ°Π²ΠΊΠ°ΡΠ° Π·Π° ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π΅ caching_sha2_password. ΠΠΊΠΎ Π²Π°ΡΠΈΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ Π½Π΅ Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°, ΡΠ²ΡΡΠΆΠ΅ΡΠ΅ ΡΠ΅ ΡΡΠ΅Π· ΡΠΎΠΊΠ΅Ρ:
sudo mysql -u rootΠ’ΠΎΠ²Π° Π·Π°ΠΎΠ±ΠΈΠΊΠ°Π»Ρ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅ΡΠΎ Ρ ΠΏΠ°ΡΠΎΠ»Π° ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ° ΠΊΠ°ΡΠΎ Linux ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ root, ΡΠ°Π·ΡΠΈΡΠ°ΠΉΠΊΠΈ Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ²Π° Π½Π° ΠΏΡΠΈΡΡΠ°Π²ΠΊΠ°ΡΠ° auth_socket ΠΈΠ»ΠΈ unix_socket.
ERROR 2002 (HY000): Can't connect to local MySQL server through socket
MySQL Π΄Π΅ΠΌΠΎΠ½ΡΡ Π½Π΅ ΡΠ°Π±ΠΎΡΠΈ ΠΈΠ»ΠΈ ΠΏΡΡΡΡ Π΄ΠΎ ΡΠ°ΠΉΠ»Π° Π½Π° ΡΠΎΠΊΠ΅ΡΠ° Π΅ Π³ΡΠ΅ΡΠ΅Π½. ΠΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅:
sudo systemctl status mysql
ls -la /var/run/mysqld/mysqld.sockERROR 1044 (42000): Access denied for user to database
ΠΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ Π΅ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΠ΅Π½, Π½ΠΎ Π½ΡΠΌΠ° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ Π²ΡΡΡ Ρ ΡΠ΅Π»Π΅Π²Π°ΡΠ° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. ΠΡΠ΅Π³Π»Π΅Π΄Π°ΠΉΡΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈΡΠ΅ Ρ:
SHOW GRANTS FOR 'username'@'host';ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ° ΠΌΠ°ΡΡΠΈΡΠ° Π·Π° Π²Π·Π΅ΠΌΠ°Π½Π΅ Π½Π° ΡΠ΅ΡΠ΅Π½ΠΈΡ
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΡΠ°Π·ΠΈ ΡΠΏΡΠ°Π²ΠΊΠ°, Π·Π° Π΄Π° ΠΈΠ·Π±Π΅ΡΠ΅ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΈΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π·Π° Π²Π°ΡΠ°ΡΠ° ΡΠΈΡΡΠ°ΡΠΈΡ:
| Π‘ΡΠ΅Π½Π°ΡΠΈΠΉ | ΠΡΠ΅ΠΏΠΎΡΡΡΠ°Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° |
|---|---|
| ΠΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΠ·ΡΠ»Π΅Π΄Π²Π°Π½Π΅ | `SHOW DATABASES;` Π² ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°ΡΠ° `mysql` |
| Π€ΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ ΠΏΠΎ ΠΏΡΠ΅ΡΠΈΠΊΡ Π½Π° ΠΈΠΌΠ΅ΡΠΎ | `SHOW DATABASES LIKE 'prefix_%';` |
| ΠΠ·Π±ΡΠΎΡΠ²Π°Π½Π΅ Ρ Π±ΠΎΠ³Π°ΡΠΈ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ | ΠΠ°ΡΠ²ΠΊΠ° ΠΊΡΠΌ `information_schema.SCHEMATA` |
| Π‘ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°ΡΠ° / Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ | `mysql -e "SHOW DATABASES;" βskip-column-names` |
| ΠΡΡΠ· ΠΏΡΠ΅Π³Π»Π΅Π΄ Π±Π΅Π· ΠΎΠ±Π²ΠΈΠ²ΠΊΠ° | `mysqlshow -u root -p` |
| ΠΡΠ΄Π°Π»Π΅ΡΠ΅Π½ ΡΡΡΠ²ΡΡ, Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ΅Π½ ΠΏΠΎΡΡ | `mysql -u root -p -h host -P port` |
| ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ Π±Π΅Π· ΠΏΠ°ΡΠΎΠ»Π° | Π€Π°ΠΉΠ» Ρ ΠΎΠΏΡΠΈΠΈ `~/.my.cnf` Ρ `chmod 600` |
| ΠΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ Π΄ΠΎΡΡΡΠΏΠ° | `SHOW GRANTS FOR 'user'@'host';` |
ΠΠ»ΡΡΠΎΠ²ΠΈ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ ΠΈΠ·Π²ΠΎΠ΄ΠΈ
SHOW DATABASES;Π΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ ΠΎΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ. ΠΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π±Π΅Π· Π³Π»ΠΎΠ±Π°Π»Π½Π° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡSHOW DATABASESΠ²ΠΈΠΆΠ΄Π° ΡΠ°ΠΌΠΎ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Π΄ΠΎ ΠΊΠΎΠΈΡΠΎ ΠΈΠΌΠ° ΠΈΠ·ΡΠΈΡΠ΅Π½ Π΄ΠΎΡΡΡΠΏ β ΡΠΎΠ²Π° Π΅ ΡΡΠ½ΠΊΡΠΈΡ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ, Π° Π½Π΅ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ.- ΠΠΈΠΊΠΎΠ³Π° Π½Π΅ ΠΏΡΠ΅Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠ°ΡΠΎΠ»ΠΈ ΠΊΠ°ΡΠΎ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π° ΡΡΠ΅Π΄Π°. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅
-pΠ·Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΈ ΡΠ΅ΡΠΈΠΈ ΠΈ~/.my.cnfΠ·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ. information_schema.SCHEMATAΠ΅ ΡΡΡΠΎΠ³ΠΎ ΠΏΠΎ-ΠΌΠΎΡΠ΅Π½ ΠΎΡSHOW DATABASESΠ·Π° ΡΠΊΡΠΈΠΏΡΠΈΡΠ°Π½ΠΈ ΠΈΠ»ΠΈ ΡΠΈΠ»ΡΡΠΈΡΠ°Π½ΠΈ Π·Π°ΡΠ²ΠΊΠΈ.- ΠΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°
mysqlshowΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΠΈ ΠΎΡΠΈΠ³ΡΡΡΠ²Π° Π±ΡΡΠ·Π°, Π½Π΅ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½Π° ΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΈΡ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ. - ΠΡΠΈ MySQL 8, ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅ΡΠΎ ΡΡΠ΅Π· ΡΠΎΠΊΠ΅Ρ (
sudo mysql) Π΅ ΡΠ΅ΡΡΠΎ Π½Π°ΠΉ-Π±ΡΡΠ·ΠΈΡΡ ΠΏΡΡ Π΄ΠΎ root Π΄ΠΎΡΡΡΠΏ Π½Π° Π»ΠΎΠΊΠ°Π»Π΅Π½ ΡΡΡΠ²ΡΡ. - ΠΡΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π° VPS Ρ cPanel ΠΈΠ»ΠΈ Π΄ΡΡΠ³ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Π½ ΠΏΠ°Π½Π΅Π», ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡΡΡ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π° ΠΏΠ°Π½Π΅Π»Π° Π΅ GUI ΠΎΠ±Π²ΠΈΠ²ΠΊΠ° ΠΎΠΊΠΎΠ»ΠΎ ΡΡΡΠΈΡΠ΅ ΡΠ΅Π·ΠΈ SQL ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ β ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈ Π²ΠΈ Π΄Π°Π²Π° ΠΏΡΠ»Π΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ», ΠΊΠΎΠ³Π°ΡΠΎ GUI Π½Π΅ Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ΅Π½.
- ΠΠ° ΡΡΠ΅Π΄ΠΈ, ΠΊΡΠ΄Π΅ΡΠΎ Π΄ΠΎΡΡΡΠΏΡΡ Π΄ΠΎ Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ Π΅ ΡΠ²ΡΡΠ·Π°Π½ ΡΡΡ SSL Π‘Π΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ ΠΈ ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½ΠΈ Π²ΡΡΠ·ΠΊΠΈ, Π΄ΠΎΠ±Π°Π²Π΅ΡΠ΅
--ssl-mode=REQUIREDΠΊΡΠΌ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½ΠΈΡΡΠ° Π½Π° Π²Π°ΡΠΈΡ ΠΊΠ»ΠΈΠ΅Π½Ρmysql, Π·Π° Π΄Π° Π½Π°Π»ΠΎΠΆΠΈΡΠ΅ TLS ΠΏΡΠΈ ΠΏΡΠ΅Π½ΠΎΡ.
Π§ΠΠ
Π: ΠΠ°ΡΠΎ SHOW DATABASES Π½Π΅ ΠΏΠΎΠΊΠ°Π·Π²Π° Π²ΡΠΈΡΠΊΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π° ΠΌΠΎΡ ΡΡΡΠ²ΡΡ?
Π: ΠΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈΡΡ Π°ΠΊΠ°ΡΠ½Ρ, Ρ ΠΊΠΎΠΉΡΠΎ ΡΡΠ΅ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΠ΅Π½ΠΈ, Π½ΡΠΌΠ° Π³Π»ΠΎΠ±Π°Π»Π½Π°ΡΠ° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ SHOW DATABASES. MySQL Π²ΡΡΡΠ° ΡΠ°ΠΌΠΎ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Π·Π° ΠΊΠΎΠΈΡΠΎ ΡΠΎΠ·ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» ΠΏΡΠΈΡΠ΅ΠΆΠ°Π²Π° ΠΏΠΎΠ½Π΅ Π΅Π΄Π½Π° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ. Π£Π΄ΠΎΡΡΠΎΠ²Π΅ΡΠ΅ΡΠ΅ ΡΠ΅ ΠΊΠ°ΡΠΎ root ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅ΡΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΡΠ° SHOW DATABASES, Π·Π° Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΏΡΠ»Π½ΠΈΡ ΡΠΏΠΈΡΡΠΊ.
Π: ΠΠ°ΠΊΠ²Π° Π΅ ΡΠ°Π·Π»ΠΈΠΊΠ°ΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ SHOW DATABASES ΠΈ Π·Π°ΡΠ²ΠΊΠ° ΠΊΡΠΌ information_schema.SCHEMATA?
Π: Π Π΄Π²Π΅ΡΠ΅ Π²ΡΡΡΠ°Ρ ΡΠΏΠΈΡΡΠΊΠ° Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΈ ΡΡ
Π΅ΠΌΠΈ, Π½ΠΎ information_schema.SCHEMATA ΠΈΠ·Π»Π°Π³Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΈ Ρ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ β Π½Π°Π±ΠΎΡ ΠΎΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅, ΡΡΠΏΠΎΡΡΠ°Π²ΡΠ½Π΅ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ β ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΏΡΠ»Π½ΠΎ SQL ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ Ρ WHERE, ORDER BY ΠΈ JOIN. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ SHOW DATABASES Π·Π° Π±ΡΡΠ·ΠΈ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈ information_schema.SCHEMATA Π·Π° ΡΠΊΡΠΈΠΏΡΠΈΡΠ°Π½ΠΈ ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΈΡΠΈΡΠ½ΠΈ Π·Π°ΡΠ²ΠΊΠΈ.
Π: ΠΠ°ΠΊ Π΄Π° ΠΈΠ·Π±ΡΠΎΡ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π° ΠΎΡΠ΄Π°Π»Π΅ΡΠ΅Π½ MySQL ΡΡΡΠ²ΡΡ, Π±Π΅Π· Π΄Π° ΠΎΡΠ²Π°ΡΡΠΌ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½Π° ΡΠ΅ΡΠΈΡ?
Π: ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΡΠ»Π°Π³Π° -e Π² ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ Ρ ΠΎΠΏΡΠΈΠΈ Π·Π° Ρ
ΠΎΡΡ ΠΈ ΠΏΠΎΡΡ:
mysql -u root -p -h remote-host -P 3306 -e "SHOW DATABASES;" --skip-column-namesΠ: ΠΠΎΠ³Π° Π»ΠΈ Π΄Π° ΠΈΠ·Π±ΡΠΎΡ MySQL Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Π±Π΅Π· Π΄Π° Π·Π½Π°ΠΌ root ΠΏΠ°ΡΠΎΠ»Π°ΡΠ°?
Π: ΠΠ° Π»ΠΎΠΊΠ°Π»Π΅Π½ ΡΡΡΠ²ΡΡ, ΠΊΡΠ΄Π΅ΡΠΎ ΠΈΠΌΠ°ΡΠ΅ Linux root Π΄ΠΎΡΡΡΠΏ, Π΄Π°. ΠΡΠΈΡΡΠ°Π²ΠΊΠ°ΡΠ° auth_socket Π½Π° MySQL (ΠΈΠ»ΠΈ unix_socket ΠΏΡΠΈ MariaDB) ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π° Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° Linux OS ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ. ΠΠ·ΠΏΡΠ»Π½Π΅ΡΠ΅ sudo mysql ΠΈ ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π΄ΠΎΡΡΡΠΏ ΠΊΠ°ΡΠΎ MySQL ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ root Π±Π΅Π· ΠΏΠΎΠ΄ΠΊΠ°Π½Π° Π·Π° ΠΏΠ°ΡΠΎΠ»Π°.
Π: Π Π°Π±ΠΎΡΠΈ Π»ΠΈ SHOW DATABASES ΠΏΠΎ ΡΡΡΠΈΡ Π½Π°ΡΠΈΠ½ ΠΏΡΠΈ MariaDB, ΠΊΠ°ΠΊΡΠΎ ΠΏΡΠΈ MySQL?
Π: Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡΡΡ Π΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ΅Π½ ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°ΡΠ° Π·Π° ΠΎΠ±Ρ
Π²Π°Ρ Π½Π° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈΡΠ΅ ΡΠ° ΡΡΡΠΈΡΠ΅. ΠΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ° ΡΠ°Π·Π»ΠΈΠΊΠ° Π΅, ΡΠ΅ MariaDB ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π΅ Π²ΠΊΠ»ΡΡΠ²Π° ΡΡ
Π΅ΠΌΠ°ΡΠ° sys ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅, Π° ΠΏΡΠΈ ΠΏΠΎ-Π½ΠΎΠ²ΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° MariaDB ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π½ΠΈΡΡ Π±ΠΈΠ½Π°ΡΠ΅Π½ ΡΠ°ΠΉΠ» Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π΅ mariadb Π²ΠΌΠ΅ΡΡΠΎ mysql, Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΡΡ mysql ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΠ΅ Π·Π°ΠΏΠ°Π·Π²Π° Π·Π° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ.
ΠΎΡ Π²ΡΠΈΡΠΊΠΈ Ρ
ΠΎΡΡΠΈΠ½Π³ ΡΡΠ»ΡΠ³ΠΈ