Вопрос по кодировке базы MySQL

Тема в разделе "Базы данных", создана пользователем rus-us, 3 авг 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. rus-us

    rus-us

    Регистр.:
    8 сен 2007
    Сообщения:
    153
    Симпатии:
    72
    Нужен совет.

    У меня сайт работает в кодировке windows-1251
    Для базы установлено сравнение latin1 и все таблицы тоже в latin1

    У хостера:
    character_set_client latin1
    character_set_connection latin1
    character_set_database latin1
    character_set_filesystem binary
    character_set_results latin1
    character_set_server latin1
    character_set_system utf8
    character_sets_dir /usr/share/mysql/charsets


    Сейчас нужно перезалить базу на сайт (дамп в cp1251)
    Перекодировать и залить могу как угодно, но мне нужен лучший вариант в плане работоспособности и сохраности данных.

    Например, какой будет лучше из этих двух:
    1) установить сравнение и все таблицы в cp1251, и при этом в скрипте использовать код
    @mysql_query ("SET NAMES `cp1251`");

    2) оставить все как было раньше в latin1 и скрипт оставить как есть

    спасибо
     
  2. X-Ception

    X-Ception Прохожие

    несмотря на то, что latin1 корректно отображает символы кириллицы, для хранения этих символов используются другие коды, и из-за этого могут возникать проблемы с поиском, сортировкой и т.п. по такой базе. Можно сказать, что latin1 - это некорректная кодировка для полноценной работы с кириллицей, поэтому однозначно первый вариант - переводите все данные и сами таблицы в cp1251
     
  3. rus-us

    rus-us

    Регистр.:
    8 сен 2007
    Сообщения:
    153
    Симпатии:
    72
    Про поиск и сортировку я знаю, поэтому и интерисуюсь.

    Т.е. (mysql_query ("SET NAMES `cp1251`")) наилучший вариант? Просто видел мнения которые заставили меня сомневаться...
     
  4. X-Ception

    X-Ception Прохожие

    Ничего лучше тут уже не придумаешь :)
    Тогда давайте ссылки, чтобы было что обсуждать.
     
  5. AgpeHaJIuH

    AgpeHaJIuH Постоялец

    Регистр.:
    7 июл 2008
    Сообщения:
    67
    Симпатии:
    19
    А как насчет utf8? У меня сравнение utf8_general_ci стоит, с кириллицей все в порядке..
     
  6. rus-us

    rus-us

    Регистр.:
    8 сен 2007
    Сообщения:
    153
    Симпатии:
    72
    Т.е. вариант с "SET NAMES `cp1251`" можно использовать без каких-либо последствий?
     
  7. X-Ception

    X-Ception Прохожие

    utf8 вообще со всеми кодировками работает отлично.
    да
     
  8. doco6

    doco6 Постоялец

    Регистр.:
    16 апр 2008
    Сообщения:
    71
    Симпатии:
    4
    сейчас мода на utf8. Ставь utf8, не ошибешься.
     
  9. rus-us

    rus-us

    Регистр.:
    8 сен 2007
    Сообщения:
    153
    Симпатии:
    72
    у меня сайт сейчас в вин1251, как это повлияет на поисковики?
     
  10. zaartix

    zaartix Постоялец

    Регистр.:
    15 май 2006
    Сообщения:
    73
    Симпатии:
    27
    блин, ну вы чего на самом деле, есть-же фак на тему проблем с русским языком в mysql, который любой должен маст рид :)


    Перейти по ссылке
     
Статус темы:
Закрыта.