mysql5.5換成mysql8.0
由於在建表鐘發現有些語句就是錄不進去,研究發現是因為5.5版本過低導致,就想換到5.7版本,結果一看8.0都出了,據官方說明8.0要比5系列快2倍網上,遂直接換成8.0了,不過這個過程真的心累。
1、卸載
首先把MYSQL文件目錄下的mysql5.5中的data文件放到其他地方保存,然後通過360等軟件卸載就行了(我之前用的是安裝版的),壓縮版的寫在請點擊這裏
2、下載 解壓縮
到mysql官網 http://dev.mysql.com/downloads/mysql/ 下載mysql
上面的為壓縮版,下面的為安裝版。我一開始是下載的安裝版,但是安裝了數次雖然查得到數據庫但是各種問題不能net start mysql......最後我終於放棄了安裝版
然後就開啟了壓縮版之路,本來以為很簡單的事,但我的電腦真的是不爭氣啊,真的是比女朋友還難哄……2333
下載壓縮版後,解壓到C:\Program Files\MySQL\mysql-8.0.12-winx64
3、配置環境變量
然後要配置環境變量
變量名:MYSQL_HOME
變量值為mysql的bin路徑:C:\Program Files\MySQL\mysql-8.0.12-winx64\bin
然後在path目錄下編輯添加一個 %MYSQL_HOME% 註意前後銜接要加 ;
4、修改配置文件
解壓之後是沒有my.ini文件的,這時候要手動加一個
創建txt文件然後寫入
[mysqld] #skip-grant-tables # 設置3306端口 port=3306 # 設置mysql的安裝目錄 basedir=C:\Program Files\MySQL # 設置mysql數據庫的數據的存放目錄 datadir=E:\database\MySQL\Data # 允許最大連接數 max_connections=200 # 允許連接失敗的次數。這是為了防止有人從該主機試圖攻擊數據庫系統 max_connect_errors=10 # 服務端使用的字符集默認為UTF8 character-set-server=utf8 # 創建新表時將使用的默認存儲引擎 default-storage-engine=INNODB # 默認使用“mysql_native_password”插件認證 default_authentication_plugin=mysql_native_password [mysql] # 設置mysql客戶端默認字符集 default-character-set=utf8 [client] # 設置mysql客戶端連接服務端時默認使用的端口 port=3306 default-character-set=utf8
然後把文件重命名為my.ini就好了,此文件放在MYSQL目錄下
5、安裝
以管理員權限打開cmd
直接cd C:\Program Files\MySQL\mysql-8.0.12-winx64\bin進入bin目錄
接著輸入mysqld -install看到安裝成功之後,就可以測試了
輸入mysqld –initialize 可以生成隨機初始密碼,這裏千萬要記錄在文檔中,因為馬上就要進入數據庫了
輸入mysql -uroot -p 輸入密碼(就是剛才生成的)進入就基本ok了,我當時不知道為什麽,怎麽輸入那個密碼就是不行,只有通過把my.ini文件配置下的[mysqld]加一句配置
skip-grant-tables
來跳過輸入密碼。(我看很多博文,都是可行的,我不知道為什麽我的怎麽配置都不行,我按照很多博文提供的方法試了一遍,都不能進去,最後我只有刪幹凈,又重裝了,再重裝了N遍了之後終於好
使了)
輸入net start mysql就可以看到開啟,net stop mysql關閉
在我能連接上數據庫之後,重啟電腦,又不行了,報錯
按照這個博文,問題終於解決了
navicat連接nysql出現1251Client does not support authentication protocol requested by server的解決方案
終於能用上了,開心
mysql5.5換成mysql8.0