Работа с MySQL используя коммандную строку |
06.01.2011 14:38 |
Очень часто мы сталкиваемся с переносом базы с локального сервера на живой и наоборот, для быстрой работы мы используем phpMyAdmin. Но часто база либо имеет большой размер либо возникают другие причины, вот для этого мы и переходит на более надежный и быстрый способ работы с базой даных. Научимся работать с MySql через командную строку. Создание дампа Разберем пример простейшее использования, задампим базу данных «database» при помощи перенаправления потока в файл «database.sql»: mysqldump -uroot -h82.82.82.82 -p database > database.sql где: -u или -–user=... — имя пользователя -h или --host=... — удаленный хост (для локального хоста можно опустить этот параметр) -p или --password — запросить пароль database — имя базы данных database.sql — файл для дампа Для того чтобы сделать дамп несколько баз данных, необходимо использовать параметр --databases (или сокращенно -B), пример: mysqldump -uroot -h82.82.82.82 -p -B database1 database2 database3 > databases.sql А для того чтобы сделать дамп всех баз данных, необходимо использовать параметр --all-databases (или сокращенно -A), пример: mysqldump -uroot -h82.82.82.82 -p -A > all-databases.sql Развертывание дампа Перенаправляем поток в обратную сторону и развертываем базу данных: mysql -uroot -h82.82.82.82 -p database < database.sql Или через mysql-console: mysql> use database; mysql> source database.sql Пример использование некоторых параметров Например, нам нужны данные с «продакшен версии базы» для «версии разработчика», то есть нам нужна «песочница». Выбираем не более 100 записей: mysqldump -uroot -h82.82.82.82 -p --where="true limit 100" database > database.sql Или нам нужна только структура, без данных: mysqldump -uroot -h82.82.82.82 -p --no-data database > database.sql Как посмотреть какие процессы mysql выполняются mysql -uroot -p -e "SHOW PROCESSLIST;" Если есть необходимость удалить какой то из процессов mysql -uroot -p -e "KILL ID;" ID надо заменить на реальный Id процесса из результатов SHOW PROCESSLIST Вот в принципе и все, что понадобится Вам чаще всего |