我最近从Hostgator购买了一个托管计划,并且使用Cyber​​Duck在站点上放置了一些PHP文件。他们显然已上载,因为当我访问我的域时出现错误:Connection failed: SQLSTATE[28000] [1045] Access denied for user 'root'@'gator4066.hostgator.com' (using password: YES)。我需要连接到我的MySQL数据库,但不确定如何。这是我的database.php文件的外观:

<?php
  $server = 'theServerIPThatHostGatorSentMeInEmail';
  $username = 'root'; // for the database on my PC
  $password = 'myPassword'; // for the database on my PC
  $database = 'auth'; // the name of the database on my PC

  try {
    $conn = new PDO("mysql:host=$server;dbname=$database;", $username, $password);
  } catch(PDOException $e) {
    die("Connection failed: " . $e->getMessage());
  }
?>


我不确定是否需要使用其他username/password/databaseName

我只想提一下,所有这些都可以与localhost一起使用,因此除了通过域进行连接之外,所有内容都已正确设置)。

最佳答案

许多hostgator帐户使您的php和Web服务器与MySQL服务器在同一台计算机上运行。而且,作为hostgator客户,您极不可能使用MySQL root帐户。它可以让您查看其他客户的数据。

Hostgator在每台计算机上都有很多客户,可以共享它。 (可能太多,但这是另一天的问题。)

因此,您的配置可能如下所示:

 $server = 'localhost';
 $username = 'SOMETHING-SET-UP-IN-YOUR-CONTROL-PANEL';
 $password = 'SOMETHING-SET-UP-IN-YOUR-CONTROL-PANEL';
 $database = 'yourCustomerName-SOMETHING';

09-04 10:52