Начало > Помощен център > Споделен Хостинг Linux > Бази Данни > Импортиране на архив в MySQL база данни през phpMyAdmin

Импортиране на архив в MySQL база данни през phpMyAdmin

Помощен център

Импортиране на архив в MySQL база данни през phpMyAdmin

Можем да създадем MySQL архив през phpMyAdmin по два начина в зависимост от това коя опция изберем при кликане на бутона Import - Quick или Custom:

  • при избран радио бутон (по подразбиране) Quick трябва само да кликнем бутона Go и архивния .sql файл с името на базата данни се записва на нашия компютър. Ние ще преименуваме този файл на quick.sql:

Експорт на таблици в PHPMyAdmin с бързи настройки

  • при включване на радио бутона Custom се отварят няколко секции с допълнителни опции:

Експорт на таблици в PHPMyAdmin с ръчни настройки

но в конкретния случай само една от тях ни интересува - Add drop table в секция Opject creation options:

Добавяне на опции при експорта на база данни в PHPMyAdmin

Отново кликаме бутона Go, архивният файл се записва на нашия компютър и го преименуваме на custom.sql.

Тестово хакване на сайт

Имаме архиви, време е да повредим нашия сайт, за да може архивите да влязат в действие.

В базата данни променихме съдържанието на заглавието и описанието на началната страница на сайта:

Променено заглавие на сайт

Много потребители, използващи стари или нулирани (хакнати) темплейти са преживяли подобна неприятна изненада, отваряйки сайта да видят на дисплея съдържание, което не са си и помисляли да публикуват.

Атакуващите избират да повредят (deface) уеб сайтовете, за да публикуват свои виждания по дадена тема или просто заради самото хакване.

Място за притеснение относно възстановяването на нашия сайт няма тъй като ние разполагаме с подходящ архив (дори два :).

Сега ще ви покажем разликата при импортирането на двата архива.

Импортиране на Quick архива

За да импортираме архива трябва да отворим phpMyAdmin, да изберем от менюто коректната база данни и да кликнем бутона Import:

Импортиране на база данни в PHPMyAdmin

Кликаме бутона за да стартираме възстановяването и получаваме грешка, която казва, че таблица със същото име вече съществува в базата данни:

MySQL said:
#1050 - Table 'cache_commentmeta' already exists

Грешка при импортиране на база данни в PHPMyAdmin

Това ни показва, че Quick архивите са удачни само при импортиране в празна база данни тъй като не могат да пренаписват съществуващи таблици.

За да възстановим сайта трябва да изтрием наличните таблици като кликнем линка Check all и от падащия списък With selected изберем опцията Drop:

Филтриране на таблици в PHPMyAdmin

Трябва да потвърдим изтриването като кликнем бутона Yes:

Потвърждение за изпълняване на query в PHPMyAdmin

Ако кликнем линка с името на базата данни ще видим, че наистина всички таблици са изтрити:

Примерна структура без таблици в PHPMyAdmin

Сега отново кликаме бутона Import, избираме същия архивен файл quick.sql и кликаме бутона Go.

Получаваме потвърждение за успешен импорт:

Импортиране на база данни

Рефрешваме сайта и оригиналните заглавие и описание се зареждат коректно:

Коректно зареждане на възстановения сайт

Сега ще повредим отново заглавието за да изпълним втората част от нашия тест.

Импортиране на Custom архива

Този път само изтрихме съществуващите заглавие и описание:

Примерно заглавие на блог в WordPress

Отново кликаме бутона Import, избираме другият архивен файл custom.sql и кликаме бутона Go:

Начална страница на WordPress без заглавия

Получаваме потвърждение за успешно импортиране.

Въпреки наличните таблици в базата данни, маркираната опция Add drop table позволява на phpMyAdmin да пренапише съществуващата (повредената база данни) с архива за възстановяване:

Импортиране на бази данни с друг архивен файл

Като във филм на Disney накрая всички са щастливи защото сайта е успешно възстановен :)

Финален изглед на възстановен сайт