|
|
|
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
|
|||
|---|---|---|---|
|
#18+
Доброго дня всем :) Удаленная система: * 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 ..или.. Код: plaintext В результате дамп загружается без ошибок, таблица создается, данные загружаются, но в БД вместо кириллических символов оказывается "мусор", т.е. SELECT выполненный в phpMyAdmin или вывод данных черех PHP скрипт возвращают мусор вроде : АБАГЯН, АБАДР?ЕВ, АБАЕВ, АБАЗА, При этом на удаленном MySQL 4.0.15 поддержка кириллицы win-1251 есть, т.е. когда я в phpMyAdmin вставляю с помощью INSERT данные с кириллицей, то там все пучком и никакого "мусора". Техподдержка ValueHost молчит... На форуме ValueHost и на здешнем поиском искал, но именно такой проблемы с кодировками нет, то есть когда локально дамп загружается корректно, а удаленно образуется "мусор" Помогите, пожалуйста, побороть проблему, а то ума не приложу в чем дело :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 20:39 |
|
||
|
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
|
|||
|---|---|---|---|
|
#18+
А у них НАСТОЛЬКО ископаемый phpMyAdmin?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.03.2005, 20:55 |
|
||
|
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
|
|||
|---|---|---|---|
|
#18+
А у них НАСТОЛЬКО ископаемый phpMyAdmin?? Да, но лично мне хватает :) Меня больше напрягают различия между мускулом 4.0 _и_ 4.1 или 5.0. Между последними двумя разница тоже существенная, но для небольших web приложений, не использующих вью, UDF|SP, новые типы данных и прочее что есть в 5.0 она не очень большая ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 16:38 |
|
||
|
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
|
|||
|---|---|---|---|
|
#18+
Вот в чём было дело..... 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. здесь дамп создается для 1 таблицы = MYTABLE например если в ней много строк, иначе можно создавать для всех таблиц БД сразу указав только БД MYDATABASE. Параметры Код: plaintext Код: plaintext не нужны если в my.cnf есть путь к /share/charsets/ и в секции [client] есть строка default-character-set=cp1251, и вы сказали mysqldump прочитать параметры из my.cnf 2) преобразуем дамп из Unicode в win-1251 с помощью любого редактора (например UltraEdit), который имеет функцию Unicode -> ANSI 3) архивируем дамп, загружаем на Ftp 4) загружаем дамп в БД в SSH сессии выполняем следующую команду: Код: plaintext Параметр --default-character-set=cp1251 указать можно, но он не нужен 5) проверяем содержимое БД ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 16:44 |
|
||
|
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
|
|||
|---|---|---|---|
|
#18+
Поделитесь, как заставили Query Browser на 4.0 cp1251 понимать? C уважением, Евгений Крюков ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2005, 16:22 |
|
||
|
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
|
|||
|---|---|---|---|
|
#18+
Поделитесь, как заставили 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? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2005, 22:31 |
|
||
|
MySQL 4.0 на ValueHost.ru: загрузка дампа (dump) с win-1251
|
|||
|---|---|---|---|
|
#18+
Tangerine Dream если в настройках Query Browser установлены кириллические шрифты для данных, для SQL кода и т.п + еще SQL скрипт открыт как ANSI, а не UTF8 Установил, всё равно кракозябры, база 4.0.15 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2005, 12:15 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=663&tid=1854239]: |
0ms |
get settings: |
5ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
43ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 217ms |
| total: | 332ms |

| 0 / 0 |
