F#ck dump system

Главные вкладки

Аватар пользователя Oboggy Oboggy 29 июля 2008 в 17:08

Вчера заливал готовый drupal-сайт на хостинг. Нужно было перекинуть БД через интерфейс phpmyadmin (по другому никак). Все стопорилось на дампе таблицы locales_target. За ночь я проклял интернет-провайдера, хостинг-провайдера, разрабов mysql и phpmyadmin Smile

Для тех, кто может столкнуться с этим:
У себя__

  1. удаляете на сайте русский язык
  2. делаете бэкап БД через dumper, исключая таблицы locales_source и locales_target

На хостинге__

  1. импортируете бэкап БД через phpmyadmin
  2. заливаете сайт на сервер
  3. [имя пользователя, пароль, имя базы храняться в settings.php]
  4. создаете таблицы locales_source и locales_target при помощи sql запросов
    CREATE TABLE `locales_source` (
      `lid` int(11) NOT NULL auto_increment,
      `location` varchar(255) NOT NULL default '',
      `textgroup` varchar(255) NOT NULL default 'default',
      `source` blob NOT NULL,
      `version` varchar(20) NOT NULL default 'none',
      PRIMARY KEY  (`lid`),
      KEY `source` (`source`(30))
    ) ENGINE=MyISAM AUTO_INCREMENT=3986 DEFAULT CHARSET=utf8 AUTO_INCREMENT=3986 ;
    CREATE TABLE `locales_target` (
      `lid` int(11) NOT NULL default '0',
      `translation` blob NOT NULL,
      `language` varchar(12) NOT NULL default '',
      `plid` int(11) NOT NULL default '0',
      `plural` int(11) NOT NULL default '0',
      PRIMARY KEY  (`language`,`lid`,`plural`),
      KEY `lid` (`lid`),
      KEY `plid` (`plid`),
      KEY `plural` (`plural`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

    *запросы можно получить через экспорт таблицы в phpmyadmin

  5. добавляете русский язык

Комментарии

Аватар пользователя KCEOH KCEOH 29 июля 2008 в 23:20

Что за база была? У меня макс пока было 87 мб в bzip2 (сама база форума ~ 20 метров, плюс поисковый индекс), нормально всё обрабатывается, и кодировки правильно импортирует/экспортирует.

Аватар пользователя EllECTRONC EllECTRONC 30 июля 2008 в 21:42

Обычная база ~2МБ, не больше, но выдал километровую ошибку, при восстановлении, кажется (давно было)...
Создание бэкапа - проходит нормально, а при восстановлении ошибка. Причем восстановить хотела прямо сразу, не отходя от кассы, но тест не удался...

Аватар пользователя direqtor direqtor 30 июля 2008 в 5:16

Бывают такие проблемы.
Спасало выставление сравнения базы в UTF8. У хостеров всегда win.
Пару раз даже сам дамп ручками правил. Правда, не помню, что там было.
Помогает также раздельный перенос.
Еще всегда чищу таблицы cache - они иногда здоровенные, больше чем вся остальная инфа.

Аватар пользователя VladSavitsky VladSavitsky 30 июля 2008 в 12:32

Я тоже чищу, что только можно и оптимизирую таблицы.
Можно также делать дамп только одной или нескольких таблиц, если они большие.
Экспериментально вычислил, что, если архив дампа больше 200 кб, то phpMyAdmin не может его на сервере обработать.
Поэтому использую Sypex dumper или подобные.
Вот моя статья о восстановлении дампа на сервере с описанием разных методов: Восстановливаем базу данных.