mysql的預設編碼是latin1,不支援中文,要支援中文需要把資料庫的預設編碼修改為gbk或者utf8。
1、需要以root使用者身份登陸才可以檢視資料庫編碼方式
(以root使用者身份登陸的命令為:
[root@localhost bin]# mysql -u root -p
enter password:
welcome to the mysql monitor. commands end with ; or \g.
your mysql connection id is 6
server version: 5.0.77 source distribution
type 'help;' or '\h' for help. type '\c' to clear the buffer.
檢視資料庫的編碼方式命令為:
>show variables like 'character%';
| variable_name | value |
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
從以上資訊可知資料庫的編碼為latin1,需要修改為gbk或者是utf8;
其中,character_set_client為客戶端編碼方式;
character_set_connection為建立連線使用的編碼;
character_set_database資料庫的編碼;
character_set_results結果集的編碼;
character_set_server資料庫伺服器的編碼;
只要保證以上四個採用的編碼方式一樣,就不會出現亂碼問題。
2、linux系統下,修改mysql資料庫預設編碼的步驟為:
2.1停止mysql的執行
/etc/init.d/mysql start (stop) 為啟動和停止伺服器
備註:也可以使用 service mysqld restart命令
2.2mysql主配置檔案為my.cnf,一般目錄為/etc/mysql
var/lib/mysql/ 放置的是資料庫表資料夾,這裡的mysql相當於windows下mysql的date資料夾
當我們需要修改mysql資料庫的預設編碼時,需要編輯my.cnf檔案進行編碼修改,在linux下修改mysql的配置檔案my.cnf,檔案位置預設/etc/my.cnf檔案
(如果/etc/mysql/my.cnf下沒有my.cnf,可在/usr/share/mysql拷貝乙個.cnf 的檔案,如my-small.cnf,重新命名為my.cnf進行修改!)
找到客戶端配置[client] 在下面新增
default-character-set=utf8 #預設字符集為utf8
在找到[mysqld] 新增
default-character-set=utf8 #預設字符集為utf8
init_connect='set names utf8' #(設定連線mysql資料庫時使用utf8編碼,以讓mysql資料庫為utf8執行)
修改好後,重新啟動mysql 即可,重新查詢資料庫編碼可發現編碼方式的改變:
>show variables like 'character%';
| variable_name | value |
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
此方法用於標準mysql版本同樣有效,對於/etc/my.cnf檔案,需要從mysql/support-files的資料夾cp my-large.cnf乙份到/etc/my.cnf
3、windows系統下可以刪除mysql資料庫,並重新安裝,在安裝過程中可以直接用mysql server instance config wizard 進行設定
4、當mysql資料庫伺服器已經有資料不適合刪除重灌時,可以個別指定資料庫的編碼方式。mysql指定編碼的方式是非常靈活並多樣化的,可以指定表級別的編碼,行級別編碼,甚至可以指定字段級別的編碼。
以下示例給出建立資料庫時指定編碼的兩種方式:
create database ms_db character set utf8 collate utf8_general_ci;
create database if not exists netctoss default character set utf8;
5、如果你採用的是外部接入的方式,可以在連線中確定請求的編碼格式如:
jdbc:mysql://localhost:3306 /mysql?useunicode=true&characterencoding=utf-8(注意:不要出現任何空格,否則出錯)
客戶端通過unix socket方式連線MySQL
我的系統是ubuntu 8.10 desktop x86版,使用apt get安裝mysql服務端,配置檔案路徑 etc mysql my.inf 1.檢視mysql server的配置檔案 27 mysqld safe 28 socket var run mysqld mysqld.sock 29...
mysql客戶端配置 MySQL客戶端配置和使用
安裝mysql sudo apt get install mysql server 這個應該很簡單了,而且我覺得大家在安裝方面也沒什麼太大問題,所以也就不多說了,下面我們來講講配置。配置mysql 注意,在ubuntu下mysql預設是只允許本地訪問的,如果你要其他機器也能夠訪問的話,那麼需要改變 ...
mysql客戶端工具
sqlyog mysql gui是我常用的乙個桌面工具,功能強大,讓你有使用mssql的感覺,呵呵。sqlyog是乙個易於使用的 快速而簡潔的圖形化管理mysql資料庫的工具,它能夠在任何地點有效地管理你的資料庫!安裝方法 程式安裝後先不要執行sqlyog,雙擊內附的登錄檔檔案,匯入後即是正式版。n...