Поиск и замена по всей базе данных MySQL

Иногда я встречаюсь с необходимостью поиска и замены некоторого текста в базе данных MySQL сайта. Зайдя в phpMyAdmin я ничего подобного не обнаружил (вполне возможно что оно там есть, но я не нашёл=) ). Зато в интернете обнаружил очень интересный php-скрипт созданный неким Марком Джексоном http://www.mjdigital.co.uk/blog, который при запуске меняет заданный текст на новый.

Порядок действий:

— Изменить в файле значения, набранные заглавными русскими буквами (строку поиска, строку замены, имя базы данных, имя пользователя базы данных, пароль пользователя базы данных) на ваши.

// Ищем…
$search = ‘ЧТО_НУЖНО_ЗАМЕНИТЬ‘; // Например: ‘www.old-site.ru’

// Меняем на… Используется при $queryType = ‘replace’
$replace = ‘НА_ЧТО_ЗАМЕНЯЕМ‘; // Например: ‘www.new-site.ru’

// Настройки базы данных
$hostname = «localhost»;
$database = «ИМЯ_БАЗЫ_ДАННЫХ«;
$username = «ИМЯ_ПОЛЬЗОВАТЕЛЯ_БАЗЫ_ДАННЫХ«;
$password = «ПАРОЛЬ_ПОЛЬЗОВАТЕЛЯ_БАЗЫ_ДАННЫХ«;

// Варианты значения переменной $queryType ‘search’ (вывод результатов поиска) или ‘replace’ (поиск с заменой)
$queryType = ‘replace’;

// Показывать ошибки или нет (true/false)
$showErrors = true;

— Забэкапить базу данных (либо через консоль, либо через экспорт в PHPMyAdmin) — обязательно.
— Скопировать файл скрипта (mysql-replace-all.php) на сервер, где расположен сайт.
— Запустить скрипт из браузера: ВАШ-САЙТ.RU/mysql-replace-all.php
— Увидеть в браузере результат работы.

Если заменить значение переменной $queryType на ‘search’, Вы можете убедиться в правильности настройки скрипта и его работоспособности. При поиске скрипт ничего не меняет в БД и выводит в браузере только результат поиска.

(Просмотрено 682 раз, 1 раз за сегодня)
Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Комментариев к записи: 1

  1. aizek:

    По замене текста я использовал вот этот вариант может кому пригодится — https://www.youtube.com/watch?v=U3hMBViOnHU

Оставить комментарий