为mysql设置密码时,我使用了错误的代码
2^21-1
此处PASSWORD设置为我无法识别的值。我也尝试过安全模式恢复,但问题尚未解决。如何解决此问题?
我尝试了安全模式恢复,但是还需要使用旧密码。
答案 0 :(得分:0)
我们可以通过在玩具示例中重现问题来解决此问题:
CREATE TABLE Foo (Bar TEXT);
INSERT INTO Foo VALUES("Hello world");
SELECT * FROM Foo;
UPDATE Foo SET Bar=BAR=('password');
SELECT * FROM Foo;
第一个SELECT
向我们显示Hello world
;第二个向我们显示0
。因此,无论出于何种原因,错误的表达式BAR=('password')
都会导致0
。因此,我相信您密码的哈希是0
。
麻烦的是,这并没有真正帮助您,因为您需要知道映射到所述哈希的密码-而且很可能没有一个。
您应该重置根密码,方法是使用--skip-grant-tables
开关旋转服务器(禁用身份验证),然后登录并正确设置密码(ref)。之后一定要以“正常”模式重新启动它,因为该开关很危险!实际上,我建议在任务执行期间关闭与传入MySQL连接的防火墙。