讓MYSQL徹底支援中文(slack10.1版)(轉)
提要:系統自帶的mysql預設字符集不是gbk,因此給資料庫的推廣應用以及中文程式的開發帶來極大的不便,在沒完沒了的GBK和UTF8的轉換過程中消耗了我們無數的精力以及系統的資源.經過摸索嘗試解決了中文支援問題,經驗與大家分享一下.
先將讓slack支援中文,方法可以看"linuxsir.org 之Slackware討論區",然後重新編譯mysql,原來系統mysql的要先用解除安裝.
login:root
shell> removepkg mysqlshell> groupadd mysqlshell> cd /appshell> mkdir mysqlshell> chmod 744 mysqlshell> useradd -G mysql -s /bin/bash –p /app/mysql mysqlshell> chown -R mysql.mysql mysql
下載mysql4.x.x
shell> gunzip < mysql-VERSION.tar.gz | tar -xvf -shell> cd mysql-VERSIONshell> CFLAGS="-O3 -mcpu=pentium3" CXX=gcc XXFLAGS="-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
//-mcpu 根據CPU型別最佳化編譯,可以讓你的mysq表現更好!可選專案很多:i386, i486, i586, i686, pentium, pentium-mmx, pentiumpro, pentium2, pentium3, pentium4, k6, k6-2, k6-3, athlon, athlon-tbird, athlon-4, athlon-xp,athlon-mp,winchip-c6, winchip2 , c3.
shell> make
------------------------------------------
錯誤時候
shell> make clean
再回上一步
------------------------------------------------------------
shell> make installshell> cp support-files/my-medium.cnf /etc/my.cnfshell> cd /app/mysqlshell> bin/mysql_install_db --user=rootshell> chown -R root .shell> chown -R mysql varshell> chgrp -R mysql .shell> ./bin/mysqld_safe --user=root --default-character-set=gbk &shell> ./bin/mysqladmin -u root password 'new-password'shell> ./bin/mysql -u root --default-character-set=gbk -pmysql> status...Server characterset: gbkDb characterset: gbkClient characterset: gbkConn. characterset: gbk....
看見characterset全是gbk就算成功了.
----------------------------------------------------------------------------------------------------
在UTF8字符集的老資料庫中,建立中文支援表指令碼如下,對欄位加上字符集說明
CREATE TABLE `test`.`cn` (`zh` CHAR(10) CHARACTER SET gb2312 COLLATE gb2312_chinese_ci NOT NULL,`中文` INT(11) NOT NULL)ENGINE = MYISAM;
注:CHARACTER SET 寫GB2312 和gbk都可以,gbk優於gb2312.
對於新建立的資料庫加個預設字符集宣告GBK,就不用建表時候每個欄位宣告瞭,這樣看起來簡單流暢,沒有特殊的痕跡,建議多采用這種方法.
mysql> CREATE DATABASE dbCN DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;CREATE TABLE `dbCN`.`cn` (`zh` CHAR(10) NOT NULL,`中文` INT(11) NOT NULL)ENGINE = MYISAM;mysql> insert into cn values("真的?",1);
注:如果這些指令碼用bin/mysql命令列是輸入不了,可以 用mysql query Browser,或者程式設計執行.
--------------------------------------------------------------------------------------------------------
shell> bin/mysql -u root --default-character-set=gbk -pmysql>use testmysql> select * from cn;+--------+------+| zh | 中文 |+--------+------+| 真的?| 1 |+--------+------+1 row in set (0.00 sec)---------------------------------------------
最後修改啟動檔案/etc/rc.d/rc.mysqld
改路徑/app/mysql/bin/mysqld_safe
改路徑/app/mysql/var/web.pid
/app/mysql/bin/mysqld_safe 後面加入 --user=root --default-character-set=gbk
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752019/viewspace-941394/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 讓VC++支援中文 (轉)C++
- Tomcat下中文的徹底解決(轉)Tomcat
- 【轉載】徹底解決Linux下MySQL5.5的中文亂碼問題LinuxMySql
- 讓你徹底理解 “==”與 Equals
- Ubuntu徹底刪除MySqlUbuntuMySql
- 徹底解除安裝MySqlMySql
- 徹底解決Oracle中文亂碼Oracle
- 看完讓你徹底搞懂Websocket原理Web
- Linux漢化之讓MandrakeLinux支援中文(轉)Linux
- 這次我讓你徹底弄懂 RESTfulREST
- 【轉載】Linux下徹底解除安裝mysql詳解LinuxMySql
- window下徹底解除安裝mysqlMySql
- 徹底刪除mysql容器內容MySql
- 徹底搞懂 python 中文亂碼問題Python
- 一個故事讓你徹底理解 HttpsHTTP
- 30分鐘,讓你徹底明白Promise原理Promise
- 徹底玩轉你的Windows Update(轉)Windows
- rhel 6.5讓KVM支援中文介面
- 讓MySQL支援歐元字元MySql字元
- 怎麼在JBoss中配置MySQL資料庫連線池讓Mysql支援中文MySql資料庫
- 徹底刪除MySQL步驟介紹ATSSMySql
- 圖解|這次,徹底理解MySQL的索引圖解MySql索引
- 【kill session】Oracle 徹底 kill session(轉載)SessionOracle
- 【轉】JAVA IO 設計模式徹底分析Java設計模式
- linux高負載下mysql資料庫徹底最佳化(轉)Linux負載MySql資料庫
- 一文讓你徹底理解 Java NIO 核心元件Java元件
- 徹底搞懂徹底搞懂事件驅動模型 - Reactor事件模型React
- 徹底搞懂 MySQL 事務的隔離級別MySql
- 圖解|從根上徹底理解MySQL的索引圖解MySql索引
- 一文徹底弄懂MySQL的最佳化MySql
- 徹底理解synchronizedsynchronized
- 徹底搞懂 RxJavaRxJava
- 一篇文章讓你徹底掌握 shell 語言
- 一文讓你徹底理解 Java HashMap 和 ConcurrentHashMapJavaHashMap
- 支援Java API Docs中文版JavaAPI
- 筆記-runtime原始碼解析之讓你徹底瞭解底層原始碼筆記原始碼
- VMware Workstation安裝+徹底解除安裝教程(Windows版)Windows
- 15天玩轉redis —— 第十一篇 讓你徹底瞭解RDB儲存結構Redis