我正在尝试更新系统,但是mysql 5.7失败了。由于身份验证问题,它似乎无法连接。
以下是完整的控制台输出:
Reading package lists... Done
Building dependency tree
Reading state information... Done
mysql-server-5.7 is already the newest version (5.7.23-0ubuntu0.16.04.1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
2 not fully instal
我已经为我的登录系统创建了一个忘记密码更改php函数,它会向忘记密码的用户发送一封电子邮件,并使用散列标记给出一个链接,以便更改他们的密码。一旦用户选择了电子邮件链接,他们就可以更改他们的密码,然后用他们新的哈希密码更新mysql。
在我尝试使用新密码登录之前,代码的每一个方面似乎都工作正常。我收到回音“用户名/密码组合不正确”(在LOGIN.PHP页面上找到)。尝试使用原始密码也会在LOGIN.PHP页面上显示相同的错误。
不能确切地确定为什么我的sql查询不能将更新后的密码与现有用户名匹配并允许登录?
为了便于解析代码,我排除了我认为不是问题所在的部分。我已经包含了5个php文件。
FOR
我有一个全新的MySQL安装在Ubuntu20.04上。
在安装过程中,我为root选择了一个密码。安装之后,我执行了以下操作:
sudo mysql -u root
它没问我密码就登录了。然后:
mysql> USE mysql;
mysql> UPDATE user SET plugin='mysql_native_password' WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> exit;
我以为这样做会在下一次登录时询问我的密码。但是,现在当我尝试登录时,它给了我如下信息:
Fedora release 23 (23)-我安装了phpMyAdmin,我导航到它(,或使用。)。id=root,而我的密码不起作用,那么就得到消息Cannot log in to the MySQL server。
不过,我可以使用sudo mysql -u root -p登录到MySql,然后输入我的密码。在mysql上,我甚至尝试使用以下命令更改我的密码(更改为相同的密码):
UPDATE mysql.user SET Password=PASSWORD("mypasswordhere") WHERE User="root"; and, FLUSH P
我用Nginx在Centos 7上安装了mysql-community-server-8.0.13-1.el7.x86_64,并添加了phpMyAdmin来管理数据库,但我一直从phpMyAdmin获得错误Cannot log in to the MySQL server。我已经尝试了以下几天并一直在挣扎:
更改了位于/etc/phpMyAdmin/config.inc.php上的一些参数(在堆栈溢出中建议使用),如下所示,但没有运气:
$cfg‘’Servers‘’host‘= 'localhost';$cfg’‘Servers’connect_type‘= 's