我知道有关于此问题的无数问题和帖子,但我在尝试启动MySQL服务器时遇到错误而且我不知道如何解决它。
因此,为了解释我无法访问我的数据库,所以我尝试重置root用户的密码。我跟着this guide,但我没有运气。首先我在我的机器上遇到了权限问题,现在我收到了这个错误:
1105 Bootstrap file error, return code (0). Nearest query: ''
从技术上讲,MySQL服务器正在启动,但是init-file
没有运行,所以我的密码没有被重置。
我正在运行的命令是:
mysqld --defaults-file="C:\\ProgramData\\MySQL\\MySQL Server 5.7\\my.ini" --init-file=C:\\mysql-init.txt --console
mysql-init.txt的内容
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
以下是显示错误的日志部分:
[Note] Execution of init_file 'C:\\mysql-init.txt' started.
[ERROR] 1105 Bootstrap file error, return code (0). Nearest query: ''
[Note] Execution of init_file 'C:\\mysql-init.txt' ended.
[Note] C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqld.exe: ready for connections.
MySQL版本: 5.7
操作系统:Windows 10
答案 0 :(得分:0)
答案 1 :(得分:0)
MySQL 5.7.24出现两个错误
1。)脚本文件必须位于单独的文件夹中(而不是mysql安装文件夹或数据目录) 并且该文件夹必须获得“安全文件特权”
2。)上面的错误是由于脚本未以';'
结尾成功,然后使用命令行语句
mysqld --datadir=D:\ProgramData\mysql\data --init-file=D:\ProgramData\mysql\reset\reset.sql --secure-file-priv=D:\ProgramData\mysql\reset --console
和SQL脚本文件“ reset.sql”为
alter user 'root'@'localhost' identified by 'root_pwd';
答案 2 :(得分:0)
对于我来说,在Ubuntu上,问题是mysql
用户不拥有初始化文件。
chown mysql:mysql /tmp/reset_mysql_pswd.sql
sudo mysqld --init-file=/var/lib/mysql/reset_mysql_pswd.sql
# ^C or kill -9 <mysqld pid>
systemctl stop mysql.service
systemctl start mysql.service
即使包含初始化文件和初始化文件本身的文件夹具有权限777
(这是一个坏主意),我仍然会得到:
2020-04-10T23:14:48.030719Z 0 [Note] Execution of init_file '/tmp/reset_mysql_pswd.sql' started.
2020-04-10T23:14:48.030764Z 0 [ERROR] mysqld: File '/tmp/reset_mysql_pswd.sql' not found (Errcode: 13 - Permission denied)
2020-04-10T23:14:48.030772Z 0 [ERROR] Aborting