我不知道我的MySQL根密码;我怎么才能知道呢?是否有存储此密码的文件?
我正在跟踪这个链接,但我在本地没有directadmin目录。
我不知道我的MySQL根密码;我怎么才能知道呢?是否有存储此密码的文件?
我正在跟踪这个链接,但我在本地没有directadmin目录。
当前回答
你找不到它。它存储在一个数据库中,您需要根密码才能访问该数据库,即使您以某种方式获得了访问权限,它也会使用单向散列进行散列。您可以重置:如何重置Root用户密码
其他回答
你找不到它。它存储在一个数据库中,您需要根密码才能访问该数据库,即使您以某种方式获得了访问权限,它也会使用单向散列进行散列。您可以重置:如何重置Root用户密码
除了其他答案外,在cpanel安装中,mysql根密码存储在一个名为/root/.my.cnf.的文件中(cpanel服务在更改时将其重置,所以这里的其他答案不会有帮助)
在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
MySQL 5.7及以上版本在MySQL日志文件中保存root。
请试试这个:
sudo grep 'temporary password' /var/log/mysqld.log
系统:
中佐的Linux 7 位于华盛顿市郊1414区
过程:
Open two shell sessions, logging in to one as the Linux root user and the other as a nonroot user with access to the mysql command. In your root session, stop the normal mysqld listener and start a listener which bypasses password authentication (note: this is a significant security risk as anyone with access to the mysql command may access your databases without a password. You may want to close active shell sessions and/or disable shell access before doing this): # systemctl stop mysqld # /usr/sbin/mysqld --skip-grant-tables -u mysql & In your nonroot session, log in to mysql and set the mysql root password: $ mysql mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass'); Query OK, 0 rows affected, 1 warning (0.01 sec) mysql> quit; In your root session, kill the passwordless instance of mysqld and restore the normal mysqld listener to service: # kill %1 # systemctl start mysqld In your nonroot session, test the new root password you configured above: $ mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. ... mysql>