关于mysql:MySQL-80版本初始化数据库修改密码

10次阅读

共计 1395 个字符,预计需要花费 4 分钟才能阅读完成。

mysql 在 5.7 版本之后勾销了 user 表中的 password 字段,password 函数也改成了 MD5;

明天在应用 mysql 8.0.23 版本的时候,初始化之后不小心敞开了命令行,只能跳过验证登录,而后批改明码。

从下载数据库开始,mysql 下载地址,我下载的 8.0.23 版本。


下载实现之后解压,我放在了 D://gitee/MySQL 目录下。
在解压后的文件夹根目录创立 my.ini 配置文件。

[client]
# 设置 mysql 客户端默认字符集
default-character-set=utf8
 
[mysqld]
# 设置 3306 端口
port = 3306
# 设置 mysql 的装置目录
basedir=D:\\gitee\\MySQL\\mysql-8.0.23
# 设置 mysql 数据库的数据的寄存目录,MySQL 8+ 不须要以下配置,零碎本人生成即可,否则有可能报错
# datadir=C:\\web\\sqldata
# 容许最大连接数
max_connections=20
# 服务端应用的字符集默认为 8 比特编码的 latin1 字符集
character-set-server=utf8
# 创立新表时将应用的默认存储引擎
default-storage-engine=INNODB

应用管理员身份关上 CMD 命令行工具
cd D://gitee/MySQL/mysql-8.0.23/bin

初始化数据库,执行实现后,会输入 root 用户的初始默认明码,不过我在用的时候初始密码也登录不下来
mysqld --initialize --console

···
2018-04-20T02:35:05.464644Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: APWCY5ws&hjQ
···

输出装置命令
mysqld install

输出启动命令
net start mysql

输出登录命令
mysql -u root -p

回车确认,如果装置胜利会有以下提醒:
Enter password:

此时输出方才生成的初始密码,如果登录胜利就没问题了,如果你忘了初始密码,心愿批改明码,接下来是 8.0 版本批改明码的步骤

敞开方才启动的 mysql
net stop mysql

应用如下命令启动,8.0 版本必须带–shared-memory,否则报错,–skip-grant-tables 示意跳过明码权限验证
mysqld –shared-memory –skip-grant-tables

另关上一个终端,间接启动 mysql
mysql

刷新执行指令“FLUSH PRIVILEGES;”,刷新权限
FLUSH PRIVILEGES;

设置新密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_psd_123';

设置实现后,敞开方才启动的跳过验证服务,失常启动 MySQL 服务
net start mysql

应用新密码登录
mysql -u root -p
Enter password:

以上计划在 windows10 平台 MySQL8.0.23 版本自测无效,在配置过程中参考文章 https://blog.csdn.net/baidu_32363401/article/details/81544573
https://www.runoob.com/mysql/mysql-install.html

正文完
 0