phpmyadmin:无法使用非root用户登录(用户的访问被拒绝+ PHP是在没有openssl扩展的情况下构建的,无法发送加密的密码)

时间:2018-08-12 15:33:53

标签: mysql phpmyadmin

问题

我不能以不是root用户的用户身份登录phpmyadmin。

说明

我安装了带有XAMPP的Web服务器,带有Community-Installer的MySQL-Server 8.0.12和phpMyAdmin 4.8.2(PHP 7.2.8)。

以root用户身份登录phpmyadmin可以正常工作。

我在MySQL Workbench中添加了一个新用户:

  

用户名:web
     身份验证类型:标准
     主机匹配限制:localhost
     密码:strongpassword

我尝试从同一台计算机登录。

但是,当我执行以下操作之一时,会出现后面列出的错误。

  • 尝试使用错误的密码或错误的用户名登录
  • 尝试登录非root用户(即使密码正确)
  

无法登录到MySQL服务器

     

mysqli_real_connect():PHP是在没有openssl扩展的情况下构建的,无法发送加密的密码

     

mysqli_real_connect():(HY000 / 1045):用户'web'@'localhost'的访问被拒绝(使用密码:是)

从我的config.inc.php中提取

$cfg['blowfish_secret'] = 'longstringwithmanyletters';
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;

我现在有像“用户”,“密码”或“扩展名”之类的行。

我已经尝试使用搜索功能

  1. 我只有一个MySQL打开
  2. 我将localhost更改为127.0.0.1
  3. 我将auth_type从cookie更改为http
  4. 我添加了$cfg['Servers'][$i]['extension'] = 'mysqli';
  5. 我添加了$cfg['Servers'][$i]['user'] = 'root';$cfg['Servers'][$i]['password'] = 'myrealrootpassword';
  6. 我多次删除和编辑了新用户(在root用户的phpmyadmin和MySQL Workbench中)
  7. 我尝试了phpmyadmin 5.0+快照

我的想法

也许与SSL(我没有SSL)或MySQL扩展有关,因为当我输入错误的密码时,我得到的是MySQL错误而不是“错误密码”错误。但是,root用户可以工作。

编辑#1

我在config.inc.php中添加了以下代码:

$cfg['Servers'][$i]['ssl'] = true;

现在不再显示错误“ mysqli_real_connect():PHP是在没有openssl扩展的情况下构建的,无法发送加密的密码”。其他错误仍然存​​在。

可能属于此问题的不同问题

当我尝试在phpmyadmin界面(用户帐户>添加用户帐户)中创建用户时,会创建该用户,但没有任何密码,并且出现以下错误:

  

1064-您的SQL语法有错误;在第1行的'REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_'附近检查与您的MySQL服务器版本相对应的手册以使用正确的语法

SQL代码:

CREATE USER 'peter'@'localhost' IDENTIFIED WITH caching_sha2_password AS '***';
GRANT USAGE ON *.* TO 'peter'@'localhost' REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;

这就是为什么我在MySQL Workbench中创建新用户。

0 个答案:

没有答案