比如你下載的mysql位於目錄:E:\dbms\mysql下 ---該目錄下文會用到。
如果你有mysql應用經驗,你肯定配置過my.ini文件,比如修改IP或者Port等信息; 如果你從未用過mysql,也沒關系,你需要知道mysql會在my.ini文件加載初始化配置信息; 注:實際上,你也可以不采用配置文件,但你必須每次啟動mysql時都輸入你的配置信息,所以建議采用my.ini配置文件的方式,而且該文件必須是 純文本 的。
mysql服務在啟動的時候,會在多個位置(以后會詳細介紹)查找配置文件,為了能快速的啟動mysql,這里只介紹簡單的配置該文件。
1.在E:\dbms\mysql目錄(就是你的mysql根目錄)下新建my.ini純文本文件,用記事本或sublime(介紹看這里)打開;
2.輸入以下內容:
你可能發現你的目錄中沒有data目錄,這是因為mysql從5.7.6開始,zip archive中不再包含data目錄,怎么辦?
--手動新建一個就可以,而且可以放在任何位置,但內容必須是空的(非空也可以,以后介紹)。
--實踐證明:不用手動創建該目錄,但需要在配置文件配置路徑,初始化時會自動創建該目錄!!!!
[mysqld] explicit_defaults_for_timestamp=1 basedir=E:\\dbms\\mysql datadir=E:\\dbms\\mysql\\data
a.[mysqld]:表示該組配置只對mysql服務(還有配置客戶端的,暫時不需要了解,以后會介紹)有效;
b.explicit_defaults_for_timestamp=1:簡單說是配置數據庫timestamp類型的處理方式,詳細介紹點這里【講解】;
c.basedir和datadir分別對應mysql的主目錄和最終保存數據庫的目錄,注意雙反斜線(\\);
----2017-7-6:經過測試,basedir 和 datadir 這兩項可以不配置,mysql默認會在當前目錄查找相關文件,這樣方便以后拷貝,不需要每次都修改路徑;但是如果你的data放在其他位置,那么必須配置;
以上配置有個概念就可以,以后會詳細介紹配置文件,當前目標是快速啟動mysql。
現在准備工作基本完成,你通過雙擊%basedir%\bin\mysqld.exe發現,根本沒辦法啟動服務,怎么辦?接下來,我們執行初始化。
1. win+r打開運行,輸入cmd,打開命令行程序;
2. 使用cd命令進入basedir目錄(也就是你的mysql目錄);
3. 輸入bin\mysqld --initialize直接回車,執行初始化...稍等一會就OK了,很快
如下圖:
注:
a. --initialize :初始化時,會生成一個root用戶和一個隨機的密碼,並且密碼設置為過期,需要你立即修改密碼。
######密碼在哪里?
這就是箭頭4指向的就是隨機密碼。
b. --initialize-insecure :另外,你也可以使用該配置初始化,但這種方式會生成一個root用戶,並且密碼是空(第一次登錄密碼空即可),同樣需要你立即修改密碼,不詳細介紹,你可以自己試試;
Ok,現在已經初始化完成!
接下來,我們啟動mysql服務,並登錄mysql,修改用戶密碼。
1. win+r,輸入cmd,進入命令行程序;
2. 使用cd命令進入%basedir%目錄(也就是你的mysql目錄);
3. 輸入bin\mysqld,啟動mysql服務 (沒什么意外的話,你應該可以正常啟動),整個命令窗口卡住了?沒關系, ctrl+shift+esc 打開任務管理器,查看mysqld進程,如果存在,恭喜!
注:你可以通過查看basedir\data\***.err文件,查看啟動日志;或者你可以通過bin\mysqld --console啟動mysql服務,這樣日志會直接打印到命令窗口;
4. 重復執行1、2過程,打開一個新的窗口;
5. 執行bin\mysql -u root -p回車,輸入隨機密碼(其實你可以復制粘貼)進入mysql;
6. 成功的話,你會發現前綴改成了 mysql> ;
7. 修改密碼:mysql>alter user 'root'@'localhost' identified by 'new pwd';回車(別忘了最后的分號;);
整個過程見下圖:
OK,到這里,整個數據庫的初始化過程就算完成了!