mysqld skip-grant-tables报错Can‘t create test file

mysql8.0重置密码报错

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

1.Can't create test file和

2.Failed to set datadir to '

1.报错,两个报错都是由于无法创建一个mysqld_tmp_file_case_insensitive_test.lower-test的文件而产生的

进入bin 敲代码,注意空格和斜杠方向

.\mysqld --initialize --lower-case-table-names=1

当没有任何报错就说明运行成功了
此时你成功的创建了mysqld_tmp_file_case_insensitive_test.lower-test的文件

2.报错是指当前目录下没有存放数据的data文件夹,只需要在mysql8.0的C:\Program Files\MySQL\MySQL Server 8.0目录下新建一个data文件夹即可。

参考:

mysql8.0.20 下重置密码时各种报错以及解决方法_肖半仙的博客-CSDN博客

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 如果 mysqld-skip-grant-tables 已经失效,可以尝试以下解决方案: 1. 重启 MySQL 服务器 2. 检查 my.cnf 文件是否正确设置了 mysqld-skip-grant-tables 选项 3. 在启动 MySQL 时添加 --skip-grant-tables 参数 如果仍然无法解决问题,可以尝试重新安装或升级 MySQL。 ### 回答2: mysqld-skip-grant-tables是MySQL中一个非常重要的命令,它可以让用户在忘记MySQL密码的情况下,直接登录进入MySQL数据库,从而重置密码。但是,在使用mysqld-skip-grant-tables的时候,需要注意一些问题,毕竟这是一个非常危险的操作,不当使用可能会导致数据丢失,数据库崩溃等严重后果。 首先,如果mysqld-skip-grant-tables失效了,可能是由于MySQL版本的不兼容导致的,因为不同的MySQL版本是有差异的,如果版本不兼容,可能会导致错误。其次,可能是由于MySQL服务器中的一些配置文件被更改了,或者是权限问题导致mysqld-skip-grant-tables无法正常工作。此外,需要注意的是,当使用该命令时,要避免同时进行其他操作,否则可能会导致数据丢失或者其他问题。 在使用mysqld-skip-grant-tables时,最好遵循以下几点原则: 1. 在进行操作前,一定要备份好数据。 2. 在使用mysqld-skip-grant-tables时,只运行必须的服务,并关闭所有的MySQL二进制,否则可能会导致数据损坏。 3. 在操作的过程中,一定要小心谨慎,仔细阅读MySQL的官方文档并遵循相应的操作规范。 4. 在成功登录MySQL之后,一定要尽快修改密码,并重新打开MySQL二进制。 总之,如果mysqld-skip-grant-tables失效了,可能会导致一些无法预料的问题,所以在使用这个命令之前,一定要仔细考虑,并严格遵循相关的操作规范。 ### 回答3: mysqld-skip-grant-tables是MySQL服务的一个启动选项,在启动MySQL时加上该选项可以进入一个特殊的状态,也就是跳过授权表的检查,直接使用root用户登录MySQL,从而可以修改其他用户的密码或者创建新用户。不过需要注意的是,这个状态不安全,因为任何人都可以使用root用户登录MySQL,因此只应在必要时临时启用。 一般而言,当你需要重置某个MySQL账号的密码时,可以使用mysqld-skip-grant-tables选项进入上述状态,然后执行相应的命令进行密码的修改。当操作完成后,再将mysqld-skip-grant-tables选项关闭,MySQL就会回到正常模式,恢复正常的授权检查。 然而,有时候,在MySQL服务运行的过程中,mysqld-skip-grant-tables选项会自动失效,这就会导致授权表恢复正常的检查,使得无法使用root用户登录MySQL。这是因为MySQL自身的一些设置或运行状态导致了该选项的失效,比如重启MySQL服务、重新加载授权表等操作,都会使mysqld-skip-grant-tables失效。 如果出现这种问题,一种解决方法是重启MySQL服务,并在重启命令中再次添加mysqld-skip-grant-tables选项。不过,这种方法存在安全隐患,因为重启服务时,MySQL可能会重新加载授权表,从而导致之前的修改失效。 另一种解决方法是使用其他的 MySQL授权表管理工具,比如phpMyAdmin等,这些工具可以通过 Web 界面进行 GUI 方式的密码重置、用户创建等操作。使用这种方法需要注意,在操作前需要锁定其他用户账号以避免重置他人密码的情况发生。 总之,跳过授权表检查这种方法的风险与收益需要评估后再决定是否使用,同时操作时也需要小心谨慎,避免造成不必要的损失。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值