БпСстСтС 15% ΠΎΡ‚ всички хостинг услуги

ВСствай умСнията си ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈ ΠžΡ‚ΡΡ‚ΡŠΠΏΠΊΠ° Π·Π° всСки хостинг ΠΏΠ»Π°Π½

Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ ΠΊΠΎΠ΄: Skills Π—Π° Π½Π°Ρ‡Π°Π»ΠΎ
Заглавия
Linux Администрация

Как Π΄Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ΅Ρ‚Π΅ MySQL Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ: ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Ρ‡Ρ€Π΅Π· CLI, phpMyAdmin ΠΈ cPanel

Π˜Π·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° MySQL Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° Π·Π° постоянно всички Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ, ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ΠΈ, ΠΈΠ·Π³Π»Π΅Π΄ΠΈ, Ρ‚Ρ€ΠΈΠ³Π΅Ρ€ΠΈ ΠΈ Π΄Π°Π½Π½ΠΈ Π² нСя. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡΡ‚Π° сС изпълнява с SQL ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° DROP DATABASE ΠΈ Π΅ Π½Π΅ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠΌΠ° Π½Π° Π½ΠΈΠ²ΠΎ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π» β€” слСд ΠΊΠ°Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Π·Π°Π²ΡŠΡ€ΡˆΠΈ, Π½Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π° Π²Π³Ρ€Π°Π΄Π΅Π½ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΡŠΠΌ Π·Π° отмяна.

ΠŸΡ€Π΅Π΄ΠΈ Π΄Π° ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠΈΡ‚Π΅ с някой ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‚Π΅ ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ, трябва Π΄Π° ΠΏΡ€ΠΈΡ‚Π΅ΠΆΠ°Π²Π°Ρ‚Π΅ привилСгията DROP Π·Π° Ρ†Π΅Π»Π΅Π²Π°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΈΠ»ΠΈ привилСгията SUPER Π³Π»ΠΎΠ±Π°Π»Π½ΠΎ. Π‘Π΅Π· нСя MySQL Π²Ρ€ΡŠΡ‰Π° ERROR 1044 (42000): Access denied. Ако управляватС срСдата си Π² ΠΏΠ»Π°Π½ Π·Π° VPS Π₯остинг, ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΈΠΌΠ°Ρ‚Π΅ пълСн root-Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ MySQL ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ свободно Π΄Π° прСдоставятС ΠΈΠ»ΠΈ ΠΎΡ‚Π½Π΅ΠΌΠ°Ρ‚Π΅ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ.

ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΈ изисквания: Какво трябва Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΠΏΡ€Π΅Π΄ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ

ΠŸΡ€ΠΎΠΏΡƒΡΠΊΠ°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ°Ρ‚Π° Π΅ Π½Π°ΠΉ-чСстата ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π·Π° катастрофална, Π½Π΅Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈΠΌΠ° Π·Π°Π³ΡƒΠ±Π° Π½Π° Π΄Π°Π½Π½ΠΈ. Π’Ρ€Π΅Ρ‚ΠΈΡ€Π°ΠΉΡ‚Π΅ Ρ‚Π΅Π·ΠΈ ΡΡ‚ΡŠΠΏΠΊΠΈ ΠΊΠ°Ρ‚ΠΎ Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΈ, Π° Π½Π΅ ΠΊΠ°Ρ‚ΠΎ Π½Π΅Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΈ.

1. Π‘ΡŠΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ΠΎ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅

Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ mysqldump, Π·Π° Π΄Π° СкспортиратС цялата Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π² компрСсиран SQL Ρ„Π°ΠΉΠ»:

mysqldump -u username -p --single-transaction --routines --triggers database_name | gzip > /backups/database_name_$(date +%F).sql.gz

