phpstudy是一個很不錯的集成開發環境,提供了很多PHP和Apache、nginx等web服務器各個版本之間的組合。但是,美中不足,phpstudy直至2018版本,其中使用的mysql一直都是5.5版本,而且沒有提供設置和升級的地方。很多人都疑惑該如何升級數據庫,而且百度搜索中的大部分方法都很復雜而且不是很實用。下面我就把我升級至mysql5.7.18的過程曬出來,跟大家分享。
1.從mysql官網下載windows的免安裝版。
最新版下載地址是:MySQL Community Server
或者:從官網上下載高版本的 MySQL :https://dev.mysql.com/downloads/file/?id=467269,選的版本是 5.7.17(后面才發現 5.7 版本的安裝、系統表字段等又和之前的版本有所不同)。
你也可以點擊這里選擇你需要的版本。我選擇的是Windows (x86, 64-bit), ZIP Archive
2.備份mysq的數據,如果需要的話。
3.重命名phpstudy中的MySQL文件夾為MySQL5.5,相當於備份MySQL,也方便你切回去。
4.將剛下下來的mysql-5.7.18-winx64.zip解壓至phpstudy目錄中,並重命名為MySQL。
需要說明的是,mysql5.7解壓之后,目錄中是沒有my.ini配置文件和data文件夾的。需要我們自定義一個my.ini文件。我的my.ini很簡單,如下:
[client] port=3306 [mysql] default-character-set=utf8mb4 [mysqld] port=3306 # 下面兩項basedir和datadir根據你的目錄來 basedir="D:/phpStudy/MySQL/" datadir="D:/phpStudy/MySQL/data/" # 編碼和引擎各位就怎么開心怎么來 character-set-server=utf8mb4 default-storage-engine=INNODB # explicit_defaults_for_timestamp 關閉了 timestamp 類型字段鎖擁有的一些會讓人感到奇怪的默認行為,加入了該參數之后,如果還需要為 timestamp類型的字段指定默認行為,那么就需要顯示的在創建表時顯示的指定。沒有這一行在初始化的時候會報下面這個警告 # TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). explicit_defaults_for_timestamp=true
我的phpstudy是安裝在D盤下的,各位看官根據情況
5.以管理員身份運行命令提示符,進入D:/phpStudy/MySQL/bin,執行mysqld --initialize命令
6.至此,你打開phpstudy就已經可以正常啟動mysq了。
不過,mysq的密碼已經不是默認的root了。
7.打開MySQL目錄下的data文件夾,就是剛剛初始化時候自動生成的data文件夾。里面有個.err的文件,文件名默認是你的計算機名,用sublime text或者記事本等文本編輯器打開。
前幾行都是一些正常的警告信息。最后一行是關鍵,也寫的很清楚了,密碼就在最后。我的這個就是Ktqa4byL<Z:<。這個密碼不能直接使用,比如,用navicat等登錄會提示的。
8.修改密碼。在命令行登錄以后,運行SET PASSWORD=PASSWORD("new_password")修改就可以了。
Enjoy It!
很感謝這位大佬,一上午都沒有解決,看他的十分鍾就搞定了。