我似乎无法访问主机服务器的数据库。这是我用来连接它的代码:
$servHost = 'fdb7.biz.nf';
$servPort = '3306';
$servName = '1598934_user';
$servPass = '**********';
$dataTable = 'table';
$connect = @mysql_connect($servHost.':'.$servPort, $servName, $servPass);
$db = @mysql_select_db($dataTable);
if(!$connect || !$db){
die(mysql_error());
}else{
echo 'connected';
}
当我尝试使用这个时,我会得到错误:
Access denied for user '1598934_user'@'%' to database 'table'
我认为它与%
符号有关,但我不知道用什么或如何替换它。服务器不是我的,我正在使用biz.nf来托管我的网站。如有任何建议,不胜感激。
检查数据库中是否存在用户15938934_user。如果它确实存在,请运行以下mysql查询以授予权限。
GRANT ALL PRIVILEGES ON `postsData`.* TO '1598934_user'@'%';
FLUSH PRIVILEGES;
或者,如果您不想授予所有权限,则使用:
GRANT <privileges> ON postsData.* TO '1598934_user'@'%' IDENTIFIED BY 'password';
或使用:
GRANT INSERT, SELECT, DELETE, UPDATE ON postsData.* TO '1598934_user'@'%' IDENTIFIED BY 'password';
这应该给用户特权
此外,如果用户不存在,请执行以下查询:
CREATE USER '1598934_user'@'%' IDENTIFIED BY 'password';
并按照grant privileges查询授予权限。
此外,如果您没有运行上述查询的权限,请使用服务器名称localhost
,并将您的网站内容/文件上载到主机,然后从主机运行。
重置数据库密码,当密码错误时会发生这种情况。