我不知道我的MySQL根密码;我怎么才能知道呢?是否有存储此密码的文件?
我正在跟踪这个链接,但我在本地没有directadmin目录。
我不知道我的MySQL根密码;我怎么才能知道呢?是否有存储此密码的文件?
我正在跟踪这个链接,但我在本地没有directadmin目录。
当前回答
适用于Windows 10下的MySQL 5.5
您无法找到密码,因为它在表中是散列的,所以重置它是唯一的选择。
Lokesh kumar Chippada提供的通过.txt文件导入新密码脚本的解决方案对我不起作用。我发现命令提示符在启动导入后冻结了。
我在my.ini文件中添加了skip-grant-tables,就像tonycoupland在这篇SO帖子上的答案一样。
然后我就可以从命令行登录到mysql了
$ > mysql
然后在mysql中
mysql> FLUSH PRIVILEGES;
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
请参见mysql开发页面的“B.3.3.2.3重置Root密码:通用说明”。我现在已经从my.ini文件中删除了skip-grant-tables,并且我可以使用我创建的新密码作为根用户登录。
其他回答
mysql服务器安装后的默认密码是:mysql
在你的“主机名”中。在MySQL工作的数据文件夹中的err文件中,尝试寻找以以下开头的字符串:
“为roor@localhost生成临时密码”
你可以使用
less /mysql/data/dir/hostname.err
然后使用斜杠命令,后面跟着要查找的字符串
/"A temporary password"
然后按n,进入下一个结果。
在Windows系统下,请按照以下步骤重置密码
从任务管理器中停止Mysql服务 创建一个文本文件并粘贴下面的语句
MySQL 5.7.5及以前版本: SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yournewpassword');
MySQL 5.7.6及以上版本: ALTER USER 'root'@'localhost'
保存为mysql-init.txt,并将其放在“C”盘。 打开命令提示符并粘贴以下内容
C:\\ > mysqld——init-file=C:\\mysql-init.txt
适用于Windows 10下的MySQL 5.5
您无法找到密码,因为它在表中是散列的,所以重置它是唯一的选择。
Lokesh kumar Chippada提供的通过.txt文件导入新密码脚本的解决方案对我不起作用。我发现命令提示符在启动导入后冻结了。
我在my.ini文件中添加了skip-grant-tables,就像tonycoupland在这篇SO帖子上的答案一样。
然后我就可以从命令行登录到mysql了
$ > mysql
然后在mysql中
mysql> FLUSH PRIVILEGES;
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
请参见mysql开发页面的“B.3.3.2.3重置Root密码:通用说明”。我现在已经从my.ini文件中删除了skip-grant-tables,并且我可以使用我创建的新密码作为根用户登录。
如果您在过去已经设置了密码,mysql -uroot -p解决方案将不起作用,
在我的例子中,我使用了上面的一些答案来解决这个问题(Ubuntu 16)。结果是:
sudo service mysql stop
sudo mysqld_safe --skip-grant-tables &
如果你在屏幕上看到这段文字: mysqld_safe UNIX套接字文件目录“/var/run/mysqld”不存在。 然后做:
sudo mkdir -p /var/run/mysqld
sudo chown mysql:mysql /var/run/mysqld
sudo mysqld_safe --skip-grant-tables & # Look at the & at the end!
进入其他终端设置密码如下:
sudo mysql -u root
mysql> use mysql;
mysql> SET PASSWORD FOR 'root'@'localhost'=PASSWORD('__NEW__PASSWORD__');
mysql> flush privileges;
mysql> quit;
然后重新启动服务并登录
# end mysqld_safe in the other terminal
sudo service mysql start
sudo mysql -h 127.0.0.1 -uroot -p