首页>>数据库>>Mysql不支持GBK及解决方法
Mysql不支持GBK及解决方法
来源: 时间: 2015-02-12 17:55:18

用packages安装的mysql5.1,不支持GBK编码,只支持UTF8编码。具体表现:

  在打开一个用GBK编码的数据库时,提示

    ERROR 1273 (HY000): Unknown collation 'gbk_chinese_ci' in table 'data_plus' definition

    set names gbk; 和 SET character_set_client = gbk;提示:

ERROR 1115 (42000): Unknown character set: 'gbk'

  最后没办法,只好用ports重新编译。

   cd /usr/ports/databases/mysql51-server

   make WITH_CHARSET=gbk WITH_XCHARSET=all WITH_COLLATION=gbk_chinese_ci BUILD_STATIC=yes install clean

   (其实,在make install clean 时,就有个参数提示,把前三个设置好就可以了。)

查看支持的编码:

   SHOW VARIABLES LIKE 'character_set_%';

   SHOW VARIABLES LIKE 'collation_%';

此方式适用于MYSQL 4.1X 以及更高版本

#groupadd mysql

#useradd -g mysql mysql

#gunzip < mysql-VERSION.tar.gz | tar -xvf -

#cd mysql-VERSION

#./configure --prefix=/usr/local/mysql \ 指定安装目录

--without-debug \去除debug模式

--with-extra-charsets=gbk \添加中文字符支持

--with-extra-charsets=all \添加其他字符支持

--enable-assembler \使用一些字符函数的汇编版本

--without-isam \去掉isam表类型支持 现在很少用了 isam表是一种依赖平台的表

--without-innodb \去掉innodb表支持 innodb是一种支持事务处理的表,适合企业级应用

--with-pthread \强制使用pthread库(posix线程库)

--enable-thread-safe-client \以线程方式编译客户端

--with-client-ldflags=-all-static \

--with-mysqld-ldflags=-all-static \以纯静态方式编译服务端和客户端 --with-raid \激活raid支持

#make

#make install

#scripts/mysql_install_db

#chown -R root /usr/local/mysql

#chown -R mysql /usr/local/mysql/var

#chgrp -R mysql /usr/local/mysql

#cp support-files/my-medium.cnf /etc/my.cnf     (overwrite?-->yes)

#/usr/local/mysql/bin/mysqld_safe --user=mysql &

本页地址:http://www.easytd.com/shujuku/d_15021217250.html

上一篇:Mysql垂直分区和水平分区 下一篇:MySQL5.1安装InnoDB引擎