您好,登錄后才能下訂單哦!
這篇文章主要介紹了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字符集配置的方法”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。