Windows下安裝MySQL解壓版

到官網下載mysql-5.5.10-win32.zip,而後將mysql解壓到任意路徑,如:C:\mysql-5.5.10-win32 

打開計算機->屬性->高級系統設置->環境變量,新建一個環境變量,變量名爲: MYSQL_HOME ,變量值爲你的mysql根目錄,如:C:\mysql-5.5.10-win32 
而後在系統變量 Path 中添加:; %MYSQL_HOME%\bin  

在根目錄下面有幾個已經寫好的"my-"開頭的ini文件,選一個適合你的,如:my-small.ini。複製一份,將文件名修改成my.ini,添加如下內容: 
Properties代碼   收藏代碼
  1. [mysqld]  
  2. #設置字符集爲utf8  
  3. default-character-set = utf8  
  4. basedir = C:/mysql-5.5.10-win32  
  5. datadir = C:/mysql-5.5.10-win32/data  
  6.   
  7. [client]  
  8. #設置客戶端字符集  
  9. default-character-set = utf8  
  10.   
  11. [WinMySQLadmin]  
  12. Server = C:/mysql-5.5.10-win32/bin/mysqld.exe  


打開命令提示符,進入 %MYSQL_HOME%/bin 目錄,執行命令: mysqld -install 將mysql安裝到windows的服務。執行成功後會提示: C:\mysql-5.5.10-win32\bin>Service successfully installed.  
若是想要卸載服務執行命令: mysqld -remove 。 

而後在命令提示符下執行: net start mysql 就能啓動mysql了,中止服務輸入命令: net stop mysql 。若是想設置mysql是否自動啓動,能夠在開始菜單->運行中輸入 services.msc 打開服務管理進行設置。 

第一次登陸的時候輸入: 

C:\Users\Administrator>mysql -u root  

修改密碼: 

mysql> update mysql.user set password=PASSWORD('root') where User='root' 
mysql> flush privileges
 

不過我在安裝過程當中仍是出了點小問題,啓動mysql的時候報錯: 

系統出錯。 

發生系統錯誤 1067。 

進程意外終止。
 

打開 %MYSQL_HOME%/data 目錄下的 用戶名.err 文件,mysql的錯誤日誌就記錄在這個文件中。在裏面發現這樣一句話: 

110327  0:12:02 [ERROR] MySQL: unknown variable 'default-character-set=utf8'  

感受很奇怪,之前一直都這樣安裝的。最後在mysql的官網上找到一篇中國DBA的求助信息,原來這是新版本的一個bug,不支持在my.ini中直接設置字符集爲utf8。解決辦法是:在default-character-set=utf8前面加上 loose- 即:
Properties代碼   收藏代碼
  1. [mysqld]  
  2. #設置字符集爲utf8  
  3. loose-default-character-set = utf8  
  4.   
  5. [client]  
  6. #設置客戶端字符集  
  7. loose-default-character-set = utf8  


啓動果真再也不報錯了。。。那份求助信息的原文地址: 
http://forums.mysql.com/read.php?103,189835,237318  

後記:  

雖然使用上面的方式加入loose-之後,mysql啓動再也不報錯了。可是在插入數據時依然出現了亂碼問題,給我形成了不小的麻煩。 
mysql> show variables like '%char%';  
經過以上命令查看字符集編碼,獲得以下結果: 
+--------------------------+---------------------------------------+ 
| Variable_name            | Value                                 | 
+--------------------------+---------------------------------------+ 
| character_set_client     | utf8                                  | 
| character_set_connection | utf8                                  | 
| character_set_database   | latin1                                | 
| character_set_filesystem | binary                                | 
| character_set_results    | utf8                                  | 
| character_set_server     | latin1                                | 
| character_set_system     | utf8                                  | 
| character_sets_dir       | C:\mysql-5.5.10-win32\share\charsets\ | 
+--------------------------+---------------------------------------+ 
能夠看出character_set_database ,character_set_server 的編碼仍是默認的latin1。 

在[mysqld]配置選項下添加character-set-server = utf8 ,重啓服務進入mysql再次查看: 
+--------------------------+---------------------------------------+ 
| 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       | C:\mysql-5.5.10-win32\share\charsets\ | 
+--------------------------+---------------------------------------+ 

問題完美解決 
相關文章
相關標籤/搜索