ОбяснСниС Π½Π° основнитС Ρ„Π»Π°Π³ΠΎΠ²Π΅:

    --single-transaction β€” ΠΏΡ€Π°Π²ΠΈ послСдоватСлна снимка Π½Π° InnoDB Ρ‚Π°Π±Π»ΠΈΡ†ΠΈΡ‚Π΅, Π±Π΅Π· Π΄Π° Π³ΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π²Π°
    --routines β€” Скспортира ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ΠΈ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
    --triggers β€” Скспортира Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ†ΠΈΠΈ Π½Π° Ρ‚Ρ€ΠΈΠ³Π΅Ρ€ΠΈ
    $(date +%F) β€” Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ добавя Ρ‚Π΅ΠΊΡƒΡ‰Π°Ρ‚Π° Π΄Π°Ρ‚Π° към ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° Ρ„Π°ΠΉΠ»Π°
    
    Π‘Π»Π΅Π΄ Π΄ΡŠΠΌΠΏΠ²Π°Π½Π΅Ρ‚ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Ρ‚Π΅ Π΄Π°Π»ΠΈ Π°Ρ€Ρ…ΠΈΠ²ΡŠΡ‚ Π½Π΅ Π΅ с Π½ΡƒΠ»Π΅Π² Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС дСкомпрСсиран:
    gzip -t /backups/database_name_$(date +%F).sql.gz && echo "Archive OK"
    2. ΠŸΡ€ΠΎΠ²Π΅Ρ€Π΅Ρ‚Π΅ Π·Π° Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ зависимости Π½Π° прилоТСния
    НаправСтС заявка към списъка с MySQL процСси, Π·Π° Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π΄Π°Π»ΠΈ някои Π²Ρ€ΡŠΠ·ΠΊΠΈ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Ρ†Π΅Π»Π΅Π²Π°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ:
    mysql -u root -p -e "SELECT user, host, db, command, time FROM information_schema.processlist WHERE db = 'database_name';"
    Ако сС Π²ΡŠΡ€Π½Π°Ρ‚ Ρ€Π΅Π΄ΠΎΠ²Π΅, ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ сСсии. Π˜Π·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ Π΄Π°Π΄Π΅Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΅ ΡΠ²ΡŠΡ€Π·Π°Π½ΠΎ, няма Π΄Π° Π±Π»ΠΎΠΊΠΈΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° DROP β€” MySQL Ρ‰Π΅ успСС β€” Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ Ρ‰Π΅ Π·Π°ΠΏΠΎΡ‡Π½Π΅ Π΄Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΏΡ€ΠΈ ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅. ΠšΠΎΠΎΡ€Π΄ΠΈΠ½ΠΈΡ€Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ† Π·Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° ΠΈΠ»ΠΈ ΠΏΡŠΡ€Π²ΠΎ Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°ΠΉΡ‚Π΅ конфигурацията Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ.
    3. ΠŸΠΎΡ‚Π²ΡŠΡ€Π΄Π΅Ρ‚Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΡ‚ΠΎ ΠΈΠΌΠ΅ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ
    Π˜ΠΌΠ΅Π½Π°Ρ‚Π° Π½Π° MySQL Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ са чувствитСлни към Ρ€Π΅Π³ΠΈΡΡ‚ΡŠΡ€Π° Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΈΡ‚Π΅ систСми Π½Π° Linux (ext4, XFS), Π½ΠΎ Π½Π΅ са чувствитСлни към Ρ€Π΅Π³ΠΈΡΡ‚ΡŠΡ€Π° Π½Π° Windows ΠΈ macOS. ΠŸΡ€Π°Π²ΠΎΠΏΠΈΡΠ½Π° Π³Ρ€Π΅ΡˆΠΊΠ° Π² ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° Linux ΡΡŠΡ€Π²ΡŠΡ€ Ρ‰Π΅ ΠΈΠ·Ρ‚Ρ€ΠΈΠ΅ Π³Ρ€Π΅ΡˆΠ½Π°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π±Π΅Π· ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Ρ‰Π΅ Π²ΡŠΡ€Π½Π΅ Π³Ρ€Π΅ΡˆΠΊΠ° β€žΠ±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π½Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°”. Π’ΠΈΠ½Π°Π³ΠΈ ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°ΠΉΡ‚Π΅ SHOW DATABASES; ΠΏΡŠΡ€Π²ΠΎ, Π·Π° Π΄Π° ΠΏΠΎΡ‚Π²ΡŠΡ€Π΄ΠΈΡ‚Π΅ точния Π½ΠΈΠ·.
    ΠœΠ΅Ρ‚ΠΎΠ΄ 1: Π˜Π·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ Π½Π° MySQL Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Ρ‡Ρ€Π΅Π· командния Ρ€Π΅Π΄
    CLI Π΅ Π½Π°ΠΉ-надСТдният ΠΈ скриптируСм ΠΌΠ΅Ρ‚ΠΎΠ΄. Π Π°Π±ΠΎΡ‚ΠΈ Π½Π° всСки ΡΡŠΡ€Π²ΡŠΡ€, нСзависимо Π΄Π°Π»ΠΈ Π΅ инсталиран ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Π½ ΠΏΠ°Π½Π΅Π» ΠΈΠ»ΠΈ ΡƒΠ΅Π± интСрфСйс.
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 1 β€” Π‘Π²ΡŠΡ€ΠΆΠ΅Ρ‚Π΅ сС с MySQL ΡΡŠΡ€Π²ΡŠΡ€Π°
    mysql -u root -p
    Ако MySQL ΡΠ»ΡƒΡˆΠ° Π½Π° нСстандартСн ΠΏΠΎΡ€Ρ‚ ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π°Π»Π΅Ρ‡Π΅Π½ хост:
    mysql -u root -p -h 127.0.0.1 -P 3306
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 2 β€” Π˜Π·Π±Ρ€ΠΎΠ΅Ρ‚Π΅ всички Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Π·Π° Π΄Π° ΠΏΠΎΡ‚Π²ΡŠΡ€Π΄ΠΈΡ‚Π΅ Ρ†Π΅Π»Ρ‚Π°
    SHOW DATABASES;
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 3 β€” Π˜Π·Ρ‚Ρ€ΠΈΠΉΡ‚Π΅ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ
    DROP DATABASE database_name;
    Π—Π° Π΄Π° ΠΈΠ·Π±Π΅Π³Π½Π΅Ρ‚Π΅ Π³Ρ€Π΅ΡˆΠΊΠ°, Π½Π°Ρ€ΡƒΡˆΠ°Π²Π°Ρ‰Π° скрипта, ΠΏΡ€ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π² shell скрипт ΠΈΠ»ΠΈ CI/CD Ρ‚Ρ€ΡŠΠ±ΠΎΠΏΡ€ΠΎΠ²ΠΎΠ΄, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ Π·Π°Ρ‰ΠΈΡ‚Π°Ρ‚Π° IF EXISTS:
    DROP DATABASE IF EXISTS database_name;
    Π‘Π΅Π· IF EXISTS MySQL Π²Ρ€ΡŠΡ‰Π° ERROR 1008 (HY000): Can't drop database; database doesn't exist, Π°ΠΊΠΎ ΠΈΠΌΠ΅Ρ‚ΠΎ Π΅ Π³Ρ€Π΅ΡˆΠ½ΠΎ. Π‘ Π·Π°Ρ‰ΠΈΡ‚Π°Ρ‚Π° сС Π²Ρ€ΡŠΡ‰Π° ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ вмСсто Ρ‚Π²ΡŠΡ€Π΄Π° Π³Ρ€Π΅ΡˆΠΊΠ° β€” ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡ€ΠΈ автоматизация, Π½ΠΎ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΎ опасно, Π°ΠΊΠΎ искатС ΡΠΊΡ€ΠΈΠΏΡ‚ΡŠΡ‚ Π΄Π° сС ΠΏΡ€ΠΎΠ²Π°Π»ΠΈ ΡˆΡƒΠΌΠ½ΠΎ ΠΏΡ€ΠΈ правописна Π³Ρ€Π΅ΡˆΠΊΠ°.
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 4 β€” ΠŸΡ€ΠΎΠ²Π΅Ρ€Π΅Ρ‚Π΅ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ
    SHOW DATABASES;
    Π‘Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π²Π΅Ρ‡Π΅ Π½Π΅ трябва Π΄Π° сС появява. ΠœΠΎΠΆΠ΅Ρ‚Π΅ ΡΡŠΡ‰ΠΎ Π΄Π° ΠΏΠΎΡ‚Π²ΡŠΡ€Π΄ΠΈΡ‚Π΅ Π½Π° Π½ΠΈΠ²ΠΎ ОБ β€” MySQL ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° всяка Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΊΠ°Ρ‚ΠΎ дирСктория Π² дирСкторията с Π΄Π°Π½Π½ΠΈ (ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ /var/lib/mysql/):
    ls /var/lib/mysql/ | grep database_name
    Липсата Π½Π° ΠΈΠ·Ρ…ΠΎΠ΄ ΠΏΠΎΡ‚Π²ΡŠΡ€ΠΆΠ΄Π°Π²Π°, Ρ‡Π΅ дирСкторията Π΅ ΠΈΠ·Ρ‡Π΅Π·Π½Π°Π»Π°.
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 5 β€” Π˜Π·Π»Π΅Π·Ρ‚Π΅ ΠΎΡ‚ сСсията
    EXIT;
    Π˜Π·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ с Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½Π° Π½Π΅ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°
    Π—Π° автоматизация, скриптиранС ΠΈΠ»ΠΈ cron Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΡŠΠ»Π½ΠΈΡ‚Π΅ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ, Π±Π΅Π· Π΄Π° Π²Π»ΠΈΠ·Π°Ρ‚Π΅ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Π° сСсия:
    mysql -u root -p"your_password" -e "DROP DATABASE IF EXISTS database_name;"
    По-сигурСн ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΊΠΎΠΉΡ‚ΠΎ избягва ΠΈΠ·Π»Π°Π³Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠ°Ρ€ΠΎΠ»Π°Ρ‚Π° Π² списъка с процСси, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° MySQL Ρ„Π°ΠΉΠ» с ΠΎΠΏΡ†ΠΈΠΈ:
    mysql --defaults-extra-file=/root/.mysql_secure.cnf -e "DROP DATABASE IF EXISTS database_name;"
    ΠšΡŠΠ΄Π΅Ρ‚ΠΎ /root/.mysql_secure.cnf ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°:
    [client]
    user=root
    password=your_password
    Π—Π°Π΄Π°ΠΉΡ‚Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π½Π° 600, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ само root Π΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π³ΠΎ Ρ‡Π΅Ρ‚Π΅:
    chmod 600 /root/.mysql_secure.cnf
    ΠœΠ΅Ρ‚ΠΎΠ΄ 2: Π˜Π·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ Π½Π° MySQL Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Ρ‡Ρ€Π΅Π· phpMyAdmin
    phpMyAdmin прСдоставя Π±Π°Π·ΠΈΡ€Π°Π½ Π½Π° Π±Ρ€Π°ΡƒΠ·ΡŠΡ€ интСрфСйс, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ особСно ΠΏΠΎΠ»Π΅Π·Π΅Π½ Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ, ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‰ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»Π½ΠΎ ΠΏΠΎΡ‚Π²ΡŠΡ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄ΠΈ изпълнСниС Π½Π° дСструктивни ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 1 β€” Π’Π»Π΅Π·Ρ‚Π΅ Π² phpMyAdmin
    ΠžΡ‚ΠΈΠ΄Π΅Ρ‚Π΅ Π½Π° вашия phpMyAdmin URL, ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ https://yourdomain.com/phpmyadmin. Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ Π²Π°ΡˆΠΈΡ‚Π΅ MySQL ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΠΈ Π΄Π°Π½Π½ΠΈ.
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 2 β€” Π˜Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ Ρ†Π΅Π»Π΅Π²Π°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ
    Π’ лявата странична Π»Π΅Π½Ρ‚Π° ΠΊΠ»ΠΈΠΊΠ½Π΅Ρ‚Π΅ Π²ΡŠΡ€Ρ…Ρƒ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, която искатС Π΄Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π΅Ρ‚Π΅. Π’ΠΎΠ²Π° Π·Π°Ρ€Π΅ΠΆΠ΄Π° списъка с Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π² основния ΠΏΠ°Π½Π΅Π».
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 3 β€” ΠžΡ‚ΠΈΠ΄Π΅Ρ‚Π΅ Π½Π° Ρ€Π°Π·Π΄Π΅Π»Π° ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ
    ΠšΠ»ΠΈΠΊΠ½Π΅Ρ‚Π΅ Π²ΡŠΡ€Ρ…Ρƒ Ρ€Π°Π·Π΄Π΅Π»Π° ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² Π³ΠΎΡ€Π½Π°Ρ‚Π° Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΎΠ½Π½Π° Π»Π΅Π½Ρ‚Π° Π½Π° основния ΠΏΠ°Π½Π΅Π». НС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π° Π˜Π·Ρ‚Ρ€ΠΈΠΉ, която сС появява Π΄ΠΎ ΠΎΡ‚Π΄Π΅Π»Π½ΠΈΡ‚Π΅ Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ β€” тя ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π° само Π΅Π΄Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°, Π° Π½Π΅ цялата Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ.
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 4 β€” Π˜Π·Ρ‚Ρ€ΠΈΠΉΡ‚Π΅ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ
    ΠŸΡ€Π΅Π²ΡŠΡ€Ρ‚Π΅Ρ‚Π΅ Π΄ΠΎ сСкцията ΠŸΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π² Π΄ΠΎΠ»Π½Π°Ρ‚Π° част Π½Π° страницата с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ. ΠšΠ»ΠΈΠΊΠ½Π΅Ρ‚Π΅ Π²ΡŠΡ€Ρ…Ρƒ Π˜Π·Ρ‚Ρ€ΠΈΠΉ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ (DROP). phpMyAdmin Ρ‰Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ Π·Π° ΠΏΠΎΡ‚Π²ΡŠΡ€ΠΆΠ΄Π΅Π½ΠΈΠ΅.
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 5 β€” ΠŸΠΎΡ‚Π²ΡŠΡ€Π΄Π΅Ρ‚Π΅
    ΠšΠ»ΠΈΠΊΠ½Π΅Ρ‚Π΅ OK. phpMyAdmin изпълнява DROP DATABASE database_name; срСщу ΡΡŠΡ€Π²ΡŠΡ€Π°. Π©Π΅ Π±ΡŠΠ΄Π΅Ρ‚Π΅ прСнасочСни към списъка с Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π° ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΡ‚Π°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π²Π΅Ρ‡Π΅ няма Π΄Π° сС появява.
    Π’Π°ΠΆΠ΅Π½ ΠΊΡ€Π°Π΅Π½ случай ΠΏΡ€ΠΈ phpMyAdmin: Ако phpMyAdmin Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½ с controluser с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ, ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡŠΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΠΊΠ°Π·Π²Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π² страничната Π»Π΅Π½Ρ‚Π° Π΄ΠΎΡ€ΠΈ слСд ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ ΠΏΠΎΡ€Π°Π΄ΠΈ ΠΊΠ΅ΡˆΠΈΡ€Π°Π½Π° заявка Π·Π° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½ΠΈ. ΠŸΡ€Π΅Π·Π°Ρ€Π΅Π΄Π΅Ρ‚Π΅ страницата ΠΈΠ»ΠΈ изчистСтС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ Π·Π° конфигурация Π½Π° phpMyAdmin, Π·Π° Π΄Π° ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Π° заявка.
    ΠœΠ΅Ρ‚ΠΎΠ΄ 3: Π˜Π·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ Π½Π° MySQL Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Ρ‡Ρ€Π΅Π· cPanel
    cPanel абстрахира ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° MySQL Π·Π°Π΄ GUI ΠΈ Π½Π°Π»Π°Π³Π° конвСнция Π·Π° ΠΈΠΌΠ΅Π½ΡƒΠ²Π°Π½Π΅, ΠΏΡ€ΠΈ която всички Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ са с прСфикс Π½Π° Π²Π°ΡˆΠ΅Ρ‚ΠΎ потрСбитСлско ΠΈΠΌΠ΅ Π² cPanel (Π½Π°ΠΏΡ€. cpanelusername_dbname). Π’ΠΎΠ·ΠΈ прСфикс Π΅ Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π΅Π½ ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚.
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 1 β€” Π’Π»Π΅Π·Ρ‚Π΅ Π² cPanel
    Π”ΠΎΡΡ‚ΡŠΠΏΠ΅Ρ‚Π΅ Π²Π°ΡˆΠ΅Ρ‚ΠΎ Ρ‚Π°Π±Π»ΠΎ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° cPanel Π½Π° https://yourdomain.com:2083 ΠΈ сС удостовСрСтС.
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 2 β€” ΠžΡ‚Π²ΠΎΡ€Π΅Ρ‚Π΅ MySQL Databases
    Π’ сСкцията Databases ΠΊΠ»ΠΈΠΊΠ½Π΅Ρ‚Π΅ Π²ΡŠΡ€Ρ…Ρƒ MySQL Databases.
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 3 β€” НамСрСтС Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ
    ΠŸΡ€Π΅Π²ΡŠΡ€Ρ‚Π΅Ρ‚Π΅ Π΄ΠΎ Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π° Current Databases. Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°ΠΉΡ‚Π΅ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, която искатС Π΄Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π΅Ρ‚Π΅.
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 4 β€” Π˜Π·Ρ‚Ρ€ΠΈΠΉΡ‚Π΅
    ΠšΠ»ΠΈΠΊΠ½Π΅Ρ‚Π΅ Π²ΡŠΡ€Ρ…Ρƒ Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π° Delete Π΄ΠΎ Ρ†Π΅Π»Π΅Π²Π°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. cPanel Ρ‰Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ страница Π·Π° ΠΏΠΎΡ‚Π²ΡŠΡ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ с ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ.
    Π‘Ρ‚ΡŠΠΏΠΊΠ° 5 β€” ΠŸΠΎΡ‚Π²ΡŠΡ€Π΄Π΅Ρ‚Π΅
    ΠšΠ»ΠΈΠΊΠ½Π΅Ρ‚Π΅ Π²ΡŠΡ€Ρ…Ρƒ Delete Database. cPanel изпълнява ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° DROP DATABASE ΠΎΡ‚ вашС ΠΈΠΌΠ΅ ΠΈ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° всички ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ ΡΡŠΠΏΠΎΡΡ‚Π°Π²ΡΠ½ΠΈΡ Π½Π° ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»-Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π° mysql.db.
    Π‘Π΅Π»Π΅ΠΆΠΊΠ° спСцифична Π·Π° cPanel: Π˜Π·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π² cPanel Π½Π΅ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ MySQL ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅, Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈ към нСя. Π’Π΅Π·ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ остават Π² систСмата ΠΈ ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π°Ρ‚ Π΄Π° сС броят към Π»ΠΈΠΌΠΈΡ‚Π° Π·Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ Π½Π° вашия хостинг ΠΏΠ»Π°Π½. ΠžΡ‚ΠΈΠ΄Π΅Ρ‚Π΅ Π½Π° MySQL Databases > Current Users ΠΈ Ρ€ΡŠΡ‡Π½ΠΎ ΠΈΠ·Ρ‚Ρ€ΠΈΠΉΡ‚Π΅ осиротСлитС ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ слСд ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ.
    Ако управляватС мноТСство сайтовС с cPanel ΠΈ сС Π½ΡƒΠΆΠ΄Π°Π΅Ρ‚Π΅ ΠΎΡ‚ ΠΏΠΎ-Π΄Π΅Ρ‚Π°ΠΉΠ»Π΅Π½ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π²ΡŠΡ€Ρ…Ρƒ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, помислСтС Π·Π° Π½Π°Π΄Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π΄ΠΎ VPS с cPanel, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ ΠΈΠΌΠ°Ρ‚Π΅ root MySQL Π΄ΠΎΡΡ‚ΡŠΠΏ Π·Π°Π΅Π΄Π½ΠΎ с интСрфСйса Π½Π° cPanel.
    Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΡ‚Π΅
    
    
    
    Ѐункция
    CLI (`mysql`)
    phpMyAdmin
    cPanel
    
    
    
    
    
    
    
    
    —
    —
    —
    —
    
    
    
    
    
    
    
    
    Изисква GUI
    НС
    Π”Π° (Π±Ρ€Π°ΡƒΠ·ΡŠΡ€)
    Π”Π° (Π±Ρ€Π°ΡƒΠ·ΡŠΡ€)
    
    
    
    
    
    
    
    
    Π‘ΠΊΡ€ΠΈΠΏΡ‚ΠΈΡ€ΡƒΠ΅ΠΌ / Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ
    Π”Π°
    НС
    Π‘Π°ΠΌΠΎ Ρ‡Ρ€Π΅Π· cPanel API
    
    
    
    
    
    
    
    
    Изисква root ΠΈΠ»ΠΈ SSH Π΄ΠΎΡΡ‚ΡŠΠΏ
    Π”Π° (ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ)
    НС
    НС
    
    
    
    
    
    
    
    
    ΠŸΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° Π·Π°Ρ‰ΠΈΡ‚Π° `IF EXISTS`
    Π”Π°
    НС
    НС
    
    
    
    
    
    
    
    
    Показва Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ Π²Ρ€ΡŠΠ·ΠΊΠΈ ΠΏΡ€Π΅Π΄ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅
    Π‘ Ρ€ΡŠΡ‡Π½Π° заявка
    НС
    НС
    
    
    
    
    
    
    
    
    Експортира Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ ΠΏΡ€Π΅Π΄ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅
    Изисква Ρ€ΡŠΡ‡Π½Π° ΡΡ‚ΡŠΠΏΠΊΠ°
    Π’Π³Ρ€Π°Π΄Π΅Π½ Ρ€Π°Π·Π΄Π΅Π» Π·Π° Скспорт
    Π§Ρ€Π΅Π· Backup Wizard
    
    
    
    
    
    
    
    
    Π Π°Π±ΠΎΡ‚ΠΈ с ΠΎΡ‚Π΄Π°Π»Π΅Ρ‡Π΅Π½ΠΈ MySQL хостовС
    Π”Π° (Ρ„Π»Π°Π³ `-h`)
    Π”Π° (Π°ΠΊΠΎ Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½)
    Π‘Π°ΠΌΠΎ Π»ΠΎΠΊΠ°Π»Π΅Π½ ΡΡŠΡ€Π²ΡŠΡ€
    
    
    
    
    
    
    
    
    Налага прСфикс Π·Π° ΠΈΠΌΠ΅Π½ΡƒΠ²Π°Π½Π΅
    НС
    НС
    Π”Π° (`user_dbname`)
    
    
    
    
    
    
    
    
    Риск ΠΎΡ‚ случайно ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅
    Нисък (явна команда)
    Π‘Ρ€Π΅Π΄Π΅Π½ (Π΅Π΄ΠΈΠ½ ΠΊΠ»ΠΈΠΊ)
    Π‘Ρ€Π΅Π΄Π΅Π½ (Π΅Π΄ΠΈΠ½ ΠΊΠ»ΠΈΠΊ)
    
    
    
    
    
    Π’ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·Ρ‚Ρ€ΠΈΡ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ: Какви са Π²Π°ΡˆΠΈΡ‚Π΅ ΠΎΠΏΡ†ΠΈΠΈ?
    Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ DROP DATABASE сС изпълни, MySQL ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° дирСкторията Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ ΠΈ всички Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ .ibd (InnoDB Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ с Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎ пространство) ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ .MYD/.MYI (MyISAM). Няма Π½Π°Ρ‚ΠΈΠ²Π΅Π½ ROLLBACK ΠΈΠ»ΠΈ UNDO Π·Π° DDL ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΈ Π² MySQL.
    Π’Π°ΡˆΠΈΡ‚Π΅ ΠΎΠΏΡ†ΠΈΠΈ Π·Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ зависят изцяло ΠΎΡ‚ Ρ‚ΠΎΠ²Π°, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΈΠΌΠ°Ρ‚Π΅ Π½Π° място ΠΏΡ€Π΅Π΄ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ:
    
    Π Π΅Π·Π΅Ρ€Π²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ mysqldump β€” Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Ρ‚Π΅ с mysql -u root -p new_database_name < backup.sql
  • Π‘ΠΈΠ½Π°Ρ€Π½ΠΈ Π»ΠΎΠ³ΠΎΠ²Π΅ (binlog) β€” Π°ΠΊΠΎ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΡ‚ΠΎ Π»ΠΎΠ³Π²Π°Π½Π΅ Π΅ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½ΠΎ (log_bin = ON), ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π²ΡŠΠ·ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Ρ‚Π΅ ΡΡŠΠ±ΠΈΡ‚ΠΈΡΡ‚Π° Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Ρ‚ΠΎΡ‡Π½ΠΎ ΠΏΡ€Π΅Π΄ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° DROP DATABASE с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° mysqlbinlog
  • ЀизичСско Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ (Percona XtraBackup, MySQL Enterprise Backup) β€” Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Ρ‚Π΅ цялата дирСктория с Π΄Π°Π½Π½ΠΈ ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΈ пространства
  • Π‘Π½ΠΈΠΌΠΊΠ° Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π°Ρ‚Π° систСма β€” Π°ΠΊΠΎ Π²Π°ΡˆΠΈΡΡ‚ ΡΡŠΡ€Π²ΡŠΡ€ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° LVM ΠΈΠ»ΠΈ снимка Π½Π° ΠΎΠ±Π»Π°Ρ‡Π½ΠΎ Π±Π»ΠΎΠΊΠΎΠ²ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅, Π½Π°ΠΏΡ€Π°Π²Π΅Π½Π° ΠΏΡ€Π΅Π΄ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ, ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°ΠΉΡ‚Π΅ снимката ΠΈ ΠΊΠΎΠΏΠΈΡ€Π°ΠΉΡ‚Π΅ дирСкторията Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² /var/lib/mysql/
  • Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ΠΈ Π·Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° InnoDB ΠΎΡ‚ Ρ‚Ρ€Π΅Ρ‚ΠΈ страни β€” инструмСнти ΠΊΠ°Ρ‚ΠΎ Percona Data Recovery Tool for InnoDB понякога ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° рСконструират Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π΅Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ .ibd, Π°ΠΊΠΎ Ρ‚Π°Π±Π»ΠΈΠ½Ρ‡ΠΎΡ‚ΠΎ пространство Π½Π΅ Π΅ прСзаписано, Π½ΠΎ ΡƒΡΠΏΠ΅Ρ…ΡŠΡ‚ Π½Π΅ Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π°Π½ ΠΈ ΠΏΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ Π΅ слоТСн

