doc/笔记/win10安装Mysql57-mysql57-for-...

153 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: win10安装Mysql5.7
date: 2023-04-15 18:14:38.026
updated: 2023-04-26 19:32:26.938
url: /archives/mysql57-for-win10
categories:
- 数据库
tags:
- DB
---
# win10安装Mysql5.7
> 环境windows10 + Mysql5.7.33
## 下载Mysql安装包
下载地址https://downloads.mysql.com/archives/community/
## 解压Mysql包
本次解压的目录是D:\mysql-5.7.33-winx64
如果是其它路径,记一下解压路径
在目录里手动 **创建一个data文件夹** ,这个是存放数据库数据存放目录
然后 **创建一个my.ini文件** ,这个是配置文件,可以自定义配置
![](/upload/2023/04/image-1681553566687.png)
下面给出ini一个示例其中basedir和datadir根据实际安装目录替换一下
```ini
[mysql]
#设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置端口
port=3306
#设置mysql安装目录
basedir=D:\mysql-5.7.33-winx64
#设置数据库数据存放目录
datadir=D:\mysql-5.7.33-winx64\data
#允许最大连接数
max_connections=180
#服务端字符集
character-set-server=utf8
#创建新表时默认存储引擎
default-storage-engine=INNODB
```
## 配置环境变量
可以不配置进入到bin目录执行命令也是可以的
`MYSQL_HOME`
`D:\mysql-5.7.33-winx64\bin`
## 安装Mysql
**需要使用管理员权限打开CMD!**
cmd.exe在C:\Windows\SysWOW64目录下找到cmd.exe鼠标右键使用管理员权限打开cmd
**在mysql的bin目录下执行安装命令**
```sh
mysqld install
```
![](/upload/2023/04/image-1681553597383.png)
**执行初始化命令**
加--console目的是为了输入默认密码后面这个密码会更改
```sh
mysqld --initialize --console
```
![](/upload/2023/04/image-1681553611319.png)
**启动Mysql服务**
```sh
net start mysql
```
![](/upload/2023/04/image-1681553631589.png)
**登录Mysql**
使用上面的默认密码登录Mysql
```
mysql -u root -p
```
**修改密码**
可以把123456替换为别的密码注意要有单引号
```
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
```
![](/upload/2023/04/image-1681553646827.png)
`exit` 命令退出
**使用客户端测试连接**
![](/upload/2023/04/image-1681553674484.png)
## 修改root密码忘记密码
有一次我打开电脑后使用DOS登录Mysql报了下面这个错误
```
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
```
应该是密码有问题,但是我不清楚为什么有问题,大概率密码错误?或者我之前的密码不是这个,我记错了?
说一下我的解决办法
### 解决办法
在win系统中停止Mysql服务
打开DOS窗口转到mysql\bin目录
输入mysqld --skip-grant-tables 回车。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
```
mysqld --skip-grant-tables
```
输入mysql回车如果成功将出现MySQL提示符
进入数据库
```
use mysql;
```
这里要使用下面这个命令刷一下权限,不然执行修改密码的命令会提示无权限
```
flush privileges;
```
然后修改密码
```
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
```
然后重启数据库打开新的DOS窗口使用新密码就可以登录了