Phpmyadmin 为什么cPanel即使拥有所有允许的权限也不授予我的用户访问权限?
这几天我都快发疯了。我在cPanel中创建了一个数据库,其中有一个用户,并启用了所有特权复选框 现在,每当我尝试访问我的数据库时,它都不起作用,错误日志显示: PDO异常:用户'Phpmyadmin 为什么cPanel即使拥有所有允许的权限也不授予我的用户访问权限?,phpmyadmin,cpanel,Phpmyadmin,Cpanel,这几天我都快发疯了。我在cPanel中创建了一个数据库,其中有一个用户,并启用了所有特权复选框 现在,每当我尝试访问我的数据库时,它都不起作用,错误日志显示: PDO异常:用户' graphgr1_mhazaa'@'localhost'(使用密码:YES) 我尝试从命令行本地访问数据库 mysql -u myUsername -pMyPassword -h remoteHostIP -D databaseName 结果表明: 错误1045(28000):拒绝访问用户“用户名”@'c-174
graphgr1_mhazaa'@'localhost'(使用密码:YES) 我尝试从命令行本地访问数据库
mysql -u myUsername -pMyPassword -h remoteHostIP -D databaseName
结果表明:
错误1045(28000):拒绝访问用户“用户名”@'c-174-53-152-193.hsd1.mn.comcast.net'(使用密码:是)
我甚至尝试以root用户身份访问数据库
mysql.exe -u root -h remoteHostIp -D databaseName
同样的信息。我很确定我把所有的拼写/名字都正确了,并且在不同的电脑上也试过了。你知道问题出在哪里吗
PDO异常:拒绝用户的SQLSTATE[HY000][1045]访问
graphgr1_mhazaa'@'localhost'(使用密码:YES)
要从cPanel帐户中的脚本连接到cPanel帐户中的数据库,您需要
mysql -u YOUR_USER -p YOUR_DATABASE ## MySQL added User connection, sees only databases it has access to
mysql -u cPanel_USER -p ## cPanel User connection, sees all databases added in your cPanel account
我对此有一点不同的看法 通过在cpanel中生成一个SSH密钥并将其(id_rsa文件)复制到我的Mac上,我在Mac笔记本电脑上使用Sequel Pro访问了我的MySql数据库 除非您将此文件的权限更改为400,否则它将无法工作
chmod 400 filename
然而,一旦Sequel Pro开始工作,我就尝试使用pymsql通过python读取我的数据库
这导致了无穷无尽的问题,并引发了讨论中错误的几种变体
在终端窗口中大量摆弄mysql之后,我放弃了,转而求助于一位本地UNIX专家,他提出了以下解决方案
在终端类型中
ssh -i id_rsa -L 3307:yourcpanel.hosted.xxx:3306 yourcpanelusername@your cpanel.hosted.xxx -N
有关更多信息,请搜索“仅ssh端口转发无外壳”
据我所知,它在Mac上打开了一个本地端口号3307,并使用id_rsa密钥和disallows命令连接到端口3306上的cpanel。一旦这个系统启动并运行
在python代码中,使用一些变量
db = pymysql.connect(host=DB_HOST, user=DB_USER, passwd=DB_PWD, db=DB_NAME, port=DB_PORT)
在哪里
DB_HOST='localhost',DB_USER=您的cpanel数据库用户名,DB_PWD=您的数据库密码,DB_NAME=您的cpanel数据库名称,DB_PORT=3307谢谢!我已经设置了数据库、用户和权限,但我没有为我的IP地址添加授权,所以这可能就是问题所在。我有点困惑我该怎么做。我是否要转到cPanel->remotemysql->addaccesshost并将我的ip地址放在那里?没错。因为MySQL中的通配符是%not*,所以可以使用它来匹配一系列IP。如果您的IP是1.1.1.1,您只需将其添加到远程MySQL(scr:)中即可。您还可以添加1.1.1的任何IP,如1.1.1.%。这将允许从您的IP连接到服务器的MySQL数据库。您仍然需要具有访问数据库权限的用户