Ако управляватС производствСна Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π½Π° Dedicated ΡΡŠΡ€Π²ΡŠΡ€, ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½ΠΎ Π±ΠΈΠ½Π°Ρ€Π½ΠΎ Π»ΠΎΠ³Π²Π°Π½Π΅ ΠΈ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΈ физичСски Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ копия Π΅ Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎ. ΠŸΡ€Π΅Π΄Π΅Π»Π½ΠΈΡ‚Π΅ Ρ€Π°Π·Ρ…ΠΎΠ΄ΠΈ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ са Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΈ Π² сравнСниС с Ρ†Π΅Π½Π°Ρ‚Π° Π½Π° Π·Π°Π³ΡƒΠ±Π°Ρ‚Π° Π½Π° Π΄Π°Π½Π½ΠΈ.

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ: ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΡΠ½Π΅ ΠΈ ΠΎΡ‚Π½Π΅ΠΌΠ°Π½Π΅ Π½Π° DROP Π΄ΠΎΡΡ‚ΡŠΠΏ

Ако трябва Π΄Π° прСдоставитС Π½Π° Π΄Ρ€ΡƒΠ³ MySQL ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π΄Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, Π±Π΅Π· Π΄Π° ΠΌΡƒ Π΄Π°Π²Π°Ρ‚Π΅ Π³Π»ΠΎΠ±Π°Π»Π΅Π½ root Π΄ΠΎΡΡ‚ΡŠΠΏ:

GRANT DROP ON database_name.* TO 'username'@'localhost';
FLUSH PRIVILEGES;

Π—Π° Π΄Π° Π³ΠΎ ΠΎΡ‚Π½Π΅ΠΌΠ΅Ρ‚Π΅:

REVOKE DROP ON database_name.* TO 'username'@'localhost';
FLUSH PRIVILEGES;

Π—Π° Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅ ΠΊΠ°ΠΊΠ²ΠΈ ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ ΠΏΡ€ΠΈΡ‚Π΅ΠΆΠ°Π²Π° Π΄Π°Π΄Π΅Π½ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°:

SHOW GRANTS FOR 'username'@'localhost';

ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΡΠ½Π΅Ρ‚ΠΎ Π½Π° DROP Π²ΡŠΡ€Ρ…Ρƒ *.* (всички Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ) Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π΅Π½ риск Π·Π° сигурността. ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Ρ‚Π΅ Π³ΠΎ Π΄ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Π°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π΅ възмоТно.

АвтоматизиранС Π½Π° почистванСто Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π² ΠΌΠ½ΠΎΠ³ΠΎΠ½Π°Π΅ΠΌΠ½ΠΈ срСди

Π’ срСди, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ тСстови ΠΈΠ»ΠΈ staging Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ сС ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ½ΠΎ β€” ΠΊΠ°Ρ‚ΠΎ CI/CD Ρ‚Ρ€ΡŠΠ±ΠΎΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈ, Ρ€Π°Π±ΠΎΡ‚Π½ΠΈ ΠΏΠΎΡ‚ΠΎΡ†ΠΈ Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ»ΠΈ SaaS ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ β€” Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½ΠΎΡ‚ΠΎ почистванС прСдотвратява разрастванСто Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ. ΠŸΡ€ΠΎΡΡ‚ shell скрипт Π·Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ Π½Π° всички Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π°Ρ‰ΠΈ Π½Π° шаблон Π·Π° ΠΈΠΌΠ΅Π½ΡƒΠ²Π°Π½Π΅:

