一、准备工作

在安装 MySQL 之前,我们需要做好一些准备。首先是版本选择,建议大家选择 MySQL 8.0 + 版本,新版本在性能和功能上都有显著提升。同时,不同操作系统的用户有不同的安装方式推荐:

  • Windows 用户:推荐使用 MSI 安装包,安装过程更加便捷。
  • Mac 用户:使用 Homebrew 安装会更加省心,只需在终端输入brew install mysql即可。
  • Linux 用户:可以通过apt-get或yum命令进行安装,别忘了加上sudo获取权限。

此外,还需要检查一下系统环境:

  1. 确认系统位数,是 32 位还是 64 位,以便下载对应的安装包。
  2. 确保磁盘有足够的空间,至少预留 500MB。
  3. 内存最好在 4G 以上,以保证安装和运行的流畅性。
  4. 暂时关闭杀毒软件,避免其拦截安装过程中的文件。

二、安装实战

  1. Windows 系统安装
  • 下载安装包:访问 MySQL 官方网站(https://dev.mysql.com/downloads/mysql/ ),根据系统版本下载对应的 MySQL Installer 安装包。建议选择带有mysql-installer-web-community的版本,这是功能较为完整的版本。
  • 运行安装程序:双击下载好的安装包,进入安装向导。在安装类型选择界面,建议选择 “Custom” 自定义安装,这样可以根据自己的需求勾选组件,避免安装一些不必要的内容。勾选 “MySQL Server” 核心组件,同时也可以顺手勾选 “MySQL Workbench”,这是一个非常实用的数据库管理工具,方便后续操作。
  • 配置参数:在配置过程中,有几个关键设置需要注意:
  • 认证方式选择 “Use Strong Password Encryption”,以提高安全性。
  • 设置 root 用户密码,务必设置一个复杂且自己能记住的密码,避免使用简单易猜的密码,如 “123456”。
  • 服务名称保持默认即可,除非你有多个 MySQL 实例需要区分。
  • 端口号默认使用 3306,如果没有特殊需求,不要随意更改。
  1. Linux 系统安装(以 Ubuntu 为例)

TypeScript取消自动换行复制

sudo apt update


TypeScript取消自动换行复制

sudo apt install mysql-server


安装过程中会提示设置 MySQL root 用户的密码,按照提示操作即可。

TypeScript取消自动换行复制

sudo systemctl status mysql


如果显示 “active (running)”,则表示服务正常运行。为了提高 MySQL 的安全性,还可以运行安全配置脚本。

TypeScript取消自动换行复制

sudo mysql_secure_installation


按照提示设置密码策略、删除匿名用户、禁止 root 远程登录、删除测试数据库等操作。

  • 更新软件包列表:打开终端,输入以下命令更新软件包列表,确保安装的是最新版本的 MySQL。
  • 安装 MySQL:使用以下命令安装 MySQL 服务器。
  • 启动与配置 MySQL 服务:安装完成后,MySQL 服务会自动启动。可以使用以下命令检查服务状态。
  1. macOS 系统安装

TypeScript取消自动换行复制

brew install mysql


安装完成后,启动 MySQL 服务。

TypeScript取消自动换行复制

brew services start mysql


初次安装后,MySQL 会生成一个临时密码,可以通过以下命令查看。

TypeScript取消自动换行复制

sudo cat /usr/local/var/mysql/*.err


在输出信息中找到类似 “temporary password” 的字样,后面跟着的就是临时密码。使用临时密码登录 MySQL,并修改 root 用户密码。

TypeScript取消自动换行复制

mysql -uroot -p


进入 MySQL 命令行后,执行以下命令修改密码。

TypeScript取消自动换行复制

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';


  • 使用 Homebrew 安装(推荐方式):如果你的 macOS 系统已经安装了 Homebrew 包管理器,那么安装 MySQL 会非常方便。打开终端,输入以下命令安装 MySQL。
  • 使用 DMG 安装包安装:从 MySQL 官方网站下载适用于 macOS 的 DMG 安装包,下载完成后打开安装包,按照安装向导的提示逐步完成安装,安装过程中会提示设置 root 用户密码等信息。安装完成后,同样需要配置环境变量,将 MySQL 安装目录下的 “bin” 文件夹路径添加到系统环境变量的 “Path” 中。

三、配置环境变量(仅 Windows 用户需要)

很多小伙伴在安装完 MySQL 后,发现命令行无法使用 MySQL 命令,这是因为没有配置环境变量。配置步骤如下:

  1. 右键 “此电脑”,选择 “属性”,点击 “高级系统设置”。
  2. 在弹出的窗口中,点击 “环境变量”。
  3. 在系统变量中找到 “Path” 变量,点击 “编辑”。
  4. 添加 MySQL 的 bin 目录路径,默认路径一般在 C:\Program Files\MySQL\MySQL Server 8.0\bin ,添加完成后点击 “确定” 保存设置。

四、验证安装是否成功

安装完成后,我们需要验证一下 MySQL 是否安装成功。打开命令行工具(Windows 下为 cmd 或 powershell,Linux 和 macOS 下为终端),输入以下命令。

TypeScript取消自动换行复制

mysql -u root -p


然后输入之前设置的 root 用户密码,如果能够成功进入 MySQL 命令行界面,看到如下提示符,就说明安装成功啦。

TypeScript取消自动换行复制

Welcome to the MySQL monitor. Commands end with ; or \g.

...

mysql>


五、新手避坑指南

  1. 忘记 root 密码:如果不小心忘记了 root 密码,可以按照以下步骤操作:首先停止 MySQL 服务,可以在 “services.msc” 服务管理窗口中找到 MySQL 服务并停止它;然后创建一个初始化文件 my.ini,在其中添加skip-grant-tables配置;接着重启 MySQL 服务,此时可以无密码登录,登录后修改密码即可。具体步骤网上有很多详细教程,这里就不展开了。
  2. 端口被占用:如果在启动 MySQL 时遇到端口被占用的情况,比如出现 ERROR 2003 错误,可以使用以下命令查看占用 3306 端口的进程。

TypeScript取消自动换行复制

netstat -ano | findstr :3306


找到占用进程的 PID 后,使用以下命令终止该进程。

TypeScript取消自动换行复制

taskkill /PID 占用进程的PID /F


  1. 中文乱码问题:在 MySQL 中,如果出现中文乱码,可以在配置文件 my.ini(Windows)或 my.cnf(Linux、macOS)中添加以下配置。

TypeScript取消自动换行复制

[mysql]

default-character-set=utf8mb4

[mysqld]

character-set-server=utf8mb4

collation-server=utf8mb4_unicode_ci


六、扩展玩法

  1. 修改默认存储路径:如果不想将 MySQL 的数据存储在默认的 C 盘,可以修改存储路径。在配置文件中找到datadir参数,将其值修改为你想要的存储路径,例如datadir=D:/MySQLData 。
  2. 配置远程访问:如果希望其他机器也能连接到你的 MySQL 数据库,可以执行以下操作:首先创建一个远程访问用户。

TypeScript取消自动换行复制

CREATE USER'remote_user'@'%' IDENTIFIED BY 'your_password';


然后授予该用户所有权限。

TypeScript取消自动换行复制

GRANT ALL PRIVILEGES ON *.* TO'remote_user'@'%';


最后刷新权限。

TypeScript取消自动换行复制

FLUSH PRIVILEGES;


需要注意的是,完成上述操作后,要确保防火墙放行 3306 端口,否则远程连接可能会失败。