无法使用外部服务器上的 php 文件连接数据库(mysql)

Posted

技术标签:

【中文标题】无法使用外部服务器上的 php 文件连接数据库(mysql)【英文标题】:Can't connect database (mysql) with php files on external server 【发布时间】:2018-02-11 21:13:05 【问题描述】:

无法将数据库(mysql)与来自外部服务器(godaddy)的以下 php 文件连接起来。警告:mysql_connect() []: 无法连接到 /files/files/db.php 和 index.php 中 (10061) 上的 mysql 服务器 `

<?php 
$conn=mysql_connect("localhost","dbusername","dbpasswd");
$db=mysql_select_db('dbname',$conn);
?>

` 并在 db_config.php

`

<?php
define('DB_USER', "dbusername"); 
define('DB_PASSWORD', "dbpasswd"); 
define('DB_DATABASE', "dbname"); 
define('DB_SERVER', "server address"); // db server
$servername = "url.com";
$username = "dbusername";
$password = "dbpasswd";
$dbname = "dbname";
$conn=  mysql_connect($servername,$username,$password)or die(mysql_error());
   mysql_select_db('dbname',$conn);
?>

`

在 db_connect.php 中

`

<?php
class DB_CONNECT 

    // constructor
    function __construct() 
        // connecting to database
        $this->connect();
    

    // destructor
    function __destruct() 
        // closing db connection
        $this->close();
    

    /**
     * Function to connect with database
     */
    function connect() 
        // import database connection variables
        require_once __DIR__ . '/db_config.php';

        // Connecting to mysql database
        $con = mysql_connect(DB_SERVER, DB_USER, DB_PASSWORD) or die(mysql_error());

        // Selecing database
        $db = mysql_select_db(DB_DATABASE) or die(mysql_error()) or die(mysql_error());

        // returing connection cursor
        return $con;
    

    /**
     * Function to close db connection
     */
    function close() 
        // closing db connection
        mysql_close();
    



?>

`

【问题讨论】:

第一:请不要在新代码中使用mysql_*函数。这些功能在最近的 PHP 版本中不再可用,请改用 mysqliPDO。第二:我在这里看到 3 个单独的数据库连接,哪些不工作?错误 10061 通常表示网络连接被拒绝(即该主机上没有 mysql 服务器正在侦听)。 如果是外部的,你不能使用本地主机,但你需要IP地址,然后有可能被服务器禁止的安全性 【参考方案1】:

这不是您的代码的问题...存在此问题是因为您正在尝试将实时网站与您的 localhost 数据库连接。我不知道如何使用godaddy 解决它,因为我使用MS azure ......但我可以给你一个基本的想法 - 如果你想将一个实时网站与数据库连接,你必须在godaddy 上创建一个数据库。我知道我回答得太晚了

【讨论】:

以上是关于无法使用外部服务器上的 php 文件连接数据库(mysql)的主要内容,如果未能解决你的问题,请参考以下文章

无法使用php连接错误连接到mysql:无法连接到'localhost'(10061)上的MySQL服务器[重复]

外部服务器上的 Zip 文件并在我的服务器上下载 zip

PHP 如何引入另一个服务器上的PHP文件?

解决数据库连接错误 您在wp-config.php文件中提供的数据库用户名和密码可能不正确,或者无法连接到localhost上的数据库服务器,这意味着您的主机数据库服务器已停止工作。

用php怎么样完成从读取一个服务器上的数据库的改变到另外一个服务器上的数据库?

在 Apache 上的 PHP 中的线程之间共享数据