简体   繁体   English

Ubuntu上所有帐户的MySQL访问被拒绝,但是PHPMyAdmin可以正常工作吗?

[英]MySQL access denied for all accounts on Ubuntu, yet PHPMyAdmin works fine?

I have just set up an Ubuntu web server (I'm new to Linux) and after many issues, I have finally got round to setting my website up. 我刚刚设置了一个Ubuntu Web服务器(我是Linux的新手),在经历了很多问题之后,我终于可以设置我的网站了。 However, I cannot connect to the local database using either the IP address or 'localhost'. 但是,我无法使用IP地址或“ localhost”连接到本地数据库。 PHPMyAdmin works absolutely fine, but I can't connect to mysql even when I use the same access details as PHPMyAdmin. PHPMyAdmin可以正常工作,但是即使使用与PHPMyAdmin相同的访问详细信息,我也无法连接到mysql。

I am connecting with the following PHP code (which worked fine on my laptop and on my other server): 我正在连接以下PHP代码(在便携式计算机和其他服务器上正常运行):

mysqli_connect($server, $username, $password, $database);

I have created a brand new account and granted full permissions to it, but with no luck. 我创建了一个新帐户,并授予了该帐户的全部权限,但是没有运气。

If I use the IP address to connect, I get the following error: 如果使用IP地址进行连接,则会出现以下错误:

Not connected : Can't connect to MySQL server on '(ip address)' (111)

If I use 'localhost', I get the following error: 如果使用“ localhost”,则会出现以下错误:

Not connected : Access denied for user 'newuser'@'localhost' (using password: YES)

I am 100% sure the password is correct and, seeing as PHPMyAdmin works fine, I am sure the MySQL service is running. 我100%确保密码正确,并且由于PHPMyAdmin正常运行,因此我确定MySQL服务正在运行。

Any help would be appreciated! 任何帮助,将不胜感激!

EDIT : SELECT * FROM mysql.User; 编辑:SELECT * FROM mysql.User;

localhost root *049124FA19B22B4F6343D5C6FB5E31F710CA3AF7 Y Y Y Y Y Y Y Y Y Y Y Y‌​ Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0  
ns3367936 root *049124FA19B22B4F6343D5C6FB5E31F710CA3AF7 Y Y Y Y Y Y Y Y Y Y Y Y‌​ Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0
127.0.0.1 root *049124FA19B22B4F6343D5C6FB5E31F710CA3AF7 Y Y Y Y Y Y Y Y Y Y Y Y‌​ Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0 
::1 root *049124FA19B22B4F6343D5C6FB5E31F710CA3AF7 Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y‌​ Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0
localhost N N N N N N N N N N N N N N N N N N N N N N N N N N N N N 0 0 0 ‌​0 NULL 
ns3367936.ip-37-187-88.eu N N N N N N N N N N N N N N N N N N N N N N N N N N ‌​N N N 0 0 0 0 NULL 
localhost debian-sys-maint *7866534019D21D9BA648FD769CFAAD256D2F7438 Y Y Y Y Y Y‌​ Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y N 0 0 0 0 NULL 
localhost phpmyadmin *049124FA19B22B4F6343D5C6FB5E31F710CA3AF7 N N N N N N N N N‌​ N N N N N N N N N N N N N N N N N N N N 0 0 0 0 NULL     
localhost newuser *049124FA19B22B4F6343D5C6FB5E31F710CA3AF7 Y Y Y Y Y Y Y Y Y Y ‌​N Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0 NULL 

You get the error while trying to login from 127.0.0.1 because you have not created an account for 'newuser' that is allowed access MySQL from an ip address of 127.0.0.1. 在尝试从127.0.0.1登录时遇到错误,因为尚未为'newuser'创建帐户,该帐户无法从127.0.0.1的IP地址访问MySQL。

See your 'root' accounts for example. 例如,请参见您的“ root”帐户。

There are 4 accounts for 'root' ie root@localhost , root@127.0.0.1 , root@::1 and root@ns3367936 . 'root'有4个帐户,即root@localhostroot@::1 root@127.0.0.1root@::1root@ns3367936

A MySQL account requires the Username and a host. MySQL帐户需要用户名和主机。 You only have 'newuser@localhost` and you need newuser@127.0.0.1 as well, and maybe root@::1 also if you have IPV6 running 您只有'newuser @ localhost'并且也需要newuser@127.0.0.1,如果您正在运行IPV6,也可能需要root @ :: 1

Of course you coudl also edit the existing 'newuser' account and wilcard the host so that that user can login from any host. 当然,您还可以编辑现有的'newuser'帐户并对主机进行通配符操作,以便该用户可以从任何主机登录。

Host in this case I always find is a misleading name, in fact it means the location that the user is trying to login from. 在这种情况下,我总是会发现主机名称是一个令人误解的名称,实际上,它表示用户尝试从中登录的位置。 So if you wanted to allow the 'newuser' account to login from a remote location like home, you could also add a newuser@11.22.33.44 account, assuming your home IP address was 11.22.33.44 因此,如果您想允许“ newuser”帐户从诸如home之类的远程位置登录,您还可以添加一个newuser@11.22.33.44帐户,假设您的家庭IP地址为11.22.33.44。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 PhpMyAdmin 访问被拒绝 #2002 Ubuntu,Lampp(Xampp 为 Z1D41C853AE29D8C65B4604FZ) - PhpMyAdmin Access Denied #2002 Ubuntu, Lampp ( Xampp For ubuntu ) Xampp访问被拒绝phpmyadmin未连接到MySQL - Xampp Access Denied phpmyadmin not connecting to MySQL 在 ubuntu 上安装 phpmyadmin 后,用户“root”@“localhost”的访问被拒绝 - Access denied for user 'root'@'localhost' after installing phpmyadmin on ubuntu php中的mysql语法错误,输入phpmyadmin时工作正常 - mysql syntax errors in php, Works fine when input into phpmyadmin Laravel中的MySQL Access冲突可在phpmyadmin中使用 - MySQL Access violation in Laravel that works in phpmyadmin SQL查询可在PHPMyAdmin中正常工作,但不适用于mysql_query - SQL Query works fine in PHPMyAdmin but not with mysql_query 神秘的MYSQL语法错误-在phpMyadmin中工作正常,不在页面上 - Mysterious MYSQL syntax error - works fine in phpMyadmin, not on page mysql_query 不返回任何内容,但查询在 phpMyAdmin 中工作正常 - mysql_query does not return anything but the query works fine in phpMyAdmin 使用PHP拒绝访问mysql DB,但可以使用phpmyadmin和在命令行上登录 - ACCESS DENIED to mysql DB with PHP but can login with phpmyadmin and on the command line mysql排序规则适用于phpmyadmin,但不适用于sql - mysql collation is fine for phpmyadmin but not for sql
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM