凌峰创科服务平台

Windows MySQL服务器如何配置?

目录

  1. 第一步:下载与安装
    • 下载 MySQL 安装包
    • 运行安装程序
    • 配置服务器类型与账户
  2. 第二步:基础配置 (my.ini)
    • 定位配置文件 my.ini
    • 核心配置项解析
    • 一个基础的 my.ini 示例
  3. 第三步:安全配置 (Security)
    • 运行安全脚本
    • 修改默认 root 密码
    • 移除匿名用户
    • 禁止 root 远程登录
    • 移除测试数据库
    • 重新加载权限
  4. 第四步:服务管理
    • 启动/停止/重启 MySQL 服务
    • 设置开机自启
  5. 第五步:性能优化建议
    • innodb_buffer_pool_size
    • max_connections
    • innodb_log_file_size
    • query_cache_size (注意版本)
  6. 第六步:常见问题与排错
    • 忘记 root 密码
    • 服务无法启动 (端口被占用等)
    • my.ini 修改后不生效
  7. 第七步:客户端连接
    • 命令行客户端
    • 图形化客户端推荐

第一步:下载与安装

下载 MySQL 安装包

访问 MySQL 官方下载页面:https://dev.mysql.com/downloads/installer/ 选择 "Windows (x86, 64-bit), ZIP Archive" 版本,这是推荐的方式,因为它不会向系统注册表写入过多信息,便于管理和迁移。

Windows MySQL服务器如何配置?-图1
(图片来源网络,侵删)

运行安装程序

解压下载的 ZIP 文件,找到 mysql-8.0.xx-winx64.msi 并双击运行。 在安装类型选择界面,强烈建议选择 "Full" (完整安装),这会自动完成服务注册、环境变量配置等繁琐步骤,比手动配置更稳定。

配置服务器类型与账户

安装程序会引导你进行最后的配置:

  • Type and Networking:

    • Config Type: 选择 Default Configuration (默认配置),对于初学者,这已经足够。
    • TCP/IP Port: 默认是 3306,如果此端口被占用,可以修改为其他未被占用的端口(如 3307),但需要记住并在后续配置和连接时使用。
    • Enable MySQL as a Windows Service: 务必勾选,这会让 MySQL 作为系统服务运行,方便管理。
    • Service Name: 默认为 MySQL80,可以保持默认。
  • Authentication Method:

    Windows MySQL服务器如何配置?-图2
    (图片来源网络,侵删)
    • 选择 Use Legacy Authentication Method (Retain MySQL 5.x Compatibility),这可以避免一些旧版客户端(如 Navicat 11, Python 的某些库)连接时出现的 caching_sha2_password 认证插件不兼容问题,如果所有客户端都支持新版,可以选择 Use Strong Authentication
  • Account Management:

    • Root Password: 必须设置一个强密码!这是数据库管理员账户,拥有最高权限,请务必牢记。
    • Create Anonymously User: 不要勾选,创建匿名用户是安全隐患。
    • Disallowed Root Login: 不要勾选,你需要本地管理权限。
    • Create User for Remote Machine: 如果需要远程连接,可以在这里创建一个专门的用户,并设置权限,否则,先保持默认,后续再创建。

完成以上步骤后,点击 "Execute" 完成安装。


第二步:基础配置 (my.ini)

MySQL 的核心配置文件是 my.ini,在 "Full" 安装模式下,它通常位于 C:\ProgramData\MySQL\MySQL Server 8.0\ 目录下。注意:ProgramData 是一个隐藏文件夹,你需要在文件资源管理器的地址栏直接输入路径才能访问。

定位配置文件

如果找不到,可以右键点击系统托盘的 MySQL 服务图标 -> "MySQL 8.0 Command Line Client" -> 输入密码后,执行 SHOW VARIABLES LIKE 'config_file'; 来查看其确切位置。

Windows MySQL服务器如何配置?-图3
(图片来源网络,侵删)

核心配置项解析

[mysqld] 部分下进行修改:

  • basedir: MySQL 的安装路径。basedir="C:/Program Files/MySQL/MySQL Server 8.0/"
  • datadir: 数据文件存储的路径。datadir="C:/ProgramData/MySQL/MySQL Server 8.0/Data/"强烈建议不要放在 C 盘系统盘,可以改为其他大容量硬盘,如 D:/MySQL/Data
  • port: 监听端口,默认 3306
  • max_connections: 允许的最大并发连接数,默认是 151,对于高流量网站,可以适当调高,如 5001000,但要注意服务器内存。
  • character-set-server: 数据库默认的字符集。强烈建议设置为 utf8mb4,以支持包括 emoji 在内的所有 Unicode 字符。
  • default_authentication_plugin: 默认认证插件,可以设置为 mysql_native_password 以兼容旧客户端。
  • innodb_buffer_pool_size: 最重要的性能参数,它是 InnoDB 存储引擎的缓存池大小,建议设置为服务器可用物理内存的 50% ~ 70%,如果你有 16GB 内存,可以设置为 8G10G (即 8192M10240M)。
  • innodb_log_file_size: InnoDB 日志文件大小,较大的值可以减少事务提交时的磁盘 I/O,但会增加崩溃恢复时间,可以设置为 256M512M

一个基础的 my.ini 示例

[mysqld]
# 基础路径配置
basedir="C:/Program Files/MySQL/MySQL Server 8.0/"
datadir="D:/MySQL/Data/"
# 端口和字符集
port=3306
character-set-server=utf8mb4
default_authentication_plugin=mysql_native_password
# 性能优化
innodb_buffer_pool_size=4G  # 根据你的实际内存调整
max_connections=500
innodb_log_file_size=512M
# 其他常用配置
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

修改后如何生效? 保存 my.ini 文件后,需要重启 MySQL 服务。


第三步:安全配置

安装完成后,立即运行 MySQL 提供的安全脚本。

  1. 以管理员身份打开命令提示符 或 PowerShell。
  2. 切换到 MySQL 的 bin 目录:
    cd "C:\Program Files\MySQL\MySQL Server 8.0\bin"
  3. 运行安全脚本:
    mysql_secure_installation
  4. 脚本会引导你完成以下操作:
    • Enter current password for root: 输入你安装时设置的 root 密码。
    • Switch to unix_socket authentication [Y/n]: 输入 n,我们选择使用密码认证。
    • Set root password? [Y/n]: 输入 Y 并设置一个更强大的新密码。
    • Remove anonymous users? [Y/n]: 输入 Y,移除匿名用户。
    • Disallow root login remotely? [Y/n]: 输入 Y,禁止 root 远程登录,提高安全性。
    • Remove test database and access to it? [Y/n]: 输入 Y,删除测试数据库。
    • Reload privilege tables now? [Y/n]: 输入 Y,使所有更改立即生效。

第四步:服务管理

启动/停止/重启 MySQL 服务

  • 图形化方式 (推荐):

    • Win + R,输入 services.msc 并回车。
    • 在服务列表中找到 MySQL80 (或你自定义的服务名)。
    • 右键点击,选择 "启动"、"停止" 或 "重新启动"。
  • 命令行方式:

    # 停止服务
    net stop mysql80
    # 启动服务
    net start mysql80

设置开机自启

services.msc 中,双击 MySQL80 服务,在 "启动类型" 中选择 "

分享:
扫描分享到社交APP
上一篇
下一篇