因业务兼容性需求,需在已安装的 MySQL 中添加 GBK 字符集。MySQL 字符集在编译时确定,必须重新编译安装。以下是完整操作步骤。
SHOW CHARACTER SET;
若无 gbk,需重编译。
rm -rf /usr/local/mysql/* # 安装目录
rm -rf /var/lib/mysql/mysql # 数据目录
警告:此操作不可逆,务必先备份数据!
./configure \
--prefix=/usr/local/mysql \
--sysconfdir=/etc \
--localstatedir=/var/lib/mysql \
--with-charset=gbk \
--with-collation=gbk_chinese_ci \
--with-extra-charsets=complex
make clean && make && make install
--with-charset=gbk:默认字符集设为 GBK--with-collation=gbk_chinese_ci:默认校对规则--with-extra-charsets=complex:包含所有复杂字符集(含 utf8)# 停止服务
pkill -9 mysql
# 清理旧日志
cd /var/lib/mysql/
rm -rf *.bin mysql-bin.*
# 初始化系统表
/usr/local/mysql/bin/mysql_install_db
# 权限修正
chown -R mysql /var/lib/mysql
# 复制配置模板
cp /usr/local/src/mysql-5.1.55/support-files/my-medium.cnf /etc/my.cnf
# 启动服务
/usr/local/mysql/bin/mysqld_safe &
# 设置 root 密码
/usr/local/mysql/bin/mysqladmin -u root -p password '123456'
# 验证登录
/usr/local/mysql/bin/mysql -u root -p
SHOW VARIABLES LIKE 'character_set_%';
SHOW CHARACTER SET LIKE 'gbk';
若显示 gbk 及 gbk_chinese_ci,即配置成功。
提示:生产环境建议统一使用
utf8mb4,GBK 仅用于兼容老旧系统。迁移前务必评估数据转换风险。