关于php:MySQL数据库连接适用于Live Server,但不适用于Test Server

MySQL database connection works on Live Server, but not on Test Server

我有一个特殊的情况,数据库连接在实时服务器上工作,但不在我的本地计算机上。

我有以下连接脚本来访问我的本地计算机(运行WAMP)和实时服务器上的数据库:

1
2
3
4
5
6
7
8
9
function GetGlobalConnectionOptions()
{
    return array(
      'server' => 'localhost',
      'port' => '3306',
      'username' => 'sample_username',
      'password' => 'sample_password',
      'database' => 'sample_database'
);

我可以很好地连接到实时服务器数据库。 但是,我无法连接到测试计算机上的localhost数据库。 这是我收到的错误:

1
2
Could not connect to localhost:
Access denied for user ''@'localhost' to database 'sample_database'

我不明白它在我的localhost上是如何工作的。 另外,我担心用户是''@ localhost'而不是sample_username @ localhost。 可能这是问题的一部分,但我被困住了。 任何建议将不胜感激。

仅供参考我在每个数据库中都设置了两个用户名,并授予了所有权限。


在标准安装中,localhost上的用户必须具有显式授权。 因此,用户@%具有访问权限是不够的,它必须是user@localhost。 作为管理员,输入grant all privileges on * to user@localhost identified by 'password'; flush privileges;