请不要将此标记为重复我无法在任何地方找到答案。
我通过XAMPP通过mysql连接不断出现以下错误,我不知道该怎么做:
这是config.inc.php中的代码
<?php
/*
* This is needed for cookie based authentication to encrypt password in
* cookie
*/
$cfg['blowfish_secret'] = 'xampp'; /* YOU SHOULD CHANGE THIS FOR A MORE
SECURE COOKIE AUTH! */
/*
* Servers configuration
*/
$i = 0;
/*
* First server
*/
$i++;
/* Authentication type and info */
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['AllowNoPassword'] = true;
$cfg['Lang'] = '';
/* Bind to the localhost ipv4 address and tcp */
$cfg['Servers'][$i]['host'] = '127.0.0.1';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
/* User for advanced features */
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = '';
/* Advanced phpMyAdmin features */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
$cfg['Servers'][$i]['relation'] = 'pma__relation';
$cfg['Servers'][$i]['table_info'] = 'pma__table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma__column_info';
$cfg['Servers'][$i]['history'] = 'pma__history';
$cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
$cfg['Servers'][$i]['tracking'] = 'pma__tracking';
$cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
$cfg['Servers'][$i]['recent'] = 'pma__recent';
$cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
$cfg['Servers'][$i]['users'] = 'pma__users';
$cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
$cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
$cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
$cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
$cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
$cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
$cfg['Servers'][$i]['favorite'] = 'pma__favorite';
/*
* End of servers configuration
*/
?>
我已经从命令行重置了MySql的密码两次,并将对上面代码的更改添加到php.ini文件中,但每次都会返回错误。有什么帮助吗?
答案 0 :(得分:11)
你需要在mysql中创建用户“pma”或更改这一行(mysql的用户apassword):
int x = 0;
while(x < arr.length - 3) {
arr2[x+3] = arr[x+0];
arr2[x+2] = arr[x+3];
arr2[x+1] = arr[x+2];
arr2[x+0] = arr[x+1];
x +=4;
}
while(x < arr.length) {
arr2[x] = arr[x];
x++;
}
答案 1 :(得分:6)
将此行添加到文件xampp\phpMyAdmin\config.inc
:
$cfg['Servers'][$i]['port'] = '3307';
在这里,我的端口是3307
,您可以将其更改为您的。
答案 2 :(得分:5)
将以下行添加到文件=POWER(AGGREGATE(6,5,O6:O22 + 1),1/AGGREGATE(2,5,O6:O22 + 1)) - 1
:
xampp\phpMyAdmin\config.inc
答案 3 :(得分:3)
我通过将行skip-grant-tables
添加到 my.ini 中来解决了这个问题:
# The MySQL server
[mysqld]
skip-grant-tables
port= 3306
...
在XAMPP控制面板下> “ MySQL”部分> 配置> my.ini
答案 4 :(得分:2)
我在文件 config.inc.php 中更改了
$cfg['Servers'][$i]['host'] = '127.0.0.1';
到
$cfg['Servers'][$i]['host'] = 'localhost';
它奏效了!
答案 5 :(得分:2)
紧接在以下时间之后,您在配置中定义的controluser的连接失败:
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'you_password';
答案 6 :(得分:2)
Linux / Ubuntu:
如果通过apt安装了phpmyadmin:
sudo apt-get install phpmyadmin php-mbstring
可以检查/etc/phpmyadmin/config-db.php
来更改用户凭据。
$dbuser='pma';
$dbpass='my_pass';
$basepath='';
$dbname='phpmyadmin';
$dbserver='localhost';
$dbport='3306';
$dbtype='mysql';
答案 7 :(得分:2)
我刚刚在MAC上设置了我的XAMPP并遇到了同样的麻烦。我刚修好了。 目前尚不清楚您正在使用哪种操作系统,但您需要运行XAMPP安全性。你表明你已经做到了,但无论如何它都是MAC
sudo /Applications/XAMPP/xamppfiles/xampp security
根据您提出的问题设置密码。
在你的phpmyadmin中导入“create_tables.sql”..可以在./phpmyadmin/sql文件夹中找到。
接下来打开config.inc.php
文件夹中的./phpmyadmin
文件。
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'you_password';
确保注销并登录以反映phpmyadmin
中的更改答案 8 :(得分:1)
聚会可能会迟到-同样,此答案适用于 LAMP用户,他们是像我一样从Google到此话题的。
基本上,问题在于PMA试图使用不存在的用户连接到SQL。
在/etc/phpmyadmin/config-db.php中,您将找到2个变量:$ dbuser和$ dbpass。 这些指定了PMA尝试连接的MySQL用户和密码。
现在,使用有效的用户名/密码连接(如果从本地主机连接,则使用“ root”),创建具有全局特权的新用户(例如-%PMA User%以及密码%Some Random Password%),然后在上述文件集中:
$ dbuser =%PMA用户%;
$ dbpass =%一些随机密码%;
您还可以在此更改其他内容,例如服务器地址($ dbserver),端口($ dbport,这可能不是计算机上的默认端口)等。
答案 9 :(得分:1)
在终端中,以root用户身份登录MySQL。首次安装MySQL时,您可能已经创建了root密码,或者密码可能为空,在这种情况下,您只需要在提示输入密码时按ENTER键即可。
sudo mysql -p -u root
现在使用您选择的用户名添加一个新的MySQL用户。在此示例中,我们将其称为pmauser(适用于phpmyadmin用户)。确保用您自己的密码替换这里的password_here。您可以在此处生成密码。这里的%符号指示MySQL允许该用户从任何地方远程登录。如果要提高安全性,可以用IP地址代替。
CREATE USER 'pmauser'@'%' IDENTIFIED BY 'password_here';
现在,我们将为新用户授予超级用户特权。
GRANT ALL PRIVILEGES ON *.* TO 'pmauser'@'%' WITH GRANT OPTION;
然后转到config.inc.php(在ubuntu中为/etc/phpmyadmin/config.inc.php)
/ *高级功能用户* /
$cfg['Servers'][$i]['controluser'] = 'pmauser';
$cfg['Servers'][$i]['controlpass'] = 'password_here';
答案 10 :(得分:1)
我的默认3306端口正在使用中,因此我将其更改为8111,然后出现此错误。我已经通过添加
对其进行了修复"nsis": {
"deleteAppDataOnUninstall": true
},
进入config.inc.php。如果您使用其他端口号,请设置您的端口号。希望对您有帮助!
答案 11 :(得分:1)
我在全新安装VestaCP时遇到了相同的错误。我按照this video上的说明解决了这些问题。
答案 12 :(得分:1)
此错误是由/usr/share/phpmyadmin/libraries/sql.lib.php中的一行代码引起的。
似乎当我使用apt安装phpMyAdmin时,存储库中的版本(phpMyAdmin v4.6.6)与PHP 7.2不完全兼容。官方网站上有一个较新的版本(截至撰写时为v4.8),该版本解决了PHP 7.2的这些兼容性问题。
您可以下载最新版本并手动安装它,或者等待存储库更新为新版本。
或者,您可以对sql.lib.php进行少量更改以修复错误。
首先,在编辑之前备份sql.lib.php。
1端: sudo cp /usr/share/phpmyadmin/libraries/sql.lib.php /usr/share/phpmyadmin/libraries/sql.lib.php.bak
2-编辑sql.lib.php。使用vi:
sudo vi /usr/share/phpmyadmin/libraries/sql.lib.php 使用nano:
sudo nano /usr/share/phpmyadmin/libraries/sql.lib.php 按CTRL + W(对于nano)或? (对于vi / vim)并搜索(count($ analyzed_sql_results ['select_expr'] == 1)
用((count($ analyzed_sql_results ['select_expr'])== 1)替换它
保存文件并退出。 (按CTRL + X,按Y,然后按ENTER(对于nano用户/按ESC,然后键入:wq,然后按ENTER)
答案 13 :(得分:1)
考虑将主机条目127.0.0.1
更改为localhost
甚至更改服务器的IP地址。
$cfg['Servers'][$i]['host']
答案 14 :(得分:0)
如果您的端口是3307(基于端口)
在i ++之后,在xampp \ phpMyAdmin \ config.inc中添加此行
$cfg['Servers'][$i]['port'] = '3307';
答案 15 :(得分:0)
我正在使用UniServer零XIV 13.x.x UniController XIV V2.3.1:
在命令行中,我这样做了:
mysql> CREATE USER 'pmauser'@'%' IDENTIFIED BY 'MyPasswordHere!';
Query OK, 0 rows affected (0.07 sec)
mysql> GRANT ALL PRIVILEGES ON *.* TO 'pmauser'@'%' WITH GRANT OPTION;
Query OK, 0 rows affected (0.02 sec)
然后我去C:\...\wamp\ZeroXIV_unicontroller_2_3_1\UniServerZ\home\us_opt1\config.inc.php
并修改了文件以使其具有以下内容:
/* PMA User advanced features */
//////////$cfg['Servers'][$i]['controluser'] = 'pma';
//////////$cfg['Servers'][$i]['controlpass'] = $password;
$cfg['Servers'][$i]['controluser'] = 'pmauser';
$cfg['Servers'][$i]['controlpass'] = 'MyPasswordHere!';
我重新启动了Apache和MySQL。错误不见了!
答案 16 :(得分:0)
在浏览器中清除站点数据。它将被修复。有时,当您运行代理,vpn或其他程序时,会发生此错误。
答案 17 :(得分:0)
更改端口号。我遵循了这些步骤,它对我有用
XAMPP 中的端口号可以通过以下 5 个步骤轻松更改:
第一步:停止xampp服务器,如果它已经在运行。(避免崩溃)
第 2 步:以管理员身份运行记事本并打开这 3 个文件:
xampp/properties.ini
xampp/mysql/bin/my.ini
xampp/php/php.ini
第 3 步:按 ctrl+F 并将所有 3306(端口号)替换为 3308(可以是 3307 或 3309 之类的任何内容)。(使用 ctrl+F 这样您就不会错过任何未更改的 3306 端口。否则它不会工作)
第 4 步:保存所有文件。
第 5 步:现在重新启动 apache 和 mysql。它会起作用:)