Перенос БД форума

Статус
В этой теме нельзя размещать новые ответы.

BaduN

Постоялец
Регистрация
18 Янв 2008
Сообщения
80
Реакции
10
У меня на локалке стоит денвер. Возникла необходимость перенести БД форума от хостера на локалку (хочу поэксперементировать над форумом без последствий).

Перенес БД на локалку и почти все работает хорошо. Только не отображается русский шрифт, а вместо него знаки вопроса сплошные. Помогите решить проблему, я знаю что дело в кодировке БД скорее всего. У хостера она utf8, у меня на локалке тоже вроде в пхпхайадмин написано MySQL-кодировка: UTF-8 Unicode (utf8)... но все равно почему-то знаки вопроса. Как быть? Где и что поправить?

Ах да.. версия форума 3.6.4.
 
Не ту кодировку смотришь :)
В пхпмайадмин зайди в базу, там будет колока сравнение. Там будет указана кодировка таблиц.
Для просмотра ссылки Войди или Зарегистрируйся
Сделай им дамп на хостинге. Потом открой текстовым редактором, если там русские буквы будут читабельными, то с его-же помощью восстанавливай на локалке, если нужно поставь принудительную кодировку при восстановлении.
 
В колонке "сравнение" и у меня на локалке и у хостера стоит "utf8_general_ci".
Дамп БД делал и востанавливал именно дампером, линк на который та мне дал. Пытался открыть файл дампа блокнотом - русский шрифт там не читается, вместо него там предположительно вот что "äìèГ*èñòðà öèå", тогда как английский шрифт (ники юзеров и прочее) отлично просматриваются. Я дамп чтоли не так делаю или что?
 
Создай базу.

Выполни через ПХП майадмин запрос:
ALTER DATABASE `database` DEFAULT CHARACTER SET cp1251 COLLATE cp1251_general_ci;

где database - имя твоей базы

а потом уже испортируй в нее данные.

если не получится, измени на cp1251 на utf8 и cp1251_general_ci на utf8_general_ci
 
  • Нравится
Реакции: lift
x_blade
Не помогает :( Пробовал и первый и второй варианты...
 
У тебя дамп создается в неправильной кодировке.
Булка оч интересно работает с базой.
По дефолту булка при установке, обновлении и т.д. заливает данные в базу сопоставляя их с latin1, так что скрипту который делает дамп необходимо указать использовать кодировку latin1 а потом уж когда получишь нормальный дамп правь в нём кодировку на cp1251 и заливай на локалку.
Если не получается, то пиши на каком месте не прошло - разберёмся.
 
levonti
БД перенес, русские названия тем, разделов отображаются корректно. Но вот когда пытаешься открыть ЛЮБУЮ тему появляется постоянно одно и тоже
rue, false); $show['threadrating'] = iif($forum['allowratings'] AND $forumperms & $vbulletin->bf_ugp_forumpermissions['canthreadrate'], true, false); $show['ratethread'] = iif($show['threadrating'] AND (!$threadinfo['vote'] OR $vbulletin->options['votechange']), true, false); $show['closethread'] = iif($threadinfo['open'], true, false); $show['unstick'] = iif($threadinfo['sticky'], true, false); $show['reputation'] = ($vbulletin->options['reputationenable'] AND $vbulletin->userinfo['userid'] AND $vbulletin->userinfo['permissions']['genericoptions'] & $vbulletin->bf_ugp_genericoptions['isnotbannedgroup']); $pagenumber = $vbulletin->GPC['pagenumber']; if (!$show['threadrating'] OR !$vbulletin->options['allowthreadedmode']) { $nodhtmlcolspan = 'colspan="2"'; } ($hook = vBulletinHook::fetch_hook('showthread_complete')) ? eval($hook) : false; // ############################################################################# // output page eval('print_output("' . fetch_template('SHOWTHREAD') . '");'); /*======================================================================*\ || #################################################################### || # CVS: $RCSfile$ - $Revision: 15826 $ || #################################################################### \*======================================================================*/ ?>
Какую бы тему ни пытался открыть - выскакивает вот это. В чем дело...
 
levonti
БД перенес, русские названия тем, разделов отображаются корректно. Но вот когда пытаешься открыть ЛЮБУЮ тему появляется постоянно одно и тоже

Какую бы тему ни пытался открыть - выскакивает вот это. В чем дело...
Это последний код из файла showthread.php, попробуй перезалить его, проблема должн исчезнуть.
 
g0rn
Спасибо огромное... и как это я сам не догадался проверить это... действительно этот файлик некорректно скопировался.. стыдно даже мне ))
Вообще всем спасибо за помощь. Отдельное спасибо levonti и g0rn.
Все удачно востановил. Вроде все работает на локалке. Ну а для тех, у кого такая же проблемка как у меня возникла и кто чего то недопонял из месаг в топе, вот краткий и надеюсь понятный мануал:
1. Качаем скрипт дампера отсюда sypex.net
2. Меняем в нем строчку
define('CHARSET', 'auto');
на
define('CHARSET', 'latin1');
, заливаем на хост и делаем дамп форума.
3. Затем заливаем скрипт дампера к себе на локалхост, прдварительно изменив в нем
define('CHARSET', 'latin1');
на
define('CHARSET', 'auto');
и
define('RESTORE_CHARSET', 'cp1251');
на
define('RESTORE_CHARSET', 'forced->cp1251');
4. Востанавливаем дамп форума.
5. Радуемся корректному отображению как русских, так и английских шрифтов.
 
А вот вопрос на засыпку... СтоИт форум. Сделал резервное копирование всей базы, затем, переношу файлик архива на новый хост, с только что установленным скриптом бюлетня, но при попытке восстановления базы дампом тут же выскакивает ошибка:
"Возникла ошибка!
Неправильный запрос.
Duplicate entry '1' for key 1 (256)"
Пробовал удалить полностью таблицы из базы.. почти тоже самое,только пишет что-то про 256байт или килобайт.
Может не все строки таблицы нужно сохранять? Хочется дизайн перенести с хаками и сообщения с юзерами.

п.с. пробовал и пхпадмином... задумывается на несколько минут и... ошибка открытия страницы. Добавляет пару строчек в итоге и всё.
Подскажите плиз, как правильно перенести всё?

Может просто по фтп всё слить со старого хоста и залить на новый?
большое спасибо.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху