5 февраля 2013
Заметка из разряда, чтобы не забыть.
Возникла необходимость поменять вывод заголовков со второго уровня на третий на сайте с большим количеством статей. Дамп занимает больше гигабайта, ни один из редакторов не смог открыть такой большой файл (vim, emacs не пробовал, да). Поэтому пришлось идти в обычный юниксовый терминал и работать в нём; небольшой поиск на подходящую утилиту привёл к релевантному ответу на стековерфлоу. так и начнём
Создаём дамп:
mysqldump -uUSER -pPSWD database > db.sql
Заменяем открывающие теги и повторяем с закрывающими:
find ./db.sql | xargs sed -i -e s/<h2>/<h3>/g find ./db.sql | xargs sed -i -e s/'<\/h2>'/'<\/h3>'/g
Заливаем отредактированный дамп базы обратно:
mysql -uUSER -pPSWD database < db.sql
Все счастливы.
Update: для работы с гзипованным дампом используйте gunzip:
gunzip < db.sql.gz | mysql -uUSER -pPSWD database
Редактировать / Начать обсуждение