mysql 5.7.20 解壓版安裝踩坑記錄
最近換了電腦,重灌mysql最新版本5.7.20,沒想到從5.7開始,mysql的配置方法就有改變,花了一上午的時間終於把坑跳了一遍,爬上來了。
首先還是原來的操作:
1. 下載壓縮包.zip,解壓到指定路徑,我這裡是 C:\Program Files\mysql-5.7.20-winx64
2. 配置環境變數
騷操作開始了,從5.7開始mysql解壓後的資料夾裡是沒有my.ini和data資料夾的,my.ini配置檔案需要我們自己寫,data資料夾則需要執行一個initialize命令來初始化。
3. 自己建立一個文字文件my.ini,放在mysql根目錄下,內容如下(其中的dir路徑按自己的安裝路徑設定):
4. 管理員許可權開啟cmd,cd到%MYSQL_HOME%\bin路徑下,執行安裝命令mysqld -install (安裝成功後,這時候是無法啟動mysql服務的,因為沒有data資料夾)[mysql] # 設定mysql客戶端預設字符集 default-character-set=utf8 [mysqld] explicit_defaults_for_timestamp=true #設定3306埠 port = 3306 # 設定mysql的安裝目錄 basedir=C:\Program Files\mysql-5.7.20-winx64 # 設定mysql資料庫的資料的存放目錄 datadir=C:\Program Files\mysql-5.7.20-winx64\data # 允許最大連線數 max_connections=200 # 服務端使用的字符集預設為8位元編碼的latin1字符集 character-set-server=utf8 # 建立新表時將使用的預設儲存引擎 default-storage-engine=INNODB
5. 執行mysql --initialize-insecure 自動生成無密碼的root使用者,如果使用mysql --initialize 則生成隨機密碼的root使用者
ps: 這裡如果報以下錯誤,說明該data目錄裡已經有檔案,如果之前安裝過/安裝失敗過就會出現這種情況,將data檔案的內容全部刪除,重新執行命令即可。
6. net start mysql 啟動mysql服務7. 這時再執行mysql -u root -p ,登陸mysql伺服器即可。
整個操作過程如下:
出現上圖中無法啟動的錯誤時,可以去工作管理員中將mysqld的程序強制結束。
因為來來回回解除安裝安裝了好幾次,再說一下解除安裝吧。
1. 執行解除安裝命令。mysql自己的解除安裝命令是 mysql -remove,正常情況下可以這樣解除安裝。但在安裝出錯的情況下此命令無法執行,還可以在管理員許可權下執行系統的刪除服務命令: SC delete mysql
2. 解除安裝完成後去登錄檔管理器中將mysql相關的登錄檔資料夾全部刪除。cmd下執行regedit.exe可以進入登錄檔管理器。
3. 刪除mysql資料夾的全部內容。如果只是重灌的話,也一定記得刪除data資料夾中的內容,否則重灌後會出現上面那種錯誤而無法啟動mysql服務,手動初始化也會失敗。
4. 我執行完1.2.3步就解除安裝完成,可以重灌了,看網上說如果還解除安裝不乾淨,將其他可能存在mysql資料的檔案也全部刪除即可。
這樣就ok啦,反反覆覆踩的幾個坑其實也就是一開始執行命令,用了比較麻煩的install命令,還把路徑寫錯了,導致安裝成功但路徑錯誤,連線不上伺服器。而安裝時建立了data檔案,而後來重灌時沒有刪除data檔案,又是一個大坑。
順帶附一個使用了mysql --initialize產生了隨機密碼的root使用者,登陸不上去的解決辦法,文章地址: