我不知道我的MySQL根密码;我怎么才能知道呢?是否有存储此密码的文件?
我正在跟踪这个链接,但我在本地没有directadmin目录。
我不知道我的MySQL根密码;我怎么才能知道呢?是否有存储此密码的文件?
我正在跟踪这个链接,但我在本地没有directadmin目录。
当前回答
这里提供的答案似乎对我不起作用,事实证明,诀窍是: ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password
(完整的答案在这里:在MySQL 5.7用" plugin: auth_socket "修改用户密码)
其他回答
mysql服务器安装后的默认密码是:mysql
有一件事绊倒了我在一个新的MySQL安装,并想知道为什么我不能得到默认密码工作,为什么甚至重置方法不起作用。 在Ubuntu 18上,MySQL服务器的最新版本在默认情况下根本不使用root用户的密码认证。这意味着不管你设置它为什么,它都不会让你使用它。它期望您从特权套接字登录。
mysql -u root -p
即使您使用了正确的密码,这也不起作用。
相反,你需要使用:
sudo mysql
这将适用于任何密码。 然后输入
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Password you want to use';
然后登出,现在它将接受您的密码。
我被这个问题困扰了几分钟,下面是唯一可行的解决方案: https://phoenixnap.com/kb/access-denied-for-user-root-localhost
sudo mysql ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password Mysql -u root -p
您无法查看散列后的密码;你唯一能做的就是重置!
停止MySQL:
sudo service mysql stop
or
$ sudo /usr/local/mysql/support-files/mysql.server stop
以安全模式启动:
$ sudo mysqld_safe --skip-grant-tables
(上面一行是整个命令)
这将是一个持续的命令,直到进程结束,所以打开另一个shell/终端窗口,登录时不需要密码:
$ mysql -u root
mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';
MySQL 5.7及以上版本:
mysql> use mysql;
mysql> update user set authentication_string=password('password') where user='root';
退出MySQL命令行:
mysql> exit
在正常模式下重启MySQL,首先停止安全模式实例:
$ mysqladmin -u root -p shutdown # (when prompted, enter the new password just set)
$ sudo service mysql start
or
$ sudo /usr/local/mysql/support-files/mysql.server start
你的新密码是“password”。
这招对我很管用:
在终端类型上执行如下操作
$ sudo mysql -u root -p
Enter password://直接按Enter
mysql >