MySQL5.7.28免安裝版配置


  • 下載
  • 安裝配置
  • 問題及解決方案

 一、下載

 

找到你要的版本點擊“looking for the latest GA version?”切換,我這個安裝的是5.7.28,然后往下拉:

 

找到免安裝的壓縮包:

 

然后就進到了下載頁面:

 

其實,並不要那么麻煩,直接使用這個下載的cdn連接就可以了:https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.28-winx64.zip

 二、安裝配置

2.1 解壓文件到你安裝數據的路勁下,例如我直接解壓到了f盤下:

F:\mysql-5.7.28-winx64

2.2 解壓出來的文件缺少my.ini配置文件和data文件夾:

 my.ini配置,根據注釋說明和你自己的配置需要修改(配置參數只求安裝,未考慮任何性能問題):

 1 #  MySQL Server Instance Configuration File
 2 #----------------------------------------------------------------------------
 3 #  Generated by the MySQL Server Instance Configuration Wizard
 4 #通過使用MySQL服務配置向導生成
 5 #  Installation Instructions
 6 
 7 #客戶端參數配置
 8 #  CLIENT SECTION
 9 #----------------------------------------------------------------------------
10 [client]
11 #客戶端通過3306端口連接MySQL數據庫服務器,如果需要修改端口號,可以直接修改。
12 #Port=3306
13 #default-character-set=utf8mb4
14 loose_default_character_set=utf8mb4
15 [mysql]
16 #客戶端的默認字符集。
17 default-character-set=utf8mb4
18 
19 #服務端參數配置
20 #  SERVER SECTION
21 #-----------------------------------------------------------------------------
22 [mysqld]
23 #服務器端口號。
24 port=3306
25 #MySQL數據庫服務器的安裝目錄
26 basedir="F:\mysql-5.7.28-winx64"
27 #MySQL數據庫文件目錄
28 datadir="F:\mysql-5.7.28-winx64\data"
29 #忽略軟件客戶端的字符集,使用服務器的字符集
30 character-set-client-handshake=FALSE
31 #MySQL軟件端的字符集
32 character-set-server=utf8mb4
33 #MySQL軟件的存儲引擎
34 default-storage-engine=INNODB
35 #  Set the SQL mode to strict
36 #MySQL軟件的SQL模式
37 sql_mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
38 #MySQL軟件的最大連接數
39 max_connections=100
40 #MySQL軟件的查詢緩存
41 query_cache_size=0
42 #MySQL軟件中可以打開的總表數
43 table_open_cache=256
44 #MySQL軟件內存中可以存儲臨時表的最大值。
45 tmp_table_size=9M
46 #MySQL軟件內存中可以保留的客戶端連接線程數
47 thread_cache_size=8
48 #MySQL軟件中重建索引時允許的最大臨時文件的大小
49 myisam_max_sort_file_size=5G
50 #MySQL軟件重建索引時允許的最大緩存大小
51 myisam_sort_buffer_size=17M
52 #MySQL最大關鍵字緩存大小.
53 key_buffer_size=10M
54 #MySQL軟件全掃描MyISAM表時的緩存大小
55 read_buffer_size=64k
56 #MySQL軟件可以插入排序好數據庫的緩存大小
57 read_rnd_buffer_size=256k
58 #MySQL軟件用戶排序時緩存大小
59 sort_buffer_size=256k
60 #join 連表操作的緩存大小,根據實際業務來設置,默認8M
61 join_buffer_size=32M
62 
63 #關於INNODB存儲引擎參數設置
64 #關於提交日志的時機
65 innodb_flush_log_at_trx_commit=1
66 #存儲日志數據的緩存區的大小
67 innodb_log_buffer_size=1M
68 #緩存池中緩沖區的大小
69 innodb_buffer_pool_size=17M
70 #日記文件的大小
71 innodb_log_file_size=10M
72 #允許線程的最大數
73 innodb_thread_concurrency=8

2.3 配置系統環境變量

//系統變量
//變量名稱
MYSQL
//變量值(安裝路徑)
F:\mysql-5.7.28-winx64

//在系統變量path添加一條記錄
%MYSQL_HOME%\bin

2.4 初識化MySQL數據庫,使用管理員權限啟動控制台:

 

 

然后進入mysql安裝路徑,例如:F:\mysql-5.7.28-winx64\bin

f:
F:\>cd mysql-5.7.28-winx64
F:\mysql-5.7.28-winx64> cd bin
F:\mysql-5.7.28-winx64\bin>mysqld -initialize --user=mysql --console

