預設情況下mysql資料庫使用的是拉丁(lantin1)字元進行編碼;
如輸入命令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 | latin1 |
| character_sets_dir | /usr/share/mysql/charsets/ |
可以看到字元編碼都是latin1,拉丁字元是無法支援中文的,所以我們插入中文時,肯定會造成一堆亂碼
解決亂碼
修改my.cnf 配置檔案:在配置檔案中加入編碼設定,預設情況(linux環境下裝mysql時)是沒有字元設定的,預設為latin1;
修改內容如下:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
character-set-server=utf8
[mysql]
default-character-set=utf8
[client]
default-character-set=utf8
在修改my.cnf,並systemctl restart mysqld;重啟服務後,編碼即可生效
| 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/ |
q.e.d.
mysql資料庫編碼設定
1.mysql基礎操作 1 啟動資料庫命令 net start mysql 2 關閉資料庫命令 net stop mysql 3 進入資料庫 mysql u root p 4 設定編碼格式為utf8 set character set client utf8 set character set se...
設定mysql資料庫字元編碼
mysql的預設編碼是latin1 就是 iso8859 1 不支援中文,那麼如何修改mysql的預設編碼呢,下面以utf 8為例來說明 需要注意的是,要修改的地方非常多,相應的修改方法也很多。下面是一種最簡單最徹底的方法 一 windows 1 中止mysql服務 2 在mysql的安裝目錄下找到...
設定mysql資料庫字元編碼
mysql的預設編碼是latin1 就是 iso8859 1 不支援中文,那麼如何修改mysql的預設編碼呢,下面以utf 8為例來說明 需要注意的是,要修改的地方非常多,相應的修改方法也很多。下面是一種最簡單最徹底的方法 一 windows 1 中止mysql服務 2 在mysql的安裝目錄下找到...