MySQL 5.1.32源码编译安装与GBK字符集支持指南

栏目:技术文章 发布时间:2026-03-28 09:25
解决MySQL 5.1.32安装后字符集为latin1的问题,可通过源码编译指定GBK支持。若启动时出现mysql.plugin不存在或skip-federated报错,注释my.cnf中对应参数即可恢复正常运行。

客户要求mysql-5.1.32是gbk的版本

我从mysql.com下载了二进制源码,不用编译自己安装就好了。后来查看到是latin1的语言~

网上搜索了半天,一篇有用的文章也没有,都是在freebsd下如何重新安装mysql-5.1.32,让他支持gbk

不得已。又搜索了下找到了mysql5.1.32的源码包,还是手动编译自己心里放心~

从这里下载http://dev.mysql.com/downloads/mysql/5.1.html  mysql5.1.32.tar.gz

至于如何支持gbk,还是默认的--with-charset=gbk --with-xcharset=all

最主要是安装好后出现问题,启动时候出错,查看error

/usr/local/mysql5/libexec/mysqld: Table 'mysql.plugin' doesn't exist

090224 23:30:42 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.

090224 23:30:42 [ERROR] /usr/local/mysql5/libexec/mysqld: unknown option '--skip-federated'

090224 23:30:42 [ERROR] Aborting

090224 23:30:42 [Note] /usr/local/mysql5/libexec/mysqld: Shutdown complete

解决方法

my.cnf里注释掉--skip-federated新版本不需要这个参数了。如果需要这个引擎的在编译的时候要加上

--with-plugins=federated,在my.cnf里用federated参数就行了。