平台:win10 X64
mysql: mysql-5.6.34-winx64.zip
以下所寫都是本人測試過的,力爭無誤。上次發布了,可是發現了一些問題,特地查了一下官方文檔(我會說我是用有道詞典翻譯的嗎)
特此修正
1. 下載mysql免安裝版
下載地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads
2. 配置
將下載的zip解壓,如解壓到 C:\tools\databases\mysql-5.6.34-winx64,這個路徑也就是你mysql的根目錄
3.環境變量的配置
win10的小娜用作搜索還是挺不錯的
在系統環境變量中加入mysql根目錄下的bin,即C:\tools\databases\mysql-5.6.34-winx64\bin
不過你也可以先配一個mysql_home,然后再在path中這樣配置 %mysql_home%\bin,像這樣也是可以的
我以第一種方式配置的,如下圖:
4. 修改配置文件,文檔上有這么一段
就是說把my-default.ini復制一份並命名為my.ini(命名為my.cnf也是可以的,文檔上有,不過my.ini的優先級要高點)
然后用記事本打開my.ini編輯,找到basedir和datadir去掉前面的#進行編輯,配置如下:
注意是斜杠,或者用兩個反斜杠也可以,我第一次發布時這里弄錯了,哈哈
5. 先來一個臨時測試,由於此時mysql服務還沒有安裝到系統中,但可以用mysqld來測試,由於配置了環境變量,直接在命令行輸入mysqld即可
會出現一個警告
這個窗口不要關(好吧,其實關了也可以),用管理員重開一個命令窗口,直接輸入mysql -u root即可進入mysql,默認沒有密碼
6. 配置服務並啟動
需要用管理員身份啟動命令行窗口,怎樣用管理員身份啟動呢?在開始菜單右鍵你就可以看到了
在安裝服務之前,需要把你剛才的mysqld關掉,使用命令
由於配置了環境變量,直接輸入mysqladmin -u root shutdown即可
然后安裝服務到系統中,文檔上是這樣的 :
有環境變量,隨便哪個目錄都可以咯,可是我直接用一個橫線也可以,像這樣:
mysqld -install,不過還是按照文檔來,就是mysqld --install 這個命令安裝mysql服務
然后輸入命令net start mysql,這個命令用來啟動mysql服務,服務名可以改,不過還是不改了
停止服務和卸載服務的命令也順便說一下:
停止服務:net stop mysql
卸載服務:mysqld --remove
7. 啟動服務后,測試一下
8. 密碼設置
服務啟動后就大功告成了。可以用了,不過默認是沒有密碼的,所以這樣登錄:mysql -uroot,表示用root用戶登錄
沒有密碼不太安全(總覺得少了點什么),那就配置一下密碼,
先看一下官方提供的3中設置密碼的方式
最后一種不推薦,他也說了,最后一種可能有無效。
簡單的就我的理解分析一下,先看下面的
show databases;
use mysql;
show tables;這里面表比較多
我們要看的是user表, 里面字段很多,只看幾個字段就夠了
select host, user, password from user;
里面本來還有一個user為空字符串的用戶,被我刪掉了。然后只需要給用戶添加密碼就行了
不過要注意:這個修改密碼可不是那種常規的sql語句,先說正確的
update user set password = password("123") where user = "root";
flush privileges;
其中123是你的新密碼,然后刷新使密碼生效
然后登錄, mysql -uroot -p123, 如果你要直接用這種輸密碼的方式登錄,注意p和123中間沒有空格,否則系統會要求你再次輸入密碼
好了,再說一下,如果你改密碼是這樣改的:update user set password = "123" where user = "root";
那可能就要悲劇了,關於原因我有個猜測,查看我們剛才修改成功的密碼,你會發現並不是123(至少顯示的不是123),這說明是密碼是加密的,如果你直接把密碼改成看得到的123,那真實密碼可能並不是123。
這個就是我的猜測。但是有的同學可能一不小心就弄錯了,所以這里也提供解決方法
9. 重置密碼
我為了測試,也故意弄錯了,解決方法參考這篇文章:http://www.jb51.net/article/77855.htm
我總結一下,就是這樣的:
1. 進入mysql根目錄下的bin目錄, 命令我前面有提到
2. 停止mysql服務:net stop mysql
3. 輸入命令: mysqld --skip-grant-tables (注意不要加分號)
4. 不要關閉此窗口,另開一個命令行窗口,直接用mysql -uroot登錄(此時密碼失效了),執行第6步正確的修改密碼的方法就行了
5. 我測試這個重置密碼的方法一次開機只能使用一次,如果你要第2次重置密碼,請重啟電腦后再試
10. 設置編碼
由於mysql的默認的編碼可能對我們不適用,所以可以改為utf8,只需要在my.ini中配置一下就可以了
首先在mysqld下設置character-set-server = utf8
然后再在末尾設置客戶端的默認編碼default-character-set = utf8
然后重啟一下服務,在命令行中查看一下:
可以看到除了filesystem以外其他的編碼都是utf8,filesystem的編碼不用改,這樣就可以了
好了,mysql的配置到這里就算完了,希望大家也多研究一下官方文檔,如果有什么錯誤遺漏的請指出,謝謝。