Appearance
随记
将成功的东西整理成册,就能永远成功。
- 操作系统:Win10 21H1
- MySQL版本: 8.0.28 解压缩版
前情提要
沙福林的热心提醒
- 沙福林一般使用的是解压缩版Mysql安装简单,少许配置即可,其他8.0.x版本可参考该教程,是否使用于mysql5.x安装未知,自己试
- 由于沙福林电脑已经安装mysql了,本次教程演示在windows沙盒进行,具体位置根据自己磁盘路径调整
- 不要怕装错了,大不了删除 datadir 再来一遍
可能出现问题及其解决方案
- dll文件缺失
该安装微软常用运行库合集 2020.08.26 修复电脑环境,建议先安装 - 命令执行不成功或者报错
执行安装命令的窗口不是管理员权限,选择管理员的命令执行窗口 - 初始化mysql服务失败
大概率是 datadir 不为空导致的,删除该目录即可 - 执行安装mysql服务命令提示服务已存在
删除已存在服务即可 sc delete mysql
1. 下载安装包
下载MySQL8.0.28安装包,这些大厂软件,基本都有国内源仓库同步,推荐使用国内源仓库的下载地址,沙福林一般使用阿里云仓库
- 各仓库下载地址
直阿里云仓库MySQL8.0.28 本文使用
2. 安装
解压到合适位置
沙福林建议一般放在 某盘符\Program Files 下,由于沙福林是在沙盒演示,此处就用 “某盘符” 就写 “C:” , 实际安装时建议选择其他盘符
本文目录结构如下 C:\Program Files\mysql-8.0.28-winx64
新建并编辑配置文件my.ini
新建并编辑配置文件my.ini,文件内容如下,本文只添加了基本的参数,其他参数自行根据需要 添加
shell
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=C:\Program Files\mysql-8.0.28-winx64
# 设置mysql数据库的数据的存放目录
datadir=C:\Program Files\mysql-8.0.28-winx64\Data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
max_allowed_packet=1024M
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
添加环境变量
添加环境变量,方便全局使用mysql命令,不必非要切换到 mysql安装目录/bin 执行命令
方式一: 命令行设置追加环境变量
shell
setx path "%path%;C:\Program Files\mysql-8.0.28-winx64\bin" /m方式二: 图形化添加,右击计算机-属性-高级系统设置-环境变量-找Path变量
设置好之后一路确认,就算设置完毕了
初始化mysql
执行命令,获取mysql初始密码,红框所示为mysql初始密码,一会需要用这个密码进入mysql,然后修改密码
shell
mysqld --initialize --console
mysql服务安装并启动

- 安装mysql服务
shell
mysqld --install- 启动mysql服务
shell
net start mysql停止mysql服务, 本文主要将安装,暂不需要该命令,如果修改配置文件了,就需要先停后启动
shell
net stop mysql进入mysql终端
- 进入mysql终端
shell
mysql -uroot -p初始密码
2. 基本操作
sql
-- 修改root密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';
-- 开启允许远程连接
USE mysql;
UPDATE user SET host='%' WHERE user='root';
-- 刷新权限
FLUSH PRIVILEGES;
接下来就愉快地使用mysql玩耍吧
root忘记密码
- 开启一个cmd窗口,输入以下命令,关闭mysql服务,该窗口记为 cmd1
shell
net stop mysql- 在 cmd1 中输入以下命令,用于免密码进入mysql
shell
mysqld --console --skip-grant-tables --shared-memory- 开启一个cmd窗口,输入以下命令,免密码进入mysql,该窗口记为 cmd2
碰到要输入密码无视,直接回车
shell
mysql -uroot -p
4. 修改root密码
sql
-- 1. 刷新权限一定要先执行,不然下一句会报错
FLUSH PRIVILEGES;
-- 2. 修改root密码,此处是'%'还是'localhost'取决于有没有开启远程连接,上面已经开启了,所以我这里是'%'
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '654321';
-- 3. 刷新权限
FLUSH PRIVILEGES;crtl+c中断 cmd1,然后重启mysql服务- 启动mysql服务
shell
net start mysql- 使用新密码进入mysql终端
shell
mysql -uroot -p654321


