1. 程式人生 > >MySQL5.7.03 更換高版本到 5.7.17安裝過程及發現問題解決方案

MySQL5.7.03 更換高版本到 5.7.17安裝過程及發現問題解決方案

一、如何安裝?

1、Windows PowerShell 命令視窗(以管理員的身份)。定位到MySQL安裝目錄【我的D:\Program Files\mysql-5.7.9-winx64】的bin目錄下,輸入【mysqld -install】。如下圖,表示安裝成功

2、開啟MySQL安裝目錄,找到【my-default.ini】,配置一些簡單的資訊。

  1. # These are commonly set, remove the # and set as required.  
  2. basedir = D:\Program Files\mysql-5.7.9-winx64  
  3. datadir = D:\Program Files\mysql-5.7.9-winx64\data  
  4. port = 3306
  5. #第一次登陸跳過密碼驗證
  6. skip-grant-tables

3、輸入【mysqld --initialize】,為MySQL進行初始化。初始化過程可能需要持續一會,當出現如下介面,且在MySQL安裝目錄中的data資料夾有內容時,表示成功初始化了。由於新版本的MySQL在啟動時需要初始化一寫表。因此,請不要省略此步驟

4、啟動mysql【net  start  mysql】

5、 登入【mysql  -uroot  -p】

   免安裝版的msyql-5.7.17-winx64.zip, 在第3步初始化時會生成一個data 目錄,預設 root 賬戶 初始密碼在 mysql-5.7.17\data 目錄下的

.err 檔案中,我使用這個密碼登不進去,報錯:

【ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:yes) 】

解決辦法:1 、在第2步 my-default.init   的檔案結尾新增  skip-grant-tables  

                  2 、mysql -u root -p  直接回車不輸入密碼;

6、登入成功後修改root賬戶密碼為‘root’

# 修改root賬戶的密碼ALTER USER 'root'@'localhost' IDENTIFIED BY'root'

;

可能會遇到錯誤:【 ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement 】

解決辦法:1、刪除 第二步中 my-default.init 檔案中的 skip-grant-tables 

                  2、執行命令 mysql>  flush privilegers ;

                  3 、修改密碼 mysql>  ALTER USER 'root'@'localhost' IDENTIFIED BY'root';

二 、如何恢復低版本的sql資料庫:

1 把data目錄下的ibdata1 先剪下到其他地方

2 把以前低版本的data目錄下的users(此處以一個users庫為例)資料夾和ibdata1檔案,複製到高版本mysql的data目錄下。

此時,拷貝過來的users庫能用,但高版本中的資料庫不能用(由於ibdata1檔案是低版本的)

3 從新啟動mysql 把users庫儲存成.sql檔案

4 把低版本ibdata1檔案換成高版本的ibdata1(現在,高版本的庫能用,低版本的庫不能用,ibdata1是高版本的

5 重新啟動msyql ,建立一個庫(users,庫名可以改變),在MySQL Workbench 中開啟第3步生成的.sql 檔案執行