#!/bin/bash
MYSQL_USER="root"
MYSQL_OPTS="--defaults-extra-file=/root/.mysql_secure.cnf"
PREFIX="test_"

mysql $MYSQL_OPTS -N -e "SHOW DATABASES LIKE '${PREFIX}%';" | while read db; do
    echo "Dropping database: $db"
    mysql $MYSQL_OPTS -e "DROP DATABASE IF EXISTS `$db`;"
done

Π•ΠΊΡ€Π°Π½ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ с ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΈ апострофи ΠΎΠΊΠΎΠ»ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° `###PPT_NOTR_62_CODE###$db###PPT_NOTR_63_CODE######PPT_NOTR_64_CODE###DROP DATABASE` Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ β€” ΠΈΠΌΠ΅Π½Π° Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‰ΠΈ Ρ‚ΠΈΡ€Π΅Ρ‚Π° ΠΈΠ»ΠΈ Π·Π°ΠΏΠ°Π·Π΅Π½ΠΈ Π΄ΡƒΠΌΠΈ, Ρ‰Π΅ причинят синтактична Π³Ρ€Π΅ΡˆΠΊΠ° Π±Π΅Π· Π½Π΅Π³ΠΎ.

ΠžΡ‚ΡΡ‚Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° чСсто срСщани Π³Ρ€Π΅ΡˆΠΊΠΈ

