原文連接:http://phpstudy.php.cn/jishu-php-3131.htmlphp
1、下載新版 mysqlhtml
例如 mysql5.7: https://dev.mysql.com/downloads/file/?id=467269mysql
2、備份 phpStudy\PHPTutorial\MySQLnginx
3、解壓下載的新版 mysql,放於 phpStudy\PHPTutorial\ 中,重命名爲 MySQLsql
4、複製一份 my-default.ini,重命名爲 my.iniapache
5、修改my.ini配置spa
basedir = D:/phpStudy/PHPTutorial/MySQL datadir = D:/phpStudy/PHPTutorial/MySQL/data skip-grant-tables
注:根據本身的實際路徑狀況改,有配置的改,沒有的能夠本身加,加在 [mysqld] 下就行code
6、在 cmd 下進入 MySQL 的 bin 目錄(個人是 D:/phpStudy/PHPTutorial/MySQL/bin),執行初始化命令server
mysqld --initialize
注1:若是報 TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 錯誤,則修改 my.ini 配置,在 [mysqld] 下添加htm
explicit_defaults_for_timestamp = true
注2:若是報 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release. 錯誤,則修改 my.ini ,在 [mysqld] 下添加(已有配置的直接修改)
sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER
7、安裝並啓動服務
mysqld -install
net start MySQL
8、修改 mysql 登陸密碼
mysql -uroot -p
PS:不用輸密碼,直接回車就行
update mysql.user set authentication_string=password('root') where user='root' and Host ='localhost';
注:'root'只是一個示例,自行修改爲本身想要的密碼
刷新權限
FLUSH PRIVILEGES;
9、修改 my.ini,註釋掉 skip-grant-tables
# skip-grant-tables
重啓 mysql
net stop MySQL
net start MySQL
PS:這樣修改完後,直接 phpstudy 啓動 mysql 可能會失敗,暫時還沒找到緣由,暫時的解決辦法的,用 phpstudy 啓動 apache(或 nginx),而後 cmd 使用 net start MySQL 來啓動 mysql