windows下解壓版MySql安裝說明,及亂碼終極解決方案

#windows下MySql安裝說明mysql

下載準備

  • 下載地址
  • 下載完成後解壓到須要安裝的目錄

開始安裝

##配置環境變量linux

將`mysql bin`目錄添加到環境變量;  
`個人電腦->屬性->高級->環境變量->path`   
**注意是追加,不要覆蓋**

##修改Mysql配置文件 將my-default.ini文件重命名爲my.ini
添加如下內容:sql

[mysql]  #與客戶端配置相關
	default-character-set=utf8	
	[mysqld]  #與服務器配置相關
	basedir = D:/mysql-5.7.15-winx64      #mysql所在目錄
	datadir = D:/mysql-5.7.15-winx64/data #mysql數據所在目錄,聽說必定要是data,感興趣的能夠測試下
	port = 3306   						  #不解釋
	character_set_server=utf8

以管理員身份運行cmd數據庫

  1. 安裝windows

    cd /d D:/mysql-5.7.15-winx64/bin
     mysqld -install
     安裝完成
  2. 初始化服務器

    mysqld  --initialize
  3. 啓動測試

    net start mysql
  4. 查找mysql初始密碼編碼

    在安裝mysql5.7版本時,常常會遇到mysql -u root -p直接回車登錄不上的狀況,緣由在於5.7版本在安裝時自動給了一個隨機密碼,坑爹的是在init步驟的時候不像linux系統會給出命令行提示,須要手動在mysql目錄下搜索*.err,以文本形式打開才能看到以下內容:.net

    016-02-25T15:09:43.033062Z 1 [Note] A temporary password is generated for root[@localhost](https://my.oschina.net/u/570656): `>mso<k70mrWe`
  5. 重置mysql初始密碼命令行

之後全部命令須在命令行窗口使用mysql命令進行操做

mysql -u root -p
	成功登陸後執行如下命令
	SET PASSWORD = PASSWORD('your new password');
	ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
	flush privileges;

完成以上三部後退出使用新密碼登陸便可

##一些額外補充

  • 確認mysql相關編碼

    show variables like 'character%';
    
      +--------------------------+----------------------------------------+
      | Variable_name            | Value                                  |
      +--------------------------+----------------------------------------+
      | character_set_client     | utf8                                   |
      | character_set_connection | utf8                                   |
      | character_set_database   | utf8                                   |
      | character_set_filesystem | binary                                 |
      | character_set_results    | utf8                                   |
      | character_set_server     | utf8                                   |
      | character_set_system     | utf8                                   |
      | character_sets_dir       | D:\mysql-5.7.15-winx64\share\charsets\ |
      +--------------------------+----------------------------------------+

從上圖中能夠看到 MySQL 有六處使用了字符集,分別爲:client 、connection、database、results、server 、system。其中與服務器端相關:database、server、system(永遠沒法修改,就是utf-8);與客戶端相關:connection、client、results 。

  • client 爲客戶端使用的字符集。
  • connection 爲鏈接數據庫的字符集設置類型,若是程序沒有指明鏈接數據庫使用的字符集類型則按照服務器端默認的字符集設置。
  • database 爲數據庫服務器中某個庫使用的字符集設定,若是建庫時沒有指明,將使用服務器安裝時指定的字符集設置。
  • results 爲數據庫給客戶端返回時使用的字符集設定,若是沒有指明,使用服務器默認的字符集。
  • server 爲服務器安裝時指定的默認字符集設定。
  • system 爲數據庫系統使用的字符集設定。
相關文章
相關標籤/搜索