ERROR 1044 (42000): Access denied for user

Π‘Π²ΡŠΡ€Π·Π°Π½ΠΈΡΡ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» няма привилСгията DROP. Π‘Π²ΡŠΡ€ΠΆΠ΅Ρ‚Π΅ сС ΠΊΠ°Ρ‚ΠΎ root ΠΈΠ»ΠΈ прСдоставСтС привилСгията, ΠΊΠ°ΠΊΡ‚ΠΎ Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² сСкцията ΠΏΠΎ-Π³ΠΎΡ€Π΅.

ERROR 1008 (HY000): Can't drop database; database doesn't exist

Π˜ΠΌΠ΅Ρ‚ΠΎ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π΅ Π³Ρ€Π΅ΡˆΠ½ΠΎ ΠΈΠ»ΠΈ Π½Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°. Π˜Π·ΠΏΡŠΠ»Π½Π΅Ρ‚Π΅ SHOW DATABASES;, Π·Π° Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΡ‚ΠΎ ΠΈΠΌΠ΅. ΠŸΠΎΠΌΠ½Π΅Ρ‚Π΅, Ρ‡Π΅ ΠΈΠΌΠ΅Π½Π°Ρ‚Π° са чувствитСлни към Ρ€Π΅Π³ΠΈΡΡ‚ΡŠΡ€Π° Π½Π° Linux.

