提示:#2000 无法登录 MySQL 服务器
今天用本机装了个phpMyAdmin,版本3.4.8,想用它来连一台内网服务器上的Mysql,于是乎修改phpMyAdmin配置文件config.inc.php,增加以下代码:
$i++;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['host'] = '192.168.8.14';
$cfg['Servers'][$i]['user'] = 'kkapp';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
保存打开浏览器登录,提示:#2000 无法登录 MySQL 服务器
检查IP,用户名,密码没发现问题
用本机mysql客户端连接可以正常登录,说明网络访问,数据库访问权限都没问题
SSH登录到服务器打开Mysql配置文件发现一行可以的代码:
old_passwords=1
注释之,保存,重启Mysql服务,还是连不上
请教谷歌,终于找到问题所在,原来是从"php 5.3.3起,不再支持使用老的加密码方式连接数据库,这时你仍然可以使用mysql客户端命令来登录,登录后使用"
本机装的是PHP 5.3.10,才会引起上述问题
解决办法:
mysql> update mysql
.user
SET Password
= PASSWORD("") WHERE User
= "kkapp";
mysql> flush privileges;
注意old_passwords=1
这行要注释掉
请根据您的数据库用户名和密码设置!
phpmyadmin #2002 错误
解决 .#2002 无法登录 MySQL 服务器
将config.sample.inc.php复制成config.inc.php
出现这个错误,表示没有连接到数据库。修改config.inc.php文件
代码如下
将$cfg['Servers'][$i]['host'] = 'localhost';
改为$cfg['Servers'][$i]['host'] = '127.0.0.1';
或者
修改 php.ini : mysql.default_socket = /tmp/mysql.sock
说了,我是按如下方法 解决的,仅供参考:
第一步
删除c:windowns下面的my.ini(可以先改成其它的名字也行)
第二步
打开对应安装目录下mysqlbinwinmysqladmin.exe 输入用户名 和密码(也可以忽略此步)
第三步 在dos下 ,进入mysql的bin目录。
例:安装目录为d盘的PC_webservermysqlbin
开始-运行-cmd >_ bH ,/D'
d: //先切换到d盘下
D:>cd PC_webservermysqlbin //通过cd目录进入bin下
然后输入 mysqld-nt -remove 删除服务
接着输入 mysqld-nt -install
第四步 再重新启动下mysql服务
或许出现以下错误情况:phpmyadmin:#1045 无法登录 MySQL 服务器。Access denied for user ‘root’@'localhost’ (using password: YES)
问题原因:这有可能是由于前面设置mysql密码没有成功,所以导致了我们使用设置的mysql root密码无法登陆服务器。
解决方法:这时可以尝试使用mysql 默认的root账号的空密码登陆数据库。
如果使用空密码登陆时又出现:空密码登录被禁止 (参见 允许空密码) 的错误。则要修改/phpmyadmin/libraries/config.default.php 文件,找到下面两行
$cfg['Servers'][$i]['nopassword'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
将两个false改为true,同时设置 $cfg['Servers'][$i]['password'] = '';通过这样设置配置文件后phpmyadmin 就会允许以空密码方式登录mysql数据库了。
若重新以空密码方式登录phpmyadmin有时仍无法登陆,请清除cookie或关闭原来的phpmyadmin 登录窗口,重新使用空密码登录。
若这时候仍然显示空密码登陆被禁止,试试随便输入几个字符当作密码看是否能够登陆成功。
登陆mysql服务器之后尽快将mysql密码在phpmyadmin中修改过来。或者在SSH客户端修改mysql密码:cd /usr/local/mysql/bin
然后执行命令:./mysqladmin -u root -p password
最后在mysql的user表中删除除root以外所有用户。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。