MySQL服务器有一个服务器字符集和一个服务器校对规则,它们均不能设置为空。 DF4Linux联盟 MySQL按照如下方法确定服务器字符集和服务器校对规则: DF4Linux联盟 ·当服务器启动时根据有效的选项设置 DF4Linux联盟 ·根据运行时的设定值 DF4Linux联盟 在服务器级别,确定方法很简单。当启动mysqld时,根据使用的初始选项设置来确定服务器字符集和 校对规则。可以使用--default-character-set设置字符集,并且可以在字符集后面为 校对规则添加--default-collation。如果没有指定一个字符集,那就与--default-character-set=latin1相同。如果你仅指定了一个字符集(例如,latin1),但是没有指定一个 校对规则,那就与--default-charset=latin1 --default-collation=latin1_swedish_ci相同,因为latin1_swedish_ci是latin1的默认校对规则。因此,以下三个命令有相同的效果: DF4Linux联盟 shell> mysqld
shell> mysqld --default-character-set=latin1
shell> mysqld --default-character-set=latin1 \
--default-collation=latin1_swedish_ci |
更改设定值的一个方法是通过重新编译。如果希望在从源程序构建时更改默认服务器字符集和校对规则,使用:--with-charset和--with-collation作为configure的参量。例如: DF4Linux联盟 shell> ./configure --with-charset=latin1
或者:
shell> ./configure --with-charset=latin1 \
--with-collation=latin1_german1_ci |
mysqld和configure都验证字符集/校对规则组合是否有效。如果无效,每个程序都显示一个错误信息,然后终止。 DF4Linux联盟 当前的服务器字符集和校对规则可以用作character_set_server和collation_server系统变量的值。在运行时能够改变这些变量的值。DF4Linux联盟
|