程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> Mac Mysql數據庫中文亂碼問題解決

Mac Mysql數據庫中文亂碼問題解決

編輯:關於MYSQL數據庫

Mac 下MySQL數據庫中文亂碼解決方案:

當我們用框架進行數據庫的存儲操作時,經常會遇到中文亂碼的問題。

如:在使用Java中得SSH框架時,我們需要在web.xml文件中配置編碼的filter,具體代碼是:

<span style="font-family:FangSong_GB2312;font-size:14px;"><!-- 表單處理亂碼,必須在OpenSessionInViewFilter的filter之前 --> 
<filter> 
  <filter-name>CharacterFilter</filter-name> 
  <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> 
  <init-param> 
    <param-name>encoding</param-name> 
    <param-value>UTF-8</param-value> 
  </init-param> 
</filter> 
<filter-mapping> 
  <filter-name>CharacterFilter</filter-name> 
  <url-pattern>/*</url-pattern> 
</filter-mapping></span> 

然後進行數據庫存儲的時候發現存儲到數據庫的中文還是亂碼,這個時候調試項目發現最後傳入SQL的參數值已經是正常的中文了,

那麼這個時候我們就需要查看下數據庫的編碼了。

使用SQL命令查看默認的編碼格式:

<span style="font-family:FangSong_GB2312;font-size:14px;">show variables like "%char%";</span> 

查看test數據庫的編碼格式:

<span style="font-family:FangSong_GB2312;font-size:14px;">show create database test;</span> 

然後我們進行Max下的MySQL編碼修改:

由於Mac版的MySql默認字符集不是utf-8,所以需要如下步驟來進行修改

在 終端中輸入

<span style="font-family:FangSong_GB2312;font-size:14px;">sudo -s</span> 

然後提示輸入密碼,此密碼為系統密碼!

在命令行中輸入

<span style="font-family:FangSong_GB2312;font-size:14px;">cd /usr/local/mysql/support-files</span> 

繼續輸入(拷貝文件到etc目錄下)

<span style="font-family:FangSong_GB2312;font-size:14px;">cp my-default.cnf /etc/my.cnf</span> 

繼續輸入(進入etc目錄)

<span style="font-family:FangSong_GB2312;font-size:14px;">cd /etc</span> 

繼續輸入

<span style="font-family:FangSong_GB2312;font-size:14px;">vimy.cnf</span> 

這個時候,你會發現用vi工具打開了my.cnf文件,它的光標的上下左右移動是通過鍵盤上的h、j、k、l這幾個按鍵,Mac系統版本不一樣10.9.3系統光標是鍵是起作用的!

然後按j鍵 把光標移動到[client]的最後,添加一個屬性:(或使用下鍵)

<span style="font-family:FangSong_GB2312;font-size:14px;">default-character-set=utf8(此屬性mysql 5.5之後不能夠在

mysqld下面增加,也就是5.5以前的版本,之後的版本忽略此屬性)</span> 

繼續按下鍵,把光標移動到[mysqld]後面,添加3個屬性

<span style="font-family:FangSong_GB2312;font-size:14px;">default-storage-engine=INNODB 
 
character-set-server=utf8 
 
collation-server=utf8_general_ci</span> 

按鍵盤左上角的esc鍵推出編輯模式,然後輸入一個冒號和字母x

重啟MySql服務

此時再次執行數據庫操作,中文已經可以正常存儲了!

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved