MySQL密码错误解法

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

MySQL密码错误解法

LP学长​​​​​​​   2022-09-29 我要评论

前言

MySQL 版本:v8.0.27

准备工作:

MySQL 环境变量配置无误,可直接在命令行运行 mysql、mysqld 等服务

解法一:进入 MySQL 安全模式,无密码登录

第一步:停止 mysql 服务

第二步:以管理员权限运行命令行 mysqld --console --skip-grant-tables --shared-memory

注意:mysqld –skip-grant-tables 实测在 MySQL 8.0 中已失效。

第三步:重新打开一个管理员权限的命令行窗口,输入 mysql

第四步:修改 root 用户密码和用户权限

当执行语句出现错误:

  • ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
  • 执行 flush privileges; 刷新权限即可
  • 新建用户: create user '{username}'@'localhost' identified by '‘{password}'; flush privileges;
  • 修改密码: Alter user '{username}'@'localhost' identified by '{new_password}'; flush privileges;
  • 授权: grant all privileges on *.* to '{username}'@'localhost' with grant option;

解法二:初始化 MySQL

第一步:停止 mysql 服务

第二步:转移 MySQL 数据存储目录

将配置文件 my.ini 中的 datadir 属性修改为目标路径(可以将原 /data 文件夹下的内容复制转移),或直接将 /data 删掉。

管理员权限打开命令行,输入 mysqld --initialize --user=mysql --console,会生成初始化密码:

img

第三步:启动 mysql 服务

第四步:通过初始密码进入 MySQL 并修改用户密码

Tips

查看 service 服务项目配置所在位置

右键点击服务项,打开属性;配置文件在可执行文件路径中。

指定端口号登陆 MySQL

# 大写 -P 为端口号参数
$ mysql -u root -P 3307 -h localhost -p

查看和修改 MySQL 端口号

查看端口号

登入数据库后,在 mysql> 后面输入 show global variables like 'port'; 或直接输入 \s

修改端口号:

  • 停止 mysql 服务;
  • 修改 my.ini 文件,记事本打开,找到 [mysqld] 下面的 port,修改后保存;
# The TCP/IP Port the MySQL Server will listen on
port=3306

启动 mysql 服务;

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们