Spec-Zone .ru
спецификации, руководства, описания, API
|
У MySQL Server есть набор символов сервера и сопоставление сервера. Они могут быть установлены при запуске сервера на командной строке или в файле опции и изменены во времени выполнения.
Первоначально, набор символов сервера и сопоставление зависят от опций, которые Вы используете, когда Вы
запускаете mysqld. Можно использовать --character-set-server
для набора символов. Наряду с этим, можно добавить --collation-server
для сопоставления. Если Вы не определяете набор символов, который является тем же самым как высказыванием --character-set-server=latin1
.
Если Вы определяете только набор символов (например, latin1
) но не сопоставление,
которое является тем же самым как говорящий --character-set-server=latin1
--collation-server=latin1_swedish_ci
потому что latin1_swedish_ci
сопоставление значения по умолчанию для latin1
. Поэтому, следующие три команды все
имеют тот же самый эффект:
shell>mysqld
shell>mysqld --character-set-server=latin1
shell>mysqld --character-set-server=latin1 \
--collation-server=latin1_swedish_ci
Один способ изменить настройки, перекомпилировав. Чтобы изменить набор символов сервера значения по умолчанию и
сопоставление, создавая из источников, используйте DEFAULT_CHARSET
и DEFAULT_COLLATION
опции для CMake. Например:
shell> cmake .
-DDEFAULT_CHARSET=latin1
Или:
shell>cmake . -DDEFAULT_CHARSET=latin1 \
-DDEFAULT_COLLATION=latin1_german1_ci
И mysqld и CMake проверяют, что набор символов / комбинация сопоставления допустим. В противном случае каждая программа выводит на экран сообщение об ошибке и завершается.
Набор символов сервера и сопоставление используются в качестве значений по умолчанию, если набор символов базы
данных и сопоставление не определяются в CREATE
DATABASE
операторы. У них нет никакой другой цели.
Текущий набор символов сервера и сопоставление могут быть определены от значений character_set_server
и collation_server
системные переменные. Эти переменные могут быть заменены во
времени выполнения.