1

Тема: Перевод базы данных c latin1 в cp1251_general_ci

Столкнулся с проблемой.
Когда захожу в phpMyAdmin, то кодировочка (MySQL-кодировка: UTF-8 Unicode (utf8),  далее в базе (latin1_swedish_ci)

дампирую, запускаю Денвер, импортирую и получаю абракадабру.

Как решить проблему? МоЖ, кто сталкивался?
На денвере MySQL-кодировка: Windows Cyrillic (cp1251) , базы cp1251_general_ci

2

Re: Перевод базы данных c latin1 в cp1251_general_ci

serg-php
Покажите, пожалуйста, структуру любой одной таблицы и пример данных содержащих кирилицу в том виде, как они отображаются в дампе.

3

Re: Перевод базы данных c latin1 в cp1251_general_ci

Hanut сказал:

serg-php
Покажите, пожалуйста, структуру любой одной таблицы и пример данных содержащих кирилицу в том виде, как они отображаются в дампе.

CREATE TABLE `sbbleads_ads` (
  `sbtitle` varchar(255) default NULL,
  `id` bigint(20) NOT NULL auto_increment,
  `url` varchar(255) NOT NULL default '',
  `bannerurl` varchar(255) NOT NULL default '',
  `credits` bigint(20) NOT NULL default '0',
  `displays` bigint(20) NOT NULL default '0',
  `approved` varchar(255) NOT NULL default '',
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

--
-- Дамп данных таблицы `sbbleads_ads`

4

Re: Перевод базы данных c latin1 в cp1251_general_ci

serg-php
Со структурой все ясно, теперь покажите данные.

5

Re: Перевод базы данных c latin1 в cp1251_general_ci

Hanut сказал:

serg-php
Со структурой все ясно, теперь покажите данные.

Вы имели ввиду эту абракадабру?
INSERT INTO `sbbleads_article` VALUES(63, 43, '????????? ??????? ? ????????? ? ??????? ?????? ???????', '??? ?? ???? ???????????? ????????? ???????? ????????? ??????? – ??? ???????????? ????????? ?????? ??????? ????? ????????. \n        <BR/><BR/> ?????????? ??????? ???????? ?????, ????????? ?????? ?? ????? ?????? ?????? ???????????. ??? ?????? ???? ?? 9 ?? 12 ?????????. ?? ?????? ? ?? ??????. ???? ?????? - ??????? ???????????, ???? ?????? - ????? ?????????? ? ??????, ??????? ?? ????????. ??-?? ??????????. ????? ????? ???????, ?????? ?????????? ?????. ???? ????????? ?????? ????, ?????????? ???????? ?? ?????? ? ????????????, ?? ? ? ???????.

6

Re: Перевод базы данных c latin1 в cp1251_general_ci

serg-php
Отправил на вашу почту скрипт перекодировки и инструкцию по его использованию.
Отпишитесь, пожалуйста, о результатах.

7

Re: Перевод базы данных c latin1 в cp1251_general_ci

Hanut сказал:

serg-php
Отправил на вашу почту скрипт перекодировки и инструкцию по его использованию.
Отпишитесь, пожалуйста, о результатах.

Модератор, большое спасибо! Объязательно отпишусь!

8

Re: Перевод базы данных c latin1 в cp1251_general_ci

Тестил, залил содержимое из файла pet_ru_09_12_07[1].sql.zip в 1.txt
Запускаю конвертер и получаю : Incorrect input filename!

9

Re: Перевод базы данных c latin1 в cp1251_general_ci

serg-php
Распакуйте zip архив.

10

Re: Перевод базы данных c latin1 в cp1251_general_ci

Столкнулся с той же проблемой smile
Пришлите плиз и на мое мыло скрипт перекодировки и инструкцию по его использованию
И вообще хорошо было бы его где-нить выложить , а сдесь выложить ссылку , я думаю такие траблы у многих

11

Re: Перевод базы данных c latin1 в cp1251_general_ci

Jorik
Никаких волшебных скриптов не существует. По сути обычная функция iconv().
Если хотите, чтобы вам помогли в перекодировании дампа, то откройте новую тему и опишите свою проблему. Постараемся разобраться.

12

Re: Перевод базы данных c latin1 в cp1251_general_ci

Hanut, мне советовали дампить dumper.php
Говорят там проблем с кодировкой нет.
Ты таким инструментом пользовался?

13

Re: Перевод базы данных c latin1 в cp1251_general_ci

serg-php сказал:

Hanut, мне советовали дампить dumper.php

Не пробовал.
Для создания дампа пользуюсь phpMyAdmin, или из командной строки mysqldump.
Проблем с кодировкой не будет, если данные лежат в таблицах с правильной кодировкой.

14

Re: Перевод базы данных c latin1 в cp1251_general_ci

Hanut, рекомендую dumper.php (хотя мне он с перекодировкой не помог)

в  phpMyAdmin при выполнении большого запроса браузер виснет!

15

Re: Перевод базы данных c latin1 в cp1251_general_ci

serg-php сказал:

Hanut, рекомендую dumper.php (хотя мне он с перекодировкой не помог)

Спасибо за рекомендацию, но последние версии phpMyAdmin, прекрасно справляются с импортом дампов любого размера и вида. По перекодировке я вам уже говорил что надо делать. Если не помогло, то хоть скажите что получилось.

serg-php сказал:

в  phpMyAdmin при выполнении большого запроса браузер виснет!

А у меня не виснет. smile
Попробуйте последнюю версию.

16

Re: Перевод базы данных c latin1 в cp1251_general_ci

[spoiler]последние версии phpMyAdmin[/spoiler]

на моем хостинге phpMyAdmin - 2.11.2

его врят ли удасться изменить!

Решение проблемы пока не нашел.

17

Re: Перевод базы данных c latin1 в cp1251_general_ci

serg-php сказал:

на моем хостинге phpMyAdmin - 2.11.2

Эта версия прекрасно импортирует дампы большого размера.

serg-php сказал:

Решение проблемы пока не нашел.

Какой проблемы?

18

Re: Перевод базы данных c latin1 в cp1251_general_ci

Hanut,
проблема-то

'????????? ??????? ? ????????? ? ??????? ?????? ???????

Вариантов достаточно пробовал.
Констатирую:

1. Дамп для Денвера с нормайльной кодировкой не создал;
2. Не могу сделать импорт через SQL запрос "вопросики появляются типа ??? ?????????"

19

Re: Перевод базы данных c latin1 в cp1251_general_ci

Hanut сказал:

serg-php
Отправил на вашу почту скрипт перекодировки и инструкцию по его использованию.
Отпишитесь, пожалуйста, о результатах.

Прошу Вас кинуть такой файл и мне, и если можно как можно быстрее.
Зарание благодарю.

20

Re: Перевод базы данных c latin1 в cp1251_general_ci

Nikita
Отослал. Если не сможете разобраться, то откройте новую тему, попробуем разобраться вместе.

21

Re: Перевод базы данных c latin1 в cp1251_general_ci

Hanut,

мне хостер вообще говорит, что при MYSQL latin1 ввод данных и дамп на русском невозможен.

22

Re: Перевод базы данных c latin1 в cp1251_general_ci

serg-php
Если не можете перекодировать сами, то пришлите дамп, попробую перекодировать.

23 (изменено: LMP, 2008-12-21 19:28:05)

Re: Перевод базы данных c latin1 в cp1251_general_ci

Добрый вечер! Помогите переконвертировать базу из latin1_swedish_ci в cp1251. На форуме вбулит слоплошные проблемы с кодировкой.. ?????? ? ????????? ?? ????? ?? www.peterska2.

24

Re: Перевод базы данных c latin1 в cp1251_general_ci

LMP
Возможно одной перекодировки не хватит.

1) Покажите вывод SQL запроса (выполняется в phpMyAdmin):

SHOW GLOBAL VARIABLES LIKE 'char%';

2) Сохраните дамп в utf8, откройте его в текстовом редакторе и скопируйте структуру любой таблицы в которой есть кириллица (начиная с CREATE TABLE и далее), а также то как она выглядит.