Skip to content

MySQL

字数
2055 字
阅读时间
9 分钟

MySQL 是一款开源的关系型数据库管理系统(RDBMS),最初由瑞典 MySQL AB 公司开发,现由 Oracle 公司负责维护和支持。作为全球最流行的数据库之一,MySQL 被广泛应用于 Web 开发、数据分析等众多场景。在本课程的期末项目中,我们将使用 MySQL 作为后端数据库。

安装 MySQL

安装注意事项

  • 推荐使用 MySQL Installer 进行安装。

  • 安装 .msi 文件时,如果点击没反应,请右键选择“以管理员身份运行”。

    因为 MySQL 安装时需要在 C 盘创建目录,没有管理员权限就会卡住。

  • MySQL 默认端口是 3306。如果你在安装过程中改了端口,一定要记住它!Django 连接数据库时要用。

  • 安装过程中设置的 root 密码非常重要,请务必妥善保管——之后登录 MySQL 和连接数据库都需要用到。

  • 若在 PowerShell 中运行 mysql 命令时遇到以下报错,请将 C:\Program Files\MySQL\MySQL Server 8.0\bin 目录添加到系统的环境变量中

    text
    mysql : 无法将“mysql”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。
    请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。

    该报错的原因是 PowerShell 在执行命令时,会从系统的默认路径以及已配置的环境变量 PATH 中查找 mysql。如果未找到相应路径,则会出现此错误

    思考

    使用 Mac 的同学可以思考一下,为什么你们通常不会遇到这个问题呢?

    系统默认的 PATH 都包含哪些路径?不妨试着 Google 一下,或者问问某个很会聊天的大模型 😏

  • 有些同学可能会使用 MySQL Workbench 来编写 SQL 脚本,但它在代码补全、报错提示和可视化方面略显笨重。那么,是否有更便捷高效的 工具 呢?

修改数据库配置

在第一次上机实验中,不少同学在修改数据库配置时遇到了一些问题。我们在 Windows 11 环境下复现了相关情况,并整理出以下参考,供大家查阅。感兴趣的同学可以跟着操作,也欢迎进一步探索。

实验环境

  • Windows 11
  • MySQL Ver 8.0.41 for Win64 on x86_64 (MySQL Community Server - GPL)
  • Server 安装路径: C:\Program Files\MySQL\MySQL Server 8.0
  • Data 默认存储地址: C:\ProgramData\MySQL

寻找配置文件

  • 打开服务管理器:按住 Win + R,输入 services.msc 回车
  • 找到名为 MySQL80 的服务,双击打开
  • 查看“可执行文件的路径”,你应该能看到如下内容:
    text
    // 可执行文件的路径
    C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe" 
    --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.0\my.ini" MySQL80
    • 其中 --defaults-file 指定的路径就是当前使用的配置文件
    • 哦!原来我们的配置文件现在被放在 ProgramData 目录下了,那么按照以前教程写的地址就是不对的!!!

提示

当我们找不到配置文件时,不妨换个角度思考:与其一味纠结于教程中提到的路径是否存在配置文件,不如直接问自己——“我该如何定位 MySQL 当前实际使用的配置文件?”

随着 MySQL 的不断更新,其默认配置路径也可能发生变化。在这种情况下,与其贸然手动新建一个配置文件,不如优先查找系统当前实际加载的那一份配置文件。这样做不仅更稳妥、更实用,也更符合当前环境的真实需求。

我们也希望大家在遇到类似问题时,能够看清问题的本质,而不是盲目照搬教程中的内容。毕竟,教程往往基于特定的系统环境或过往的版本,在新的环境下,照搬照抄可能不仅无效,反而会带来额外的困扰

修改配置文件

  • Windows 自带的记事本 (NotePad++) 对 .ini 文件支持较差,建议使用 VSCode 打开 C:\ProgramData\MySQL\MySQL Server 8.0 文件夹

权限提醒

该路径位于 C:\ProgramData 下,修改文件需要管理员权限。请以管理员身份启动 VSCode,然后再打开对应文件夹。

  • 找到配置文件中的 datadir 字段
  • datadir 修改为 D:\MySQL\Data
  • 手动在 D 盘下新建 D:\MySQL\Data 文件夹

重启 MySQL 服务

  • 配置修改后,必须重启 MySQL 服务,新的配置才能生效。你可以选择以下任意一种方式:
    • 方式一:在服务界面中点击“重新启动”
    • 方式二:使用终端命令(需要管理员权限)
      bash
      net stop MySQL80  // 停止 MySQL80 服务
      net start MySQL80 // 启动 MySQL80 服务
  • OOPS!好像启动不了了,这是什么情况???
  • 对了,我们是不是应该把 C:\ProgramData\MySQL\MySQL Server 8.0\Data 下的所有文件复制到 D:\MySQL\Data 文件夹下呢?
为什么需要复制 Data 文件夹呢

原始 Data 文件夹中包含了 MySQL 正常启动所必需的内容,包括:

  • 系统数据库(mysql):存储用户账户、权限配置等关键信息
  • InnoDB 引擎核心文件(如 ibdata1ib_logfile*
  • 你已有的实际数据库文件夹
  • MySQL 内部元数据和配置信息

如果缺少这些文件,MySQL 将无法正常初始化或启动。

  • 复制完成后再次尝试启动服务,应该就可以看到如下提示了

验证配置是否生效

  • 登录 MySQL 后,执行以下 SQL 语句(记得加分号),检查 datadir 是否已更新为新路径
    sql
    SHOW VARIABLES LIKE 'datadir';
  • 得到以下输出,成功!
  • 感兴趣的同学还可以尝试修改 MySQL 的其他参数,比如字符集、缓存池大小等等。不过需要注意的是,在实际开发环境中,我们建议尽量保持默认配置,这样更稳定、更安全,也更方便日后的排错和维护

参考资料

一些建议

  • 助教注意到不少同学通过百度、CSDN 等方式查找 MySQL 配置方法。但这类平台内容质量参差不齐,且优质内容往往需要付费,影响了大家的学习体验。 这里建议大家多尝试使用 Google、StackOverflow 等平台查找技术问题,这些平台对编程类内容的支持更专业。
  • 使用大模型时,建议提供更完整的问题描述,适当调整提问方式(prompt),不同的表述方式会带来截然不同的回答。
  • 编程类课程中,遇到 bug 和报错是再正常不过的事情,希望同学们具备直面错误的勇气,并努力提升排查问题、搜索资料、独立解决的能力。你遇到的问题,大概率网上已经有人遇到过 —— 多动动手,STFW!
The avatar of contributor named as mango7789 mango7789