預設編譯字元集為 latin1,導致中文存儲/排序/比較錯誤,GBK/UTF8 轉換消耗資源。
removepkg mysqlCFLAGS="-O3 -mcpu=pentium3" \
CXX=gcc \
CXXFLAGS="-O3 -mcpu=pentium3 -felide-constructors" \
./configure --prefix=/app/mysql \
--with-charset=gbk \
--with-extra-charsets="gbk gb2312 big5 utf8" \
--with-unix-socket-path=/etc/mysql.sock \
--enable-local-infile \
--enable-thread-safe-client \
--enable-assembler \
--with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static
--with-charset=gbk:預設字元集設為 GBK--with-extra-charsets:編入額外字元集供運行時切換-mcpu:依 CPU 優化 (pentium3/athlon-xp/opteron 等)make && make installcp support-files/my-medium.cnf /etc/my.cnfbin/mysql_install_db --user=root./bin/mysqld_safe --user=root --default-character-set=gbk &mysql> STATUS;
Server characterset: gbk
Db characterset: gbk
Client characterset: gbk
Conn. characterset: gbk <-- 四者一致即成功
CREATE TABLE t_chinese (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) CHARACTER SET gbk,
content TEXT CHARACTER SET utf8
) DEFAULT CHARSET=utf8;