Импортиране на архив в MySQL база данни през phpMyAdmin
Съдържание
Можем да създадем MySQL архив през phpMyAdmin по два начина в зависимост от това коя опция изберем при кликане на бутона Import - Quick или Custom:
- при избран радио бутон (по подразбиране) Quick трябва само да кликнем бутона Go и архивния
.sql
файл с името на базата данни се записва на нашия компютър. Ние ще преименуваме този файл наquick.sql
:
- при включване на радио бутона Custom се отварят няколко секции с допълнителни опции:
но в конкретния случай само една от тях ни интересува - Add drop table в секция Opject creation options:
Отново кликаме бутона Go, архивният файл се записва на нашия компютър и го преименуваме на custom.sql
.
Тестово хакване на сайт
Имаме архиви, време е да повредим нашия сайт, за да може архивите да влязат в действие.
В базата данни променихме съдържанието на заглавието и описанието на началната страница на сайта:
Много потребители, използващи стари или нулирани (хакнати) темплейти са преживяли подобна неприятна изненада, отваряйки сайта да видят на дисплея съдържание, което не са си и помисляли да публикуват.
Атакуващите избират да повредят (deface) уеб сайтовете, за да публикуват свои виждания по дадена тема или просто заради самото хакване.
Място за притеснение относно възстановяването на нашия сайт няма тъй като ние разполагаме с подходящ архив (дори два :).
Сега ще ви покажем разликата при импортирането на двата архива.
Импортиране на Quick архива
За да импортираме архива трябва да отворим phpMyAdmin, да изберем от менюто коректната база данни и да кликнем бутона Import:
Кликаме бутона Gо за да стартираме възстановяването и получаваме грешка, която казва, че таблица със същото име вече съществува в базата данни:
MySQL said:
#1050 - Table 'cache_commentmeta' already exists
Това ни показва, че Quick архивите са удачни само при импортиране в празна база данни тъй като не могат да пренаписват съществуващи таблици.
За да възстановим сайта трябва да изтрием наличните таблици като кликнем линка Check all и от падащия списък With selected изберем опцията Drop:
Трябва да потвърдим изтриването като кликнем бутона Yes:
Ако кликнем линка с името на базата данни ще видим, че наистина всички таблици са изтрити:
Сега отново кликаме бутона Import, избираме същия архивен файл quick.sql
и кликаме бутона Go.
Получаваме потвърждение за успешен импорт:
Рефрешваме сайта и оригиналните заглавие и описание се зареждат коректно:
Сега ще повредим отново заглавието за да изпълним втората част от нашия тест.
Импортиране на Custom архива
Този път само изтрихме съществуващите заглавие и описание:
Отново кликаме бутона Import, избираме другият архивен файл custom.sql
и кликаме бутона Go:
Получаваме потвърждение за успешно импортиране.
Въпреки наличните таблици в базата данни, маркираната опция Add drop table позволява на phpMyAdmin да пренапише съществуващата (повредената база данни) с архива за възстановяване:
Като във филм на Disney накрая всички са щастливи защото сайта е успешно възстановен :)