MySQL數據庫服務器搭建指南(續)

所遇問題及其解決方案:
一、mysql數據庫服務器,遠程連接無法訪問問題
描述:
在服務器部署好mysql服務器之後,通過本機遠程連接數據庫服務器的時候出現的問題。navicat測試,無法連接。
1. 在mysql服務端給root賬號設置了密碼,無法連接。
2. 新建了管理權限的賬號並設置了密碼,遠程訪問無法連接。

解決思路:
在度孃的幫助下,瞭解了mysql數據庫的一些權限管理的知識,這部分其實不能算是尋找解決方案。準確的來說,是瞭解了原來不知道的知識而已。root賬號只能本地訪問,如果要給mysql數據庫配置遠程訪問,需要新建遠程訪問的賬戶,並且需要給這個遠程賬戶開啓遠程連接的權限。

解決方案:
1. 在mysql服務器上新建遠程訪問賬號“admin”密碼“abc123“
2. 在navicat管理界面新建查詢,執行語句“GRANT ALL ON . TO admin@’%’ IDENTIFIED BY ‘abc123’ WITH GRANT OPTION; ”(上述語句表示:允許所有IP地址,使用賬號“admin”密碼“abc123”對該數據庫服務器進行訪問和操作。 )
3. 執行完成之後,進入windows服務管理,找到mysql服務,重新啓動。
4. 此時,通過遠程訪問測試,連接成功。

二、mysql數據庫服務器,本地新增數據,中文字符亂碼問題
描述:
在部署mysql數據庫服務器完成之後,在服務器本地測試數據的增刪改查,在插入中文字符的時候,出現了”???”之類的亂碼。無法對中文數據進行存儲。

解決思路:
此問題也是小羅羅無知,不知道mysql存在默認字符集不兼容引起的中文字符亂碼問題。經過度孃的幫助後,再次的找到了解決的方法。主要思路就是在數據庫、表或者表字段的層面,對需要兼容中文字符的地方進行具體的設置。

解決方案:
1. 服務器層面:在mysql安裝文件夾下,找到配置文件my-default.ini文件,打開,新增默認字符集參數”default-character-set=utf8”,保存後,重啓mysql服務。
2. 數據庫層面:navicat管理工具,新增數據庫時,直接將字符集選擇爲”utf-8”,則該庫新建的表默認字符集爲utf8。
3. 數據表層面:navicat管理工具,新增數據表之後,點擊”選項”,對數據表的數據集進行選擇,並設置爲utf8即可。
4. 表字段層面:navicat管理工具,新增數據表之後,進行字段的設置,在每個字段設置的時候,可以通過下面的”字符集”進行選擇,並設置爲utf8即可。

三、mysql數據庫服務器,java項目遠程連接寫入中文字符亂碼問題
描述:
在servlet項目中,使用java代碼,進行字符串的寫入操作,所有中文字符存入數據庫之後,出現亂碼問題。mysql數據庫,數據表以及相關字段字符集設置都正常。

解決思路:
用好度娘是成爲好程序猿的第一步,用好谷歌是成爲牛逼程序猿的第一步,我離牛逼其實挺近的,應該快了。然後我就知道了,在java通過jdbc寫入數據的時候,還存在一個數據連接的字符集配置問題,可以通過強行配置連接字符集解決該問題。

解決方案:
在配置connection數據庫連接時,新增如下參數;
“&useUnicode=true&characterEncoding=utf-8”,測試後數據正常存取。

發佈了31 篇原創文章 · 獲贊 39 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章