本文提供 MySQL Server 5.7 在 Windows 環境下的圖形化安裝全流程、官方管理工具 MySQL Workbench 安裝與中文語言包配置、C# 開發連接關鍵點,適合 Windows 開發者快速搭建本地開發環境。
mysql-installer-web-community-5.7.x.msi(官網或鏡像站)MySQL57,勾選 Start Service at Startup驗證:命令行 mysql -uroot -p 登錄成功。
mysql-workbench-community-6.3.x-winx64.msiworkbench_zh_CN.zipzh_CN 目錄複製至 Workbench 安裝目錄 data\languages\ 覆蓋[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
init_connect='SET NAMES utf8mb4'
skip-character-set-client-handshake
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
net stop MySQL57
net start MySQL57
SHOW VARIABLES LIKE 'character_set%';
SHOW VARIABLES LIKE 'collation%';
均顯示 utf8mb4 即成功。
Install-Package MySql.Data
Server=localhost;Port=3306;Database=testdb;Uid=appuser;Pwd=apppass;
CharSet=utf8mb4;SslMode=None;AllowUserVariables=True;ConnectionTimeout=30;
using MySql.Data.MySqlClient;
using System.Data;
public class MySqlHelper {
private static string connStr = ConfigurationManager.ConnectionStrings["MySQL"].ConnectionString;
public static int ExecuteNonQuery(string sql, params MySqlParameter[] pars) {
using (var conn = new MySqlConnection(connStr))
using (var cmd = new MySqlCommand(sql, conn)) {
if (pars != null) cmd.Parameters.AddRange(pars);
conn.Open();
return cmd.ExecuteNonQuery();
}
}
public static DataTable ExecuteDataTable(string sql, params MySqlParameter[] pars) {
using (var conn = new MySqlConnection(connStr))
using (var cmd = new MySqlCommand(sql, conn))
using (var da = new MySqlDataAdapter(cmd)) {
if (pars != null) cmd.Parameters.AddRange(pars);
var dt = new DataTable();
da.Fill(dt);
return dt;
}
}
}
string sql = "INSERT INTO users(username, email) VALUES(@u, @e)";
var pars = new[] {
new MySqlParameter("@u", "zhangsan"),
new MySqlParameter("@e", "zs@example.com")
};
MySqlHelper.ExecuteNonQuery(sql, pars);
| 現象 | 原因 | 解決 |
|---|---|---|
| Authentication plugin 'caching_sha2_password' not supported | Connector/NET 版本過低 | 升級 MySql.Data 至 8.0.17+ 或用戶改用 mysql_native_password |
| 中文存入顯示 ??? | 字符集未統一 utf8mb4 | 按第 3 節配置 my.ini、連接字符串 CharSet=utf8mb4 |
| SSL 連接報錯 | 默認啟用 SSL,開發環境無憑證 | 連接字符串加 SslMode=None 或 SslMode=Preferred |
Windows 下 MySQL 安裝圖形化友好,關鍵在於:安裝時選對組件、my.ini 統一 utf8mb4、Workbench 中文包覆蓋 languages 目錄、C# 用 MySql.Data 參數化查詢、連接字符串關閉 SSL。開發機建議啟用 General Log、Slow Query Log 便於調試。