MySql5.7.18字符集配置圖文詳解。本站提示廣大學習愛好者:(MySql5.7.18字符集配置圖文詳解)文章只能為提供參考,不一定能成為您想要的結果。以下是MySql5.7.18字符集配置圖文詳解正文
作者:Carry醬
本文通過圖文並茂的形式給大家介紹了mysql5.7.18字符集配置教程,非常不錯,具有參考借鑒價值,需要的朋友參考下吧故事背景:
很久很久以前(2017.6.5,文章有其時效性,特別是使用的工具更新換代頻發,請記住這個時間,若已經沒有價值,一切以工具官方文檔為准),下了個mysql版本玩玩,剛好最新是mysql5.7.18,本機是win10、64位系統。大抵步驟分為:
1、下載:以官網(https://www.mysql.com)為准,download響應系統版本;
2、初始化:命令行(cmd)進入解壓目錄bin文件夾(下載下來後應該要解壓吧?太久有點遺忘。還有下載下來是沒有data這個文件夾以及ini等文件的),這裡有兩種初始化方式。一種叫不安全初始化,及輸入: mysqld --initialize ,初始化使root這個用戶沒有密碼(沒密碼所以不安全);一種就是所謂的安全初始化,輸入: mysqld --initialize-insecure ,生成有密碼的root用戶,密碼可以在生成後出現的日志文件裡查看,就在初始化後生成的data文件裡
3、啟動服務: 輸入: net start mysql (關閉服務: 輸入: net stop mysql),如果提示net不是內部命令,那麼可能是net沒安裝,也可能是沒配置環境變量 ,檢查一下就行
4、基本上應該是這樣,其他的可以查詢mysql命令大全去搞。
接下來說說配置字符集的問題。
起因:
就是昨天,首先對著mysql命令行查看數據太過抽象,所以先下載了個Navicat for mysql(可視化界面),看起來就好多了。如圖:
然後在表中插入數據時會報錯“Incorrect string value”,百度了一下說是要將字符集改為utf8mb4,這是因為其他編碼存不了一些特殊字符的關系,詳情可以百度。
經過:
修改字符集首先進入mysql: mysql -uroot (用戶登錄,因為初始化選了沒密碼的那種),show variables like 'char%' (查看字符編碼),如圖:
可以在命令行裡輸入例如: set character_set_server=utf8mb4
來改變字符集,但僅限當次有效,重啟服務時會恢復默認值。接下來試試其他方法,網上眾說紛纭,含糊不清,真假難以分辨 。於是上官網看了一下(官網也很水,沒有例子可以參照,就像告訴瞎子白色是白色一樣,而我就是那個瞎子),看了文檔裡有個查看變量的指令:mysqld --verbose --help,查看的變量都可以配置在選項文件裡,每次啟動服務就會按選項文件裡的自動去配置,然後這裡出現一句:
Default options are read from the following files in the given order
我想應該是選項文件可能存在的地方,也就是說我們新建出的選項文件要以它顯示出來的名字命名,放到它顯示出的該放的地方。如圖:
新建一個my.ini文件,放在D:\mysql下,剛好就是它顯示出來位置的其中一個,如上圖。my.ini內容如下:
基本上就是以這樣的形式來配,這裡只拿了個罪魁禍首character_set_server,當然關聯的字符集配置要統一,否則可能會亂碼,可以去百度看看每一個字符集都代表什麼意思。
然後關閉mysql服務,開始配置(輸入 mysqld --install):
1、如果非管理員打開cmd輸入 mysqld --install會報如下信息,說是命令被拒絕:
2、改用管理員打開,說是服務已存在(那麼先把它刪了就好了):
3、查詢mysql服務: sc query mysql(也可以在控制面板-管理工具-服務中找到,或直接搜索服務)
4、刪了它:(也可以在控制面板-管理工具-服務中卸載,或直接搜索服務)
5、當然重裝前要停止mysql,即使先行刪了它,否則會出現:
6、我們停了它,這次是在控制面板停掉的,因為之前把它卸了,停掉後就消失不見(命令行: net stop mysql),重新執行,成功的同時啟動mysql服務:
7、重啟成功,登上去上看看有沒有改動成功:
8、然後到此就可以了,之後又試了幾次,只要改了my.ini後,關閉在重新啟動mysql服務,它每次都會按my.ini來改,也就是說以後如果不滿意不用從頭走一遍,只要改my.ini後重啟服務就好了。如圖:
我再改:
以上所述是小編給大家介紹的MySql5.7.18字符集配置圖文詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對網站的支持!