這篇文章主要給大家介紹了關於phpStudy中升級MySQL版本的方法步驟,文中通過範例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起看看吧。
前言
今天在工作發現一個錯誤,在往本地導資料表的時候老是報錯:
[Err] 1294 - Invalid ON UPDATE clause for '欄位名' column
報錯的資料表欄位:
`欄位名` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP
同事說同一個 sql 檔案他可以導成功。猜可能是資料庫版本的問題,同事的是 5.6,我查了下本地的資料庫版本是 5.5.53。網上查了一下,果然是版本的問題,5.5 和 5.6 在 TIMESTEMP 的行為上有所不同,5.6.5 之前的版本不支援多個CURRENT_TIMESTAMP 預設值。
由於本地用的Integration Environment是 phpStudy 2016,沒有找到升級 MySQL 版本的選項,所以自己升級一下。
從官網上下載高版本的 MySQL :
官方網址:https://dev.mysql.com/downloads/file/?id=467269
百度雲端硬碟地址:https://pan.baidu.com/s/1mi4UHtA
選的版本是 5.7.17(後面才發現 5.7 版本的安裝、系統資料表欄位等又和之前的版本有所不同)。
步驟:
一、備份原來 phpStudy 中 MySQL 安裝目錄
二、把下載的 MySQL 壓縮檔解壓至 phpStudy 下的 MySQL目錄,複製 my-default.ini ,重新命名為 my.ini。
開啟 my.ini,找到 #basedir 處編輯:
basedir=D:/phpStudy/MySQLdatadir=D:/phpStudy/MySQL/data
三、把 MySQL 安裝路徑添加至系統內容變數
四、在 cmd 下進入 MySQL 的 bin 目錄(我的是 D:/phpStudy/MySQL/bin),執行:
mysqld --initialize
初始化資料庫
五、安裝服務:
mysqld -install
啟動服務:
net start MySQL
六、此時登入 MySQL 報錯:
C:\Users\dell>mysql -uroot -pEnter password: ****ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
嘗試修改 root 使用者密碼:
開啟 my.ini,找到 [mysqld],在下面添加:
skip-grant-tables
此時使用 root 帳號,密碼處按斷行符號即可登入。
修改密碼:
mysql>update mysql.user set authentication_string=password('new_password') where user='root' and Host ='localhost'mysql> ALTER USER USER() IDENTIFIED BY 'news_password';
重新整理許可權:
FLUSH PRIVILEGES;
注釋掉 my.ini 中剛才添加的
skip-grant-tables
重新登入。
此時查看 mySQL 版本:
mysql> select version();+-----------+| version() |+-----------+| 5.7.17 |+-----------+
相關推薦:
執行個體詳解IOS 資料庫升級資料移轉
記錄一下公司資料庫升級的步驟
Oracle 11g ASM資料庫升級compatible