新安裝MYSQL,還沒有修改數據庫系統編碼。
之后由於創建數據庫時候:create database db_name; 沒有指定編碼,之后發現亂碼就修改各個屬性之后還是亂碼,便開始配置數據庫屬性,之后信息如下:
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
發現character_set_database該屬性設置utf8之后依舊還是Latin1 ,其實這個屬性是數據庫屬性,在創建數據庫時候如果不指定默認就是這個,因此對於創建的數據庫可以修改數據庫編碼為utf8,修改腳本:
alter database <數據庫名> character set utf8;
之后還是亂碼,由於之前數據錯誤編碼,所以設置utf8依舊亂碼,刪除數據重新導入即可。因此為了避免此問題,以后安裝數據庫首要任務就是配置編碼,創建數據庫時候指定編碼:
CREATE DATABASE `mydb` CHARACTER SET utf8 COLLATE utf8_general_ci;
參考:
https://blog.csdn.net/huanbia/article/details/80208466