封面来源:本文封面来源于 MySQL 官网,如有侵权,请联系删除。

本文参考:MySQL数据库教程天花板,mysql安装到mysql高级,强!硬!

1. Windows 下 MySQL 的安装

1.1 下载安装包

点击 MySQL :: Download MySQL Community Server 进入 MySQL Community Downloads 选择下载 Windows 版本的 MySQL 8.0,在当前界面上能看到两种下载内容,分别是 Recommended DownloadOther Downloads,选择 Recommended Download 并进入其下载页面:

进入推荐下载页面

之后下载完整安装包:

下载MySQL8.0.33完整安装包

1.2 安装步骤

安装包下载完成后,双击运行 .msi 安装包,运行后会有一小段时间进行初始化,请耐心等待。

初始化完成后进入以下界面,选择自定义安装类型:

选择自定义安装类型

接下来选择需要安装的产品,只选择安装 MySQL Server:

只安装MySQL Server

如果单击选择安装的产品,会出现 Advanced Options 的选项:

Advanced Options选项

点击此选项可以修改 MySQL Server 的安装目录和数据目录,可以根据自己的磁盘容量情况选择合适的位置进行安装,比如:

修改MySQL的安装目录和数据目录

注意:在目录中不能存在中文和中文空格!

按需修改后点击 next 进入 Installation 阶段:

进入Installation阶段

点击 Execute 执行安装即可。

完成安装后,一路 next 进入产品配置阶段,首先是对 Type 和 Networking 进行配置:

对Type和Networking进行配置

其中不同的 Config Type 对应着不同的内层使用情况,保持默认即可。MySQL 默认端口是 3306,此处也保持默认,如果需要安装不同版本的 MySQL,则需要对不同版本的 MySQL 配置不同的端口。

接着进入 Authentication Method 的配置,保持默认即可。

然后来到 Accounts and Roles 的配置,配置 MySQL Root 用户的密码,比如喜闻乐见的 123456:

配置root账户的密码

完成配置后,来到 Windows Service 配置阶段,在此阶段可以配置 Windows 下 MySQL 服务名称和是否自启动,保持默认即可:

进入Windows Service阶段

接着一路 next 来到 Apply Configuration 阶段,点击 Execute 执行配置修改,然后等待完成。

完成MySQL配置修改

最后有啥点啥,一路向前完成 MySQL 8.0 的安装。

1.3 配置环境变量

如果在命令行中执行 mysql --version 会提示:‘mysql’ 不是内部或外部命令,也不是可运行的程序或批处理文件。

这是因为没有配置 MySQL 环境变量,将 MySQL Server 安装目录下的 bin 目录添加到环境变量 Path 中。

前文中 MySQL Server 的安装目录是 C:\Develop\MySQL\MySQL Server 8.0,因此要添加到环境变量 Path 中的信息是 C:\Develop\MySQL\MySQL Server 8.0\bin

添加完成后 新开 命令行,再次执行 mysql --version,出现:

C:\Users\Mofan>mysql --version
mysql  Ver 8.0.33 for Win64 on x86_64 (MySQL Community Server - GPL)

1.4 尝试登录

配置好环境变量后,在命令行输入以下命令尝试登陆 MySQL:

1
mysql -uroot -p123456

其中,-u 表示用户名,紧跟着的 root 就是登录的用户名;-p 表示该用户名对应的密码,紧跟着的 123456 就是 root 用户的登录密码,也是前文配置的密码。

如果出现以下界面,就表示 MySQL 安装成功:

使用命令行尝试登陆MySQL

1.5 安装失败的原因

缺少必要的依赖

MySQL 8.0 软件安装包的运行需要依赖 .Net Framework 相关软件,如果缺少,将无法正常地安装,前往 Microsoft .NET Framework 先下载安装即可。

除此之外,还依赖 Microsoft Visual C++ 的支持,如果安装过程中出现“无法启动此程序,因为计算机中丢失 MSVCP140.dll。尝试重新安装该程序以解决此问题”,证明缺少此依赖,前往 Latest supported Visual C++ Redistributable downloads 下载安装后再重新安装 MySQL。

卸载原 MySQL 后重装失败

这是因为没有完全清楚原 MySQL 的相关信息导致的。

  • 删除原有服务安装目录,如果没有特别指定,默认是 C:\Program Files\MySQL
  • 删除原有 MySQL Data 没有,如果没有特别指定,默认是 C:\ProgramData\MySQL,该目录通常是隐藏目录

删除未卸载干净的 MySQL 服务列表

在 CMD 中运行以下命令即可:

1
sc delete MySQL服务名

2. 服务与登录

2.1 服务的启动与停止