ERROR 1010 (HY000): Error dropping database (can't rmdir)

MySQL Π΅ Π½Π°ΠΌΠ΅Ρ€ΠΈΠ» Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π² дирСкторията Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ Π΅ създал (Π½Π°ΠΏΡ€. Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅, поставСни Ρ‚Π°ΠΌ Ρ€ΡŠΡ‡Π½ΠΎ ΠΈΠ»ΠΈ останали ΠΎΡ‚ срив ΠΏΡ€ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€Π°Π½Π΅). НамСрСтС дирСкторията ΠΏΠΎΠ΄ /var/lib/mysql/database_name/, ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π΅Ρ‚Π΅ Ρ‡ΡƒΠΆΠ΄ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Ρ€ΡŠΡ‡Π½ΠΎ, слСд ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Ρ‚Π΅ ΠΎΡ‚Π½ΠΎΠ²ΠΎ DROP DATABASE.

phpMyAdmin ΠΏΠΎΠΊΠ°Π·Π²Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ слСд ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅

Π’ΠΎΠ²Π° Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с кСша Π½Π° дисплСя. ΠŸΡ€Π΅Π·Π°Ρ€Π΅Π΄Π΅Ρ‚Π΅ страницата Π½Π° phpMyAdmin. Ако Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ сС появи ΠΎΡ‚Π½ΠΎΠ²ΠΎ, ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Ρ‚Π΅ Π΄Π°Π»ΠΈ Π²Ρ‚ΠΎΡ€Π° MySQL инстанция Ρ€Π°Π±ΠΎΡ‚ΠΈ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π΅Π½ сокСт ΠΈΠ»ΠΈ ΠΏΠΎΡ€Ρ‚, към ΠΊΠΎΠΉΡ‚ΠΎ phpMyAdmin сС ΡΠ²ΡŠΡ€Π·Π²Π°.

cPanel β€žDatabase does not exist” слСд ΠΎΠΏΠΈΡ‚ Π·Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅

cPanel ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌΠ° остарял запис Π² своя Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ΅Π½ Ρ€Π΅Π³ΠΈΡΡ‚ΡŠΡ€ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ. Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ функцията Repair Π½Π° cPanel ΠΏΠΎΠ΄ MySQL Databases ΠΈΠ»ΠΈ сС ΡΠ²ΡŠΡ€ΠΆΠ΅Ρ‚Π΅ с ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° вашия хостинг, Π·Π° Π΄Π° синхронизиратС ΠΎΡ‚Π½ΠΎΠ²ΠΎ списъка с Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ.

Π—Π° хостинг срСди, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ управляватС собствСния си стСк, VPS ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π½ΠΈ ΠΏΠ°Π½Π΅Π»ΠΈ прСдоставят ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π°Π½ΠΈ инструмСнти Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ намаляват риска ΠΎΡ‚ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»Π½Π° конфигурация.

ВСхничСски ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Π½ списък с ΠΊΠ»ΡŽΡ‡ΠΎΠ²ΠΈ ΠΈΠ·Π²ΠΎΠ΄ΠΈ

ΠŸΡ€Π΅Π΄ΠΈ Π΄Π° ΠΈΠ·ΠΏΡŠΠ»Π½ΠΈΡ‚Π΅ DROP DATABASE, ΠΏΡ€Π΅ΠΌΠΈΠ½Π΅Ρ‚Π΅ ΠΏΡ€Π΅Π· Ρ‚ΠΎΠ·ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Π½ списък:

  • [ ] Π‘ΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ΠΎ, тСствано Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ (gzip -t ΠΏΡ€Π΅ΠΌΠΈΠ½Π° ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π½Π° Π°Ρ€Ρ…ΠΈΠ²Π°)
  • [ ] Π‘ΠΈΠ½Π°Ρ€Π½ΠΎΡ‚ΠΎ Π»ΠΎΠ³Π²Π°Π½Π΅ Π΅ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½ΠΎ Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π° (SHOW VARIABLES LIKE 'log_bin'; Π²Ρ€ΡŠΡ‰Π° ON)
  • [ ] Няма Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ Π²Ρ€ΡŠΠ·ΠΊΠΈ Π½Π° прилоТСния към Ρ†Π΅Π»Π΅Π²Π°Ρ‚Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ (заявката information_schema.processlist Π²ΡŠΡ€Π½Π° Π½ΡƒΠ»Π° Ρ€Π΅Π΄ΠΎΠ²Π΅)
  • [ ] Π’ΠΎΡ‡Π½ΠΎΡ‚ΠΎ ΠΈΠΌΠ΅ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π΅ ΠΏΠΎΡ‚Π²ΡŠΡ€Π΄Π΅Π½ΠΎ с SHOW DATABASES;
  • [ ] Π‘Π²ΡŠΡ€Π·Π°Π½ΠΈ са правилният MySQL ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» ΠΈ хост (Π½Π΅ сподСлСн ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» с Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ мноТСство Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ)
  • [ ] Π—Π° cPanel срСди: осиротСлитС MySQL ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ почистСни слСд ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ
  • [ ] Π—Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ скриптовС: IF EXISTS сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° прСдотвратяванС Π½Π° Ρ‚Π²ΡŠΡ€Π΄ΠΈ Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΏΡ€ΠΈ липсващи Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ
  • [ ] Π—Π° InnoDB Ρ‚Π°Π±Π»ΠΈΡ†ΠΈ: --single-transaction Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π² mysqldump Π·Π° осигуряванС Π½Π° послСдоватСлна снимка
  • [ ] Π‘Π»Π΅Π΄ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅: SHOW DATABASES; ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° дирСкторията Π½Π° Π½ΠΈΠ²ΠΎ ОБ ΠΏΠΎΡ‚Π²ΡŠΡ€ΠΆΠ΄Π°Π²Π°Ρ‚, Ρ‡Π΅ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π΅ напълно ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚Π°

Π§Π—Π’

МоТС Π»ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΡ‚Π° MySQL Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π΄Π° бъдС Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½Π° Π±Π΅Π· Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅?

Π‘Π°ΠΌΠΎ ΠΏΡ€ΠΈ спСцифични условия. Ако Π±ΠΈΠ½Π°Ρ€Π½ΠΎΡ‚ΠΎ Π»ΠΎΠ³Π²Π°Π½Π΅ (log_bin) Π΅ Π±ΠΈΠ»ΠΎ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½ΠΎ ΠΏΡ€Π΅Π΄ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ mysqlbinlog, Π·Π° Π΄Π° Π²ΡŠΠ·ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Ρ‚Π΅ ΠΆΡƒΡ€Π½Π°Π»Π° Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Ρ‚ΠΎΡ‡Π½ΠΎ ΠΏΡ€Π΅Π΄ΠΈ ΡΡŠΠ±ΠΈΡ‚ΠΈΠ΅Ρ‚ΠΎ DROP DATABASE. Π‘Π΅Π· Π±ΠΈΠ½Π°Ρ€Π½ΠΈ Π»ΠΎΠ³ΠΎΠ²Π΅ ΠΈΠ»ΠΈ физичСско Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅, Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π΅ Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ възмоТно. Някои инструмСнти Π·Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° InnoDB Π½Π° ниско Π½ΠΈΠ²ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΈΠ·Π²Π»ΠΈΡ‡Π°Ρ‚ Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π΅Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ с Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎ пространство, Π½ΠΎ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ са нСпослСдоватСлни ΠΈ зависят ΠΎΡ‚ Ρ‚ΠΎΠ²Π° Π΄Π°Π»ΠΈ дисковитС сСктори са прСзаписани.

Каква Π΅ Ρ€Π°Π·Π»ΠΈΠΊΠ°Ρ‚Π° ΠΌΠ΅ΠΆΠ΄Ρƒ DROP DATABASE ΠΈ DROP SCHEMA Π² MySQL?

Π’Π΅ са синтактични синоними Π² MySQL. DROP SCHEMA database_name; сС изпълнява ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎ Π½Π° DROP DATABASE database_name;. ΠšΠ»ΡŽΡ‡ΠΎΠ²Π°Ρ‚Π° Π΄ΡƒΠΌΠ° SCHEMA ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π° Π·Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ със SQL стандарта ΠΈ Π΅ взаимозамСняСма във всички вСрсии Π½Π° MySQL.

Π˜Π·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° MySQL Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° Π»ΠΈ ΠΈ ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈΡ‚Π΅ MySQL ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ?

НС. DROP DATABASE ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π° само ΠΎΠ±Π΅ΠΊΡ‚Π° Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ ΠΈ Π½Π΅ΠΉΠ½ΠΎΡ‚ΠΎ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅. MySQL потрСбитСлскитС Π°ΠΊΠ°ΡƒΠ½Ρ‚ΠΈ, Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΈ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π° mysql.user, са нСзависими ΠΎΡ‚ Π±Π°Π·ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ. Врябва Ρ€ΡŠΡ‡Π½ΠΎ Π΄Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ΅Ρ‚Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ с DROP USER 'username'@'host'; ΠΈ Π΄Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π΅Ρ‚Π΅ Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ записи Π·Π° ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ, Π°ΠΊΠΎ Π²Π΅Ρ‡Π΅ Π½Π΅ са Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ.

Как Π΄Π° изтрия Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ с Ρ‚ΠΈΡ€Π΅ ΠΈΠ»ΠΈ спСциалСн символ Π² ΠΈΠΌΠ΅Ρ‚ΠΎ?

ΠžΠ³Ρ€Π°Π΄Π΅Ρ‚Π΅ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ с ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΈ апострофи Π² SQL ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°:

DROP DATABASE IF EXISTS `my-database`;

Π‘Π΅Π· ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΈ апострофи MySQL Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π° Ρ‚ΠΈΡ€Π΅Ρ‚ΠΎ ΠΊΠ°Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π·Π° ΠΈΠ·Π²Π°ΠΆΠ΄Π°Π½Π΅ ΠΈ Π²Ρ€ΡŠΡ‰Π° синтактична Π³Ρ€Π΅ΡˆΠΊΠ°.

БСзопасно Π»ΠΈ Π΅ Π΄Π° сС ΠΈΠ·Ρ‚Ρ€ΠΈΠ΅ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ са ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ към нСя?

MySQL Π½Π΅ Π±Π»ΠΎΠΊΠΈΡ€Π° DROP DATABASE ΠΏΠΎΡ€Π°Π΄ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ Π²Ρ€ΡŠΠ·ΠΊΠΈ. ΠšΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Ρ‰Π΅ сС изпълни Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ ΠΈ всички сСсии, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Ρ‰Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΏΡ€ΠΈ слСдващата си заявка. Π’ΠΈΠ½Π°Π³ΠΈ провСрявайтС Π΄Π°Π»ΠΈ няма Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ Π²Ρ€ΡŠΠ·ΠΊΠΈ с information_schema.processlist ΠΈ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½ΠΈΡ€Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ† Π·Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° ΠΏΡ€Π΅Π΄ΠΈ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, обслуТваща Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ.