如何恢復資料(如何恢復資料卡背景)
731
2022-05-29
http://www.jb51.net/article/120263.htm
前言
今天在工作發現一個錯誤,在往本地導數據表的時候老是報錯:
?
1
[Err] 1294 - Invalid ON UPDATE clause for '字段名' column
報錯的數據表字段:
?
1
`字段名` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP
同事說同一個 sql 文件他可以導成功。猜可能是數據庫版本的問題,同事的是 5.6,我查了下本地的數據庫版本是 5.5.53。網上查了一下,果然是版本的問題,5.5 和 5.6 在 TIMESTEMP 的行為上有所不同,5.6.5 之前的版本不支持多個CURRENT_TIMESTAMP 默認值。
由于本地用的集成環境是 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 處編輯:
?
1
2
basedir=D:/phpStudy/MySQL
datadir=D:/phpStudy/MySQL/data
三、把 MySQL 安裝路徑添加至系統環境變量
四、在 cmd 下進入 MySQL 的 bin 目錄(我的是 D:/phpStudy/MySQL/bin),執行:
?
1
mysqld --initialize
初始化數據庫
五、安裝服務:
?
1
mysqld -install
啟動服務:
?
1
net start MySQL
六、此時登入 MySQL 報錯:
?
1
2
3
C:\Users\dell>mysql -uroot -p
Enter password: ****
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
嘗試修改 root 用戶密碼:
打開 my.ini,找到 [mysqld],在下面添加:
?
1
skip-grant-tables
此時使用 root 賬號,密碼處按回車即可登錄。
修改密碼:
?
1
2
mysql>update mysql.user set authentication_string=password('new_password') where user='root' and Host ='localhost'
mysql> ALTER USER USER() IDENTIFIED BY 'news_password';
刷新權限:
?
1
FLUSH PRIVILEGES;
注釋掉 my.ini 中剛才添加的
?
1
skip-grant-tables
重新登錄。
此時查看 mySQL 版本:
?
1
2
3
4
5
6
mysql> select version();
+-----------+
| version() |
+-----------+
| 5.7.17? |
+-----------+
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
MySQL 數據庫
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。