Windows 安装 MySQL5.7.30正常情况与异常情况

第一步 下载压缩包

下载链接:MySql5.7.30

第二步:配置
1、新建文件文件夹

注意:解压到的目录不能出现中文或者空格等名称

在解压目录下,在bin同级目录下新建 my.ini文件和 data 文件夹:

下面的是my.ini的文件,但是注意的是basedirdatadir,这个是你放在盘的位置

复制代码
[mysqld]
# 设置端口
port=3306

# 安装路径和数据路径
basedir=D:/mysql-5.7.30-winx64
datadir=D:/mysql-5.7.30-winx64/data

# 最大连接数和连接错误上限
max_connections=200
max_connect_errors=10

# 服务端字符集(推荐 utf8mb4)
character-set-server=utf8mb4

# 存储引擎
default-storage-engine=INNODB

# 身份验证插件(避免密码兼容问题)
default_authentication_plugin=mysql_native_password

# 强制 SQL 模式(更安全)
sql_mode=STRICT_ALL_TABLES

# 跳过主机名解析(提升连接速度)
skip-name-resolve

# 看需求
# bind-address = 127.0.0.1   # 本机用
bind-address = 0.0.0.0   # 需要远程再开

[mysql]
# 命令行工具字符集
default-character-set=utf8mb4

[client]
# 客户端连接服务端默认端口和字符集
port=3306
default-character-set=utf8mb4
2、配置环境变量

使用命令的方式打开环境变量
Win + R

输入:

复制代码
sysdm.cpl

回车后:

👉 打开"系统属性" → 切换到【高级】→ 点击【环境变量

在系统变量中,新增:MYSQL_HOME 值(放置MySQL的位置):D:\mysql-5.7.30-winx64

复制代码
MYSQL_HOME

在系统变量中找到 Path, 选择 编辑新建,将%MYSQL_HOME%\bin 复制到新增位置,然后就可以了。

复制代码
%MYSQL_HOME%\bin
3、命令行配置

以管理员身份打开cmd,然后定位到 D:\mysql-5.7.30-winx64\bin下。如果不知道如何在cmd模式下切换 目录,请参照下图:

复制代码
cd /d D:\mysql-5.7.30-winx64\bin
1.初始化

记住一定要进行初始化,如跳过这一步,接下来将会出现1067错误,不好解决。

复制代码
mysqld --initialize --console

初始化完成后,会生成一个临时密码,一会儿登录要用,后续操作新打开CMD窗口。此时,再去看刚新建的data文件夹,这是数据库保存目录,发现经生成了好多文件,这就不用管了。

2.安装mysql服务
复制代码
mysqld -install
3.启动mysql服务
复制代码
net start mysql
4.登录

安装成功之后,需要进行登录,把刚才最后的那个密码输入上,下一步修改密码

复制代码
mysql -uroot -p
5.修改密码
复制代码
ALTER USER root@localhost IDENTIFIED BY 'AAaa@123';

flush privileges;
6.可以远程连接
复制代码
use mysql;

update user set host ='%' where user ='root';

flush privileges;

exit

以上在正常情况下安装指定会成功

以下是出现了不同的问题

1、安装成功之登录

复制代码
mysql -uroot -p

提示以下内容:
mysql Waring using a password on the command line interface can be instecure error 1130 host ::1 is not allowed to connect to this mysql server

这个提示是登录时的警告和连接错误

1、停止MySQL服务

复制代码
net stop MySQL

2、以跳过权限模式启动

复制代码
cd /D "D:\mysql-5.7.30-winx64\bin"

mysqld --console --skip-grant-tables --shared-memory

这个命令是跳过了权限模式启动了,不用管

3、新开 CMD 窗口,直接修改权限表

-- 无密码登录

复制代码
mysql -u root

-- 指定数据库

复制代码
USE mysql;
FLUSH PRIVILEGES;

-- 查看当前用户

复制代码
SELECT user, host FROM user WHERE user='root';

-- 删除所有 root 用户

复制代码
DELETE FROM user WHERE user='root';
FLUSH PRIVILEGES;

-- 重新创建正确的 root 用户(注意是 localhost,不是 ::1)

复制代码
CREATE USER 'root'@'localhost' IDENTIFIED BY 'AAaa@123';

-- 或(上面提示错误后使用下面的命令试一下)

复制代码
INSERT INTO user (user, host, authentication_string, ssl_cipher, x509_issuer, x509_subject) 
VALUES ('root', 'localhost', PASSWORD('AAaa@123'), '', '', '');
FLUSH PRIVILEGES;

-- 授予所有权限并刷新权限

复制代码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

-- 验证

复制代码
SELECT user, host FROM user WHERE user='root';

-- 设置远程连接

复制代码
update user set host ='%' where user ='root';

FLUSH PRIVILEGES;

EXIT

此时配置成功了,把mysqld --console --skip-grant-tables --shared-memory这个的窗口关闭

然后把数据库服务重新打开

复制代码
net start mysql

使用下面命令进行登录,应该是成功的了。如果有其他问题的话,下面再提出来

复制代码
mysql -uroot -pAAaa@123
相关推荐
晨曦蜗牛2 小时前
Windows 上 Claude Code 报错 “requires git-bash“ 的完整解决方案
windows·git·bash
chh5633 小时前
从零开始学习C++ -- 基础知识
开发语言·c++·windows·学习·算法
不才小强3 小时前
Windows屏幕捕获技术分析
windows·音视频
桌面运维家3 小时前
Windows 10 USB安全:恶意设备识别与访问控制详解
windows·单片机·安全
桌面运维家3 小时前
VHDX磁盘性能优化:空间回收与碎片整理指南 (Windows)
windows·性能优化
阿林爱吃大米饭3 小时前
VSI-Bench 环境配置与评估
windows
John_ToDebug12 小时前
浏览器扩展延迟加载优化实战:如何让浏览器启动速度提升50%
c++·chrome·windows
蟑螂恶霸12 小时前
Windows安装OpenCV 4.8
人工智能·windows·opencv
特立独行的猫a15 小时前
在 Windows 10 上安装和使用 WSL 2 安装 Ubuntu24详细指南
windows·ubuntu·wsl2