一定要注意最后一行打印的信息: A temporary password is generated for root@localhost: ********(星號表示root的臨時密碼,后面登入數據庫修改密碼要用,記得保存好)

2.5 安裝服務:

F:\mysql-5.7.28-winx64\bin>mysqld install MySQL --defaults-file="F:\mysql-5.7.28-winx64\my.ini"

安裝成功后會提示:Service successfully installed.

2.6 安裝服務:

//啟動服務
F:\mysql-5.7.28-winx64\bin>net start MySQL

2.7 使用前面保存的臨時密碼修改你自己的密碼:

mysql -u root -p

然后根據截圖指示登入數據庫,修改密碼:

 

 修改完密碼后退出再用新密碼登入測試:

SET PASSWORD = PASSWORD('新密碼');
//然后退出,再用新密碼登入測試--注意第一個(exit;)后面記得跟分號--然后再
exit;
//回車退出
exit
//再回車就可退出數據庫了

2.8 用新密碼登入測試:

mysql -u root -p

 

輸入你的密碼登入數據庫。

 

//測試查看所有數據庫
show databases;

 

 安裝完成了,快點開始你的騷操作吧。

 三、問題及解決方案

1.第一次配置文件中的數據庫路徑忘了寫“\data”路徑,直接使用mysqld -initialize --user=mysql --console安裝,導致安裝失敗,失敗導致錯誤的將文件生成到了根目錄下。

解決辦法:刪除data文件夾及其他新生成的文件(對比最新解壓出來的文件目錄)。

然后關閉服務,可以使用命令關閉:

net stop MySQL

最好使用圖形化界面查看服務,我當時還出現了mysql57服務,同樣采用命令關閉。而且當時MySQL文件使用命令關閉后,其狀態還是啟動,指示被禁用而已。這是因為mysqld.exe進程還處於開啟狀態,需要關閉這個進程:

//查看mysqld.exe進程
tasklist | findstr "mysql"

這個查看結果忘了截圖了,可以參考這篇博客:https://blog.csdn.net/pdcfighting/article/details/85345540

然后使用命令關閉進程:

taskkill /f /t /in mysqld.exe

這時候別急着重新開始安裝,我當時在這個地方被windows系統緩存困了好久,因為可能還有sql相關進程沒有關閉,和緩存依然沒有清除,重新操作依然會發生之前一模一樣的的錯誤。

解決辦法:

打開任務管理器,關閉所有跟MySQL有關的進程,沒截圖,如果你遇到同樣問題不懂的話,看誰長得像就關閉誰吧。

然后,繼續滅絕師太的操作,使用垃圾清理工具,清除系統緩存、日志文件、臨時文件、注冊表垃圾等系統垃圾。

不好意思,忘了告訴你在這一系列操作之前關閉控制台,不過我當時也沒有關閉,是后面清除垃圾后關閉的。然后再使用管理員狀態啟動控制台,再操作。

2.可能出現一種更頭疼的問題,就是服務安裝了,但是可能沒有data路徑下沒有mysql數據庫,這個操作跟上面一樣,但是還有一種可能就是注冊表已經注冊了,這需要找到注冊表,然后將整個注冊表下的mySQL文件夾刪除。然后重新操作。

3.可能出現配置錯誤,比如我出現過:

“table_cache=256”報錯,這時因為這個配置廢棄,被“table_open_cache=256”取代。

客戶端的“Port=3306”配置出錯,將[client]下的"port=3306"注釋或者刪除。

“default-character-set=utf8mb4”報錯,這個也是因為配置廢棄,被“loose_default_character_set=utf8mb4”取代。

'innodb_additional_mem_pool_size=2M'報錯,這個也是因為INNODB存儲引擎該配置廢棄,查了好些資料都說不用配置了,不知道有沒有替代配置,反正我直接刪了這個配置項,然后就可以安裝了。

4.按照上面的配置還可能出現“無用時區”問題,三個解決方案:

 

 方案一:修改設置當前系統時區,這個方案並不是很好,每次重啟服務都需要設置一次。

 

 方案二:在my.ini中配置這個設置,這個方案算是一個長期的解決方案,因為每次啟動服務都會根據這個配置設置當前系統時區。(記得要重啟服務才能生效)

//在my.ini的[mysqld]下配置
default-time-zone='+08:00'

方案三:在jdbc連接的url后面加上serverTimezone=GMT即可解決問題,如果需要使用gmt+8時區,需要寫成GMT%2B8

public static final  String URL="jdbc:mysql://localhost:3306/jdbc01?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false";//鏈接的mysql


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM