如何找出MySQL的root密码
我无法弄清楚我的MySQL root密码; 我怎么能find这个? 有密码存储的文件吗?
我正在关注这个链接,但是我没有在本地的directadmin目录。
感谢@thusharaK我可以在不知道旧密码的情况下重置root密码。
在Ubuntu的我做了以下几点:
sudo service mysql stop sudo mysqld_safe --skip-grant-tables --skip-syslog --skip-networking
然后在一个新的terminal中运行mysql
mysql -u root
并在更改密码后运行以下查询
UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root'; FLUSH PRIVILEGES;
退出mysql安全模式并通过启动mysql服务
mysqladmin shutdown sudo service mysql start
您无法查看散列的密码; 你唯一能做的就是重置它!
停止MySQL:
sudo service mysql stop
要么
$ sudo /usr/local/mysql/support-files/mysql.server stop
以安全模式启动它:
$ sudo mysqld_safe --skip-grant-tables
(上面的行是整个命令)
这将是一个持续的命令,直到这个过程完成,打开另一个shell /terminal窗口,login没有密码:
$ 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:
sudo mysql start
要么
sudo /usr/local/mysql/support-files/mysql.server start
您的新密码是“密码”。
MySQL 5.7及以上版本在MySQL日志文件中保存根目录。
请试试这个:
sudo grep 'temporary password' /var/log/mysqld.log
你找不到它。 它存储在一个数据库中,您需要root密码才能访问,即使您以某种方式获得访问权限,也会使用单向散列进行散列。 您可以重置它: http : //dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html
除非软件包pipe理器要求您在安装期间inputroot密码,否则默认的root密码是空string。 要连接到新安装的服务器,请键入:
shell> mysql -u root --password= mysql>
要更改密码,请取回unix shell并input:
shell> mysqladmin -u root --password= password root
新密码是“root”。 现在连接到服务器:
shell> mysql -u root --password= ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
糟糕,密码已经改变。 使用新的, root
:
shell> mysql -u root --password=root ... blah, blah, blah : mysql welcome banner ... mysql>
答对了! 新做一些有趣的事情
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | +--------------------+ 3 rows in set (0.00 sec)
Maurycy
按照以下步骤在Windows系统中重置密码
-
停止任务pipe理器的Mysql服务
-
创build一个文本文件并粘贴下面的语句
MySQL 5.7.5及更早版本:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yournewpassword');
MySQL 5.7.6及更高版本:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'yournewpassword';
-
另存为
mysql-init.txt
并放入'C' drive
。 -
打开命令提示符并粘贴以下内容
C:\> mysqld --init-file=C:\\mysql-init.txt
mysql服务器立即安装后,默认的密码是:“ mysql ”(不含引号)
除了其他答案之外,在cPanel安装中,mysql root密码存储在名为/root/.my.cnf
的文件中。 (并且cpanel服务会在更改时重置它,所以这里的其他答案将无济于事)
在MySQL工作的数据文件夹内的“主机名”.err文件中,尝试查找以下列string开头的string:
“为roor @ localhost生成临时密码”
您可以使用
less /mysql/data/dir/hostname.err
然后斜杠命令,然后是你想要查找的string
/"A temporary password"
然后按n,进入下一个结果。
你可以查看mysql的root密码,以及我已经在MySQL 5.5上试过了,所以不知道其他的新版本是否工作正常
nano ~/.my.cnf
该过程根据MySql的版本而变化。 完全按照您所描述的版本进行操作:
-
提示 – 请阅读您的MySql版本的说明页面*
-
在第5步:而不是运行CMD,在您的桌面上创build一个快捷方式调用CDM.exe。 然后右键单击快捷方式并select“以pipe理员身份执行”。
-
在步骤6中:跳过命令的第一个build议版本,并执行第二个命令 – 带有–defaults-file参数的那个
-
一旦执行该命令,如果一切正常,则CMD窗口保持打开,并继续执行步骤6的命令。 只需closures窗口(单击“x”),然后从任务pipe理器强制closuresMySQl。
-
用SQL命令删除文件,然后重新启动MySQL。 密码必须现在改变。
5.0 http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html
5.1 http://dev.mysql.com/doc/refman/5.1/en/resetting-permissions.html
…只需更改链接中的版本(5.5,5.6,5.7)
这对我工作:
在terminal上键入以下内容
$ sudo mysql -u root -p
input密码:// 只需按回车
MySQL的>
您可以更改密码,或者如果您使用Linux,则可以使用encryption的密码。 我觉得这比每次更改密码都要舒适和安全得多。
您当然需要root权限并使用以下命令
cat /etc/psa/.psa.shadow
以上命令将显示encryption的密码,您可以使用该密码以root身份login到Mysql。 下面你可以find我经常使用的解决scheme。
mysql -uadmin -p`cat /etc/psa/.psa.shadow`
转到phpMyAdmin> config.inc.php> $ cfg ['Servers'] [$ i] ['password'] ='';