что препятствует подключению PHP к моей базе данных MySQL?

[Обновлено ниже]

У меня возникла проблема с подключением к базе данных MySQL с использованием стека LAMP от Bitnami. Это код, который я использовал для подключения на сервере с общим хостингом, где я первоначально размещал базу данных:

DEFINE ('DB_USER', 'username'); DEFINE ('DB_PASSWORD', 'password'); DEFINE ('DB_HOST', 'localhost'); DEFINE ('DB_NAME', 'database'); if ($dbc = mysql_connect (DB_HOST, DB_USER, DB_PASSWORD)) { // Make the connnection. if (!mysql_select_db (DB_NAME)) { // If it can't select the database. // Handle the error. trigger_error("Could not select the database!\n<br />MySQL Error: " . mysql_error()); exit(); } // End of mysql_select_db IF. } else { // If it couldn't connect to MySQL. trigger_error("Could not connect to MySQL!\n<br />MySQL Error: " . mysql_error()); exit(); } // End of $dbc IF. 

Запустив это на моем сервере Bitnami, я не получаю ответа (даже сообщение об ошибке). (PHP работает нормально.)

Я тогда попытался

 <?php $link = mysql_connect('localhost', 'username', 'password'); if (!$link) { die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; mysql_close($link); ?> 

и получил

     Could not connect: Access denied for user 'username'@'localhost' (using password: YES) 

    эта комбинация имени пользователя и пароля определенно существует и (насколько я могу судить) имеет доступ к соответствующей базе данных. Мне интересно, что я делаю неправильно, и почему исходный скрипт не создает ошибку (или подключается).

    Обновить:

    Я последовал предложению Майкла ниже и смог подключиться. Я хотел воспроизвести проблему, поэтому я удалил этого пользователя, а затем создал пользовательский тестостерон через

     CREATE USER 'testuser'@'%' IDENTIFIED BY '***'; GRANT SELECT , INSERT , UPDATE , DELETE , FILE ON * . * TO 'testuser'@'%' IDENTIFIED BY '***' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ; 

    Затем, следуя предложению Майкла, я казнил

     GRANT ALL PRIVILEGES ON test . * TO testuser@localhost IDENTIFIED BY 'password' 

    но я снова получаю

     Could not connect: Access denied for user 'testuser'@'localhost' (using password: YES) 

    (Это не работает, если я использую «%» или «localhost»)

    это то, что привилегии выглядят для testuser в phpmyadmin

     Database Privileges Grant Table-specific privileges test ALL PRIVILEGES No No Edit Privileges 

    Related of "что препятствует подключению PHP к моей базе данных MySQL?"