我不能以不是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
我尝试从同一台计算机登录。
但是,当我执行以下操作之一时,会出现后面列出的错误。
无法登录到MySQL服务器
mysqli_real_connect():PHP是在没有openssl扩展的情况下构建的,无法发送加密的密码
mysqli_real_connect():(HY000 / 1045):用户'web'@'localhost'的访问被拒绝(使用密码:是)
$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;
我现在有像“用户”,“密码”或“扩展名”之类的行。
cookie
更改为http
$cfg['Servers'][$i]['extension'] = 'mysqli';
行$cfg['Servers'][$i]['user'] = 'root';
和$cfg['Servers'][$i]['password'] = 'myrealrootpassword';
行也许与SSL(我没有SSL)或MySQL扩展有关,因为当我输入错误的密码时,我得到的是MySQL错误而不是“错误密码”错误。但是,root用户可以工作。
我在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中创建新用户。