【下載並解壓MySQL5.7.13】
MySQL現在提供的有四個版本。其中我們一般使用多的是社區版(MySQL Community Server)。官方下載地址
當前的版本是5.7.13,選擇windows平臺會看到提供的下載鏈接現在只有Zip版,沒有.msi了(這個社區版的發展坎坷,包括MySQL被收購,收購的公司又被oracle收了,oracle喜歡錢等等原因,這裏不詳述了,有興趣自己可以去查查看)。就下載適合自己的32bit或者64bit。我這裏是win7 64bit版本的,下載下來之後解壓,就會得到mysql-5.7.13-winx64的文件夾,可以放到你樂意它在的位置。我這裏是改了文件夾名稱爲MySQL Server 5.7然後放到了E:\MySQL目錄下。
【配置】
修改配置文件。
這裏我直接修改了my-default.ini文件,網上很多會有新建my.ini文件自己添加內容等等,都可以。
在文件夾下你能找到my-default.ini這個文件,打開它,找到並設置以下內容:
basedir = E:\MySQL\MySQL Server 5.7 //MySQL的安裝目錄
datadir = E:\MySQL\MySQL Server 5.7\data //MySQL數據庫的數據存放目錄
1.前面的#去掉
2.這裏的data文件夾本來是不存在的,也不需要手動創建,MySQL會看着來。
我只修改了這兩項。
【安裝MySQL服務】
打開一個cmd.exe,將目錄切換到E:\MySQL\MySQL Server 5.7\bin,運行: mysqld -install ,提示服務安裝成功!運行services.msc一看,確實有一個名爲MySQL的服務了,啓動它。
【配置root用戶登錄】
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
輸入命令行:SET authentication_string=PASSWORD('xxxx'); //xxx代表你的密碼看到提示Query OK, 0 rows affected, 1 warning (0.01 sec)
【解決問題】
就是說我的密碼不對,但是我明明還沒有登錄過啊。沒辦法,解決一下吧,我就上網好一頓找啊,我就當我忘了密碼怎麼重設密碼唄。看到了好的文章,直接貼過來做一點修改:
(From: http://www.cnblogs.com/linuxnotes/archive/2013/03/09/2951101.html)
1、 首先檢查mysql服務是否啓動,若已啓動則先將其停止服務,可在開始菜單的運行,使用命令:
net stop mysql
打開第一個cmd1窗口,切換到mysql的bin目錄,運行命令:
mysqld --defaults-file="E:\MySQL\MySQL Server 5.7\my-default.ini" --console --skip-grant-tables
註釋:
該命令通過跳過權限安全檢查,開啓mysql服務,這樣連接mysql時,可以不用輸入用戶密碼。 此時已經開啓了mysql服務了!
這個窗口保留 不關閉。
2、打開第二個cmd2窗口,連接mysql:
輸入命令:
mysql -u root -p
出現:
Enter password:
在這裏直接回車,不用輸入密碼。
然後就就會出現登錄成功的信息,
使用命令:
show databases;
使用命令切換到mysql數據庫:
use mysql;
使用命令更改root密碼:
UPDATE user SET authentication_string=PASSWORD('newpassword') where USER='root';
注:這裏爲什麼不是password而是authentication_string呢?因爲在5.7.*以後這個字段給換了。。坑人不償命啊!
刷新權限:
FLUSH PRIVILEGES;
然後退出,重新登錄:
quit
重新登錄: 可以關掉之前的cmd1 窗口了。然後用net start mysql 啓動服務
mysql -u root -p
出現輸入密碼提示,輸入新的密碼即可登錄:
Enter password: ***********
到這裏問題解決完畢,但是這裏登錄進去之後可能會遇到【解決問題】前面提到的那個問題:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
參照上面的內容設置一下就好了。~