Голяма MySQL базa данни – ами сега!?
Ако ви попитаме с какъв инструмент администрирате своите бази данни – може би в над 90% от случаите, отговорът ще е phpMyAdmin. А когато с него не можете да извършите определена функционалност? В тази статия от съветите на support – a на нашата хостинг компания СуперХостинг.БГ, ще ви подскажем още няколко лесно реализуеми хитринки, с които ще можете да импортирате/експортирате големи по размер бази данни. Тези операции отнемат повече време и не могат да бъдат изпълнени през phpMyAdmin, затова нашия колега Кирил (или както му казваме в екипа - Кирето) се постара да представи други варианти по максимално достъпен и полезен начин. Вижте как и очакваме да ни питате за всичко, което ви интересува по темата, а защо не и да споделите примери от вашата практика! ![]()
1. Импорт на MySQL база данни
За да импортирате SQL файл в дадена MySQL база данни, първо трябва да го разположите в директория в хостинг акаунта. След това самият импорт се осъществява чрез следната команда:
Легенда:
- DB_USERNAME - името на потребителя за базата данни (можете да използвате и основния MySQL потребител);
- DATABASE - името на базата данни;
- /home/cPanel_USERNAME/ - пътят до директорията, в която е качен SQL файла;
- db.sql - името на SQL файла.
На следващата стъпка ще излезе съобщение да въведете паролата за потребителя към базата или за основния MySQL потребител, ако използвате него.
2. Експорт на MySQL база данни
Експортът се осъществява посредством следната команда:
След изпълнението на mysqldump, експортираният SQL файл е разположен в /home директорията на хостинг акаунта, ако разбира се не сте посочили друга директория.,
Информация за този начин на импорт и експорт, можете да намерите и в нашата помощна страница на следния адрес: Импорт / експорт на база данни чрез SSH
Ако не разполагате с SSH достъп или за хостинг плана, който ползвате, не се предлага такъв (СуперСтарт), бихте могли да настроите изпълнението на импорт/експорт като Cron Job, който да изпълните еднократно. Задаването на Cron Job става от cPanel -> "Автоматизирани задачи (Cron jobs)". Препоръчваме Ви да го настройте на 5, 10 или 15 минути, в зависимост от размера на базата данни. Зададеният Cron Job трябва да изглежда по един от следните начини, в зависимост от това дали извършвате импорт или експорт:
Тук отново е необходимо да заместите MySQL потребителя, паролата, базата данни, SQL файла и пътя до него с вашите.
Повече информация, как да създадете Cron Job, отново ще намерите в нашата помощна страница на следния адрес: Cron Jobs - за какво и как се ползва?
След успешното приключване на импорта или експорта, не забравяйте да изтриете Cron Job- а. В противен случай те ще се изпълняват периодично и циклично.
Кой от посочените методи използвате вие? А какво друго можете да добавите по темата?
Все още няма връзки за обратно следене.





март 31st, 2012 - 00:40
Как ме радвате с такива статии
Браво, много полезно.
Добра работа адаш!
Впрочем не е лошо да включите тази статия в документацията си. Със сигурност ще е полезна на много хора.
април 1st, 2012 - 11:39
Трика с крон джоб е супер – никога нямаше да се сетя сам
април 2nd, 2012 - 12:07
Страхотна идея – Благодарско
април 2nd, 2012 - 19:29
Е, за това сте супер!
април 2nd, 2012 - 21:03
И при мен вече phpMyAdmin не работи. Базата данни стана почти 1GB.
април 6th, 2012 - 00:29
Това с cronjob ми хареса.
И ме навежда на мисълта дали пък това не е добър вариант да си правя еждеседмичен, да речем, бекъп на базата? :/
април 6th, 2012 - 10:36
Здравейте Михаил,
Можете, разбира се, да правите backup на вашата база данни, като честотата на архивите зависи и от това, колко активно се променя базата. Препоръчваме да сваляте на локалния си компютър експортнатия файл, за да не запълвате излишно място в хостинг акаунта си.
април 7th, 2012 - 23:29
Малко са хората които биха споделили такива важни съвети
април 26th, 2012 - 23:34
http://www.ozerov.de/bigdump/ Този скрипт също върши страхотна работа.
май 2nd, 2012 - 21:45
MySQLDumper също върши страхотна работа, последно го пробвах с едни 7 милиона записа (към 550 МБ размер на dump файла) и нямаше проблеми.
А за това с cron-а направо ме е срам че не съм се сетил
май 2nd, 2012 - 22:00
Забравих да спомена че за по-големички бази е желателно да се пипнат настройките на mysqldumper-а преди да се пусне import/export-а. Резултата при мен беше че вместо за няколко часа нещата станаха за 20-на минути.
Въпросните настройки са като се отиде на Configuration->General
Memory limit да му се цъкне autodetect
GZip compression да е not activated
Optimize Tables before Backup също да е not activated
и това е.