eee*_*zyy 131
感谢@thusharaK我可以在不知道旧密码的情况下重置root密码.
在ubuntu上我做了以下事情:
sudo service mysql stop
sudo mysqld_safe --skip-grant-tables --skip-syslog --skip-networking
Run Code Online (Sandbox Code Playgroud)
然后在新终端中运行mysql:
mysql -u root
Run Code Online (Sandbox Code Playgroud)
并运行以下查询以更改密码:
UPDATE mysql.user SET authentication_string=PASSWORD('password') WHERE User='root';
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)
在MySQL 5.7中,mysql.user表字段中的密码字段已被删除,现在字段名称为'authentication_string'.
退出mysql安全模式并启动mysql服务:
mysqladmin shutdown
sudo service mysql start
Run Code Online (Sandbox Code Playgroud)
tk_*_*tk_ 64
您无法查看哈希密码; 你唯一能做的就是重置它!
停止MySQL:
sudo service mysql stop
Run Code Online (Sandbox Code Playgroud)
要么
$ sudo /usr/local/mysql/support-files/mysql.server stop
Run Code Online (Sandbox Code Playgroud)
以安全模式启动它:
$ sudo mysqld_safe --skip-grant-tables
Run Code Online (Sandbox Code Playgroud)
(上面的行是整个命令)
这将是一个持续的命令,直到该过程完成,因此打开另一个shell /终端窗口,无需密码登录:
$ mysql -u root
mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';
Run Code Online (Sandbox Code Playgroud)
MySQL 5.7及以上版本:
mysql> use mysql;
mysql> update user set authentication_string=password('password') where user='root';
Run Code Online (Sandbox Code Playgroud)
启动MySQL:
sudo mysql start
Run Code Online (Sandbox Code Playgroud)
要么
sudo /usr/local/mysql/support-files/mysql.server start
Run Code Online (Sandbox Code Playgroud)
您的新密码是"密码".
Vla*_*lad 36
MySQL 5.7及更高版本将root保存在MySQL日志文件中.
请试试这个:
sudo grep 'temporary password' /var/log/mysqld.log
Run Code Online (Sandbox Code Playgroud)
lan*_*nzz 17
你找不到它.它存储在一个数据库中,您需要使用root密码才能访问,即使您以某种方式获得了访问权限,也会使用单向哈希进行哈希处理.您可以重置它:http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html
Lok*_*ada 13
请按照以下步骤在Windows系统中重置密码
从任务管理器停止Mysql服务
创建一个文本文件并粘贴以下语句
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,并想知道为什么我无法使用默认密码,以及为什么连复位方法都不起作用。事实证明,在Ubuntu 18上,默认情况下,最新版本的mysql服务器根本不为root用户使用密码身份验证。因此,这意味着无论您将其设置为什么,都不会让您使用它。期望您从特权套接字登录。所以
mysql -u root -p
Run Code Online (Sandbox Code Playgroud)
即使您使用正确的密码,也将根本无法使用!!!无论您输入什么内容,它都会拒绝访问。
相反,您需要使用
sudo mysql
Run Code Online (Sandbox Code Playgroud)
无需输入任何密码即可使用。然后,一旦您需要输入
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Password you want to use';
Run Code Online (Sandbox Code Playgroud)
然后注销,现在该死的东西最终将接受您的密码
除非程序包管理器要求您在安装期间键入root密码,否则默认的root密码为空字符串.要连接到刚安装的服务器,请键入:
shell> mysql -u root --password=
mysql>
Run Code Online (Sandbox Code Playgroud)
要更改密码,请返回unix shell并键入:
shell> mysqladmin -u root --password= password root
Run Code Online (Sandbox Code Playgroud)
新密码是"root".现在连接到服务器:
shell> mysql -u root --password=
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
Run Code Online (Sandbox Code Playgroud)
糟糕,密码已更改.使用新的,root
:
shell> mysql -u root --password=root
...
blah, blah, blah : mysql welcome banner
...
mysql>
Run Code Online (Sandbox Code Playgroud)
答对了!新做有趣的事情
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)
Maurycy
作为其他答案的补充,在cpanel安装中,mysql root密码存储在一个名为的文件中/root/.my.cnf
.(并且cpanel服务会在更改时将其重置,因此此处的其他答案将无济于事)
你可以查看mysql root密码,我已经在mysql 5.5上试过了,所以不知道其他新版本的工作与否
nano ~/.my.cnf
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
465092 次 |
最近记录: |