服务是运行的,才能正常使用 MySQL。在使用 MySQL 前,务必确保安装过程中配置的 MySQL 服务名对应的服务状态是 正在运行

可以选择以下方式打开 MySQL 的服务:

使用图形界面

Windows 上使用 Ctrl + Alt + Del 打开任务管理器,找到 服务 栏,选择配置的 MySQL 服务,将其状态修改为 正在运行

使用命令行工具

在 CMD 中执行以下命令以启动或停止 MySQL 服务:

1
2
3
4
5
# 启动 MySQL 服务
net start MySQL服务名

# 停止 MySQL 服务
net stop MySQL服务名

如果执行过程中提示“拒绝服务”,则 以管理员身份运行 CMD 后执行上述命令。

2.2 登录 MySQL

常用格式:

1
mysql -h 主机名 -P 端口号 -u 用户名 -p密码

比如:

1
mysql -h localhost -P 3306 -u root -p123456

注意:

  • -p 与明文密码之间不能有空格,其他参数名与参数之间可以有空格,也可以没有;

  • 一般来说不建议使用直接使用明文密码,更推荐在下一行输入,比如:

    1
    2
    mysql -h localhost -P 3306 -u root -p
    Enter password:
  • 客户端与服务器在同一台机器上,主机名可以输入 localhost 或者 127.0.0.1,又由于连接的是本机,因此可以省略主机信息,如果采用的是默认端口,那么端口信息也可以省略,比如:

    1
    2
    mysql -u root -p
    Enter password:
  • 除了在命令行使用 mysql -Vmysql --version 获取 MySQL Server 服务版本的信息外,还可以在 登录 成功后使用 select version() 查看当前版本信息。

3. MySQL 的卸载

如果需要保存 MySQL 数据,务必在卸载前进行数据备份,数据无价!

停止 MySQL 服务

Windows 上使用 Ctrl + Alt + Del 打开任务管理器,找到 服务 栏,选择配置的 MySQL 服务,右击选择 停止

软件的卸载

方式有很多,比如:

  • 控制面板 中找到 MySQL Installer - CommunityMySQL Server 8.0,对它们进行卸载;
  • 利用国产电脑管家卸载;
  • 通过安装包提供的卸载功能卸载(是的,MySQL 的 .msi 安装包不仅可以下载 MySQL,还可以卸载 MySQL)。

删除残余文件

  • 删除 MySQL 服务的安装目录,默认是 C:\Program Files\MySQL
  • 删除 MySQL 的 Data 目录,默认是 C:\ProgramData\MySQL

删除注册表

Win + r 打开“运行”,输入 regedit 打开注册表,删除以下信息:

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\MySQL
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\MySQL
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL

其中的 ControlSet001、ControlSet002 不一定准确,可能是 ControlSet005、ControlSet006,但都大差不差。

删除配置的环境变量

删除安装 MySQL 过程中在环境变量 Path 中配置的 MySQL 相关信息。

一步到位式卸载

使用 Uninstalr 进行卸载, 卸载时务必留意数据文件, 数据无价!

4. 重置 MySQL 密码

首先关闭 MySQL 服务,共有两种方式:

  1. 通过任务管理器的服务管理进行关闭(推荐);
  2. 以管理员身份运行 CMD,执行 net stop MySQL服务名 命令关闭 MySQL 服务。

接下来需要寻找 my.ini 文件所在的路径,该文件位于 MySQL 的 Data 目录下。Data 目录的默认路径是 C:\ProgramData\MySQL,这个路径在安装 MySQL 时可以被修改。

以管理员身份运行 CMD,执行:

1
2
# 按需修改 --defaults-file 选项指向的 my.ini 文件路径
mysqld --defaults-file="C:\Develop\MySQL\MySQL Server Data\my.ini" --console --skip-grant-tables --shared-memory

此时该窗口会持续处于运行状态,保持该窗口的运行状态,切勿关闭!

以管理员身份新开 CMD,执行:

1
mysql -uroot -p

如果要求输入密码,直接回车即可。

此时成功绕过密码并登录到 MySQL。

接下来依次运行以下命令重置 root 用户的密码:

1
2
3
4
5
6
7
USE mysql
-- 先 flush 再重置
FLUSH PRIVILEGES;
-- 重置密码为 123456
ALTER user root@'localhost' identified by '123456';
-- 使修改生效
FLUSH PRIVILEGES;

最后启动 MySQL 服务,使用重置后的密码登录 MySQL。

一个小知识

Windows 下切换盘符时无需 cd 命令,直接键入盘符即可,比如切换到 D 盘的命令是:

1
D:

5. 其他常见问题

使用 mysql 命令显示“不是内部或外部命令”

未配置环境变量导致的,将 MySQL 服务安装目录下的 bin 目录添加到环境变量 Path 中即可解决。