powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
7 сообщений из 7, страница 1 из 1
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
    #32959745
Tangerine Dream
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго дня всем :)

Удаленная система:
* nix,
* MySQL 4.0.15 с поддержкой cp1251,
* Apache 1.3,
* PHP 4,
* phpMyAdmin 2.3

Локальная система:
* Windows XP eng с russian locale, т.ею работа с кириллицей поддерживается полноценно во всех приложениях,
* MySQL 4.0.24 (mysqld-nt.exe) с поддержкой cp1251,
* Apache 1.3,
* PHP 4.3.10,

У меня есть локальная БД содержащая данные с кодировкой windows-1251,т.е при работе с БД через Query Browser или через PHP эти данные видны именно как кириллические символы. Чтобы перенести БД на сервер ValueHost я создал дамп файл с помощью mysqldump , которая входит именно в \bin в MySQL 4.0.24 ( у меня на машине стоят еще 4.1 и 5.0). На локальном MySQL 4.0.24 дамп файл выполняется без ошибок, создает таблицу и загружает данные причем через mysql и Query Browser. Данные в БД видны как кириллические символы.
Потом я загружаю zip архив дампа на ftp сервер ValueHost в свой домашний каталог, после чего через SSH распаковываю архив и загружаю дамп следующими командами:

Код: plaintext
mysql -uMYUSER -pMYPASS MYDATABASE < mydump.sql


..или..

Код: plaintext
mysql -uMYUSER -pMYPASS --default-character-set=cp1251 MYDATABASE < mydump.sql

В результате дамп загружается без ошибок, таблица создается, данные загружаются, но в БД вместо кириллических символов оказывается "мусор", т.е. SELECT выполненный в phpMyAdmin или вывод данных черех PHP скрипт возвращают мусор вроде :


АБАГЯН, АБАДР?ЕВ, АБАЕВ, АБАЗА,


При этом на удаленном MySQL 4.0.15 поддержка кириллицы win-1251 есть, т.е. когда я в phpMyAdmin вставляю с помощью INSERT данные с кириллицей, то там все пучком и никакого "мусора".

Техподдержка ValueHost молчит... На форуме ValueHost и на здешнем поиском искал, но именно такой проблемы с кодировками нет, то есть когда локально дамп загружается корректно, а удаленно образуется "мусор"

Помогите, пожалуйста, побороть проблему, а то ума не приложу в чем дело :(
...
Рейтинг: 0 / 0
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
    #32959764
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А у них НАСТОЛЬКО ископаемый phpMyAdmin??
...
Рейтинг: 0 / 0
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
    #32961435
Tangerine Dream
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А у них НАСТОЛЬКО ископаемый phpMyAdmin??
Да, но лично мне хватает :) Меня больше напрягают различия между мускулом 4.0 _и_ 4.1 или 5.0. Между последними двумя разница тоже существенная, но для небольших web приложений, не использующих вью, UDF|SP, новые типы данных и прочее что есть в 5.0 она не очень большая
...
Рейтинг: 0 / 0
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
    #32961458
Tangerine Dream
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот в чём было дело.....

1) созданный командой mysqldump дамп был в 2-байтовом Unicode.
Поскольку cp1251 это 1-байтовая кодировка, то это может показаться бредом (т.к например те же файлы с разделителями созданные при помощи SELECT INTO OUTFILE получаются в 1-байтовой кодировке ANSI), но просмотр в hex режиме в Hiew или UltraEdit подтверждает это. Иногда полезно обращать внимание на размеры файлов. ;)

2) загрузка дампа с Unicode под Windows проходит без ошибок и корректно в отличие от *nix, где в БД образуется "мусор". Причем для загрузки используются одни и те же команды

----------------------------------
Пошаговая инструкция переноса локальной БД с данными в win-1251 из MySQL под WIndows __на__ ValueHost или другой хостинг провайдера с MySQL 4.0 под *BSD/*nix (возможно кому-то пригодится):

1) создаем дамп
Код: plaintext
1.
2.
mysqldump -uroot -p --character-sets-dir="g:/MySQL4.0/share/charsets/"
  --default-character-set=cp1251 MYDATABASE MYTABLE > h:/temp/mydump.sql

здесь дамп создается для 1 таблицы = MYTABLE например если в ней много строк, иначе можно создавать для всех таблиц БД сразу указав только БД MYDATABASE. Параметры

Код: plaintext
--character-sets-dir="g:/MySQL4.0/share/charsets/"
и
Код: plaintext
--default-character-set=cp1251

не нужны если в my.cnf есть путь к /share/charsets/ и в секции [client] есть строка default-character-set=cp1251, и вы сказали mysqldump прочитать параметры из my.cnf

2) преобразуем дамп из Unicode в win-1251
с помощью любого редактора (например UltraEdit), который имеет функцию Unicode -> ANSI

3) архивируем дамп, загружаем на Ftp

4) загружаем дамп в БД
в SSH сессии выполняем следующую команду:

Код: plaintext
mysql -uMYUSER -pMYPASS MYDATABASE < mydump.sql

Параметр --default-character-set=cp1251 указать можно, но он не нужен

5) проверяем содержимое БД
...
Рейтинг: 0 / 0
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
    #32971754
Doctor013
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поделитесь, как заставили Query Browser на 4.0 cp1251 понимать?
C уважением, Евгений Крюков
...
Рейтинг: 0 / 0
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
    #32972423
Tangerine Dream
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поделитесь, как заставили Query Browser на 4.0 cp1251 понимать?
Query Browser понимает cp1251 с любым MySQL сервером (проверял на 4.0 и 4.1), если в настройках Query Browser установлены кириллические шрифты для данных, для SQL кода и т.п + еще SQL скрипт открыт как ANSI, а не UTF8 (если я прав, то по мойму даже SET CHARACTER SET cp1251_koi8 в скрипте не нужна) в отличие от mysql, для которой требуется либо --defaults-file="путь к my.cnf/my.ini" с секцией [client]/[mysql] со строчками "default-character-set=cp1251" и т.п., либо соответствующие параметры при вызове или вопрос был именно про то как заставить MySQL 4.0 понимать cp1251?
...
Рейтинг: 0 / 0
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
    #32975808
Doctor013
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Tangerine Dream
если в настройках Query Browser установлены кириллические шрифты для данных, для SQL кода и т.п + еще SQL скрипт открыт как ANSI, а не UTF8

Установил, всё равно кракозябры, база 4.0.15
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]