Как лечить PhpMyAdmin и установить cp1251

Тема в разделе "Администрирование серверов", создана пользователем pilot233, 17 ноя 2007.

Статус темы:
Закрыта.
Модераторы: mefish, stooper
  1. pilot233

    pilot233

    Регистр.:
    24 июн 2006
    Сообщения:
    405
    Симпатии:
    88
    Смысл такой: База создаётся в cp1251 (панель ASP Manager), далее идем в PhpMyAdmin открывается первое окно где вводишь базу и пароль так вот на этой стадии уже стоит utf-8 (как сменить). Далее открывается PhpMyAdmin где твоя база и там есть меню гдеесть пункт Mysql - кодировка (стоит utf-8), далее сопоставление тоже стоит utf-8. Далее ниже есть интересное меню где описана вся кодировка на сервере Системные переменные MySQL и вот, что там:

    character set clientutf8(Глобальное значение)cp1251character set connectionutf8(Глобальное значение)cp1251character set databasecp1251character set filesystembinarycharacter set resultsutf8(Глобальное значение)cp1251character set servercp1251character set systemutf8character sets dir/usr/local/share/mysql/charsets/collation connectionutf8_unicode_ci(Глобальное значение)cp1251_general_cicollation databasecp1251_general_cicollation servercp1251_general_ci

    И как все это привести в порядок, в смысле установить везде по умолчанию cp1251.

    Пробовал в my.cnf прописывать (видимо неправильно) разное, что нашел в сети:

    [client]
    #password = your_password
    port = 3306
    socket = /tmp/mysql.sock
    default-character-set=cp1251
    character-sets-dir=/usr/local/share/mysql/charsets/
    character-set-connection=cp1251
    collation-connection=cp1251
    collation="cp1251_general_ci"
    character-set-client=cp1251
    character-set-results=cp1251
    collation-database=cp1251
    character-set-database=cp1251
    collation-server=cp1251
    # Here follows entries for some specific programs
    # The MySQL server
    [mysqld]
    port = 3306
    socket = /tmp/mysql.sock
    skip-locking
    skip-innodb
    key_buffer = 64K
    max_allowed_packet = 2M
    table_cache = 32
    sort_buffer_size = 256K
    read_buffer_size = 512K
    read_rnd_buffer_size = 512K
    net_buffer_length = 4K
    thread_stack = 64K
    default-character-set=cp1251
    collation="cp1251_general_ci"
    character-set-server=cp1251
    init-connect="SET NAMES cp1251"
    #skip-character-set-client-handshake

    Ничего не меняется иногда в некоторых сочетаниях Mysql вообще не запускается. ПОДСКАЖИТЕ КТО В ТЕМЕ!!!
     
  2. grey109

    grey109

    Регистр.:
    3 апр 2007
    Сообщения:
    176
    Симпатии:
    19
    Для начала версии рнр и мускл-а скажи.
     
  3. pilot233

    pilot233

    Регистр.:
    24 июн 2006
    Сообщения:
    405
    Симпатии:
    88
    phpMyAdmin-2.11.2.1
    mysql-server-5.0.45_1
    php5-5.2.4_1
    apache-2.2.6_2
    FreeBSD 6.2...
     
  4. unixman

    unixman

    Регистр.:
    6 сен 2006
    Сообщения:
    688
    Симпатии:
    61
    Прописать charset 1251 насильно в phpmyadmin
     
  5. pilot233

    pilot233

    Регистр.:
    24 июн 2006
    Сообщения:
    405
    Симпатии:
    88
    А по подробнее можно?
     
  6. Gordon01

    Gordon01 Создатель

    Регистр.:
    2 май 2006
    Сообщения:
    17
    Симпатии:
    1
    Я никак не могу решить эту проблему, взял да пересобрал mysql из исходников с cp1251 по умелчанию, заработало.
     
  7. zaind

    zaind Постоялец

    Регистр.:
    10 дек 2006
    Сообщения:
    60
    Симпатии:
    3
    Для решения этой проблемы нужно всего лишь в /etc/my.cnf дописать:

    Код:
    [mysqld]
    init-connect="SET NAMES cp1251"
    character-set-server=cp1251
    collation-server=cp1251_general_ci
    
    [client]
    default-character-set=cp1251
    
    После этого перезапустить mysql.

    Правда, ещё не забудьте базы заново перезалить, для которых кодировку менять надо было, иначе этот метод будет эффективен только для вновь создаваемых баз.
     
Статус темы:
Закрыта.