[Sysadmins] Проблема с MySQL ( ручной ввод ) в Desktop 4.0
Catherine
=?iso-8859-1?q?jes_=CE=C1_hppi=2Etroitsk=2Eru?=
Ср Сен 12 23:10:26 MSD 2007
Доброе время суток!
Стояла 7-ая федора с 5-м MySQL сервером.
Локаль была utf8. Жило несколько баз двух типов:
БАЗА_1 (девелоперские):
создавались файлы .sql в cp1251
типа
DROP TABLE IF EXISTS ....
CREATE TABLE ...
INSERT INTO ... (...,...) VALUES ("РУССКИЕ БУКОВКИ В cp1251");
и без проблем заливались в базу командой
$mysql <code.sql,
в браузере показывалось всё совершенно нормально
с этих баз не было произведено дампа
БАЗА_2:
была ранее залита в федору с дампа, с неё был сделан дамп в федоре (без
предварительных опций)
он вылился с
ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=latin1
после каждой таблицы
и с /*!40101 SET NAMES utf8 */;
в начале файла
РЕЗУЛЬТАТ на 2.6.18-std-smp-alt7 c MySQL-server 5.0.46:
-----------------------------------------------------------------------------
— БАЗА_2 : отлично всё подхватилось (charsets) (русские буковки отобразились
кракозябрами только в самом файле дампа dump_БАЗА_2.sql), в браузере всё
видать на ура
— БАЗА_1 : дампа сделано не было, но теперь хоть ты ТРЕСНИ!!! — не могу
вводить нифига в базу ручным способом:
$mysql <code.sql
=> __невозможно заниматься разработкой!!__
что я ни пишу в этот code.sql
(всякие /*!40101 SET NAMES cp1251 */; и пр.
SET collation_connection = cp1251_general_ci;
SET collation_database = cp1251_general_ci;
SET collation_server = cp1251_general_ci;
SET character_set_client = cp1251;
SET character_set_connection = cp1251;
SET character_set_database = cp1251;
SET character_set_results = cp1251;
SET character_set_server = cp1251; — НЕ ПОМОГАЕТ) , как ни ввожу опции
при старте mysqld и загрузке базы (с --default_character_set=cp1251 и без)
или пытаюсь всё это делать с utf8 или локаль меняю на cp1251
— НИКАК НЕ ПОЛУЧАЕТСЯ!!
не могу вводить запросы ручным способом (т.е., заливкой файла с запросами или
с консоли mysql> ) — всегда вижу вопросики в браузере и всё тут :(
с консоли вижу буквы ТОЛЬКО ЕСЛИ база загружена в utf8, но в браузере всё
равно ВСЕГДА вижу вопросики
если вы меня пошлёте править скрипт, выкладывающий текст в браузер — то не
нада, пжлста! у меня ТЕМ ЖЕ скриптом БАЗА_2 показывается __отлично__
но писать русские буквы в запросе и code.sql в кодировке latin1 (чтобы т.о.
восстановить БАЗА_1) я не могу!
# cat /var/lib/mysql/my.cnf
[client]
default-character-set = cp1251
[mysqld]
default-character-set = cp1251
init-connect = 'SET NAMES cp1251'
так тоже не работает:
[client]
port=3306
character_set_client="cp1251"
character_set_connection="cp1251"
collation_connection="cp1251"
character_set_client="cp1251"
character_set_connection="cp1251"
character_set_results="cp1251"
collation_database="cp1251"
character_set_database="cp1251"
collation_server="cp1251"
[mysqld]
default-character-set=cp1251
default-collation="cp1251_general_ci"
init-connect="SET CHARSET cp1251"
init-connect="SET NAMES cp1251"
поможите люди добрыыыыые!
гугль перерыт, все рекомендации сделаны — ФИГ!
Почему в федоре у меня ТОТ ЖЕ MySQL-server (и консоль была та же и запросы
были тоже в cp1251!) позволял мне посылать запросы
командой $mysql <my-code.sql в базу с той же cp1251 (да хоть и с консоли
вводить — тоже получалось) (и в браузере всё было
ОК!), а на Альте я не могу делать то же самое?? Ж8(
ВСЕГДА получаю ТОЛЬКО вопросики :'(
Неужели дело в сборке и работать с базой по сути нельзя??
--
с уважением,
Catherine
Подробная информация о списке рассылки Sysadmins