【问题标题】:Localhost connecting but database not connecting with Wamp本地主机连接但数据库未与 Wamp 连接
【发布时间】:2019-07-14 01:01:53
【问题描述】:

在 localhost 上使用 wamp 服务器时,一切正常。然后我碰巧点击了 wamp 图标,可能点击了一些配置设置。发生的有点快,所以不记得到底发生了什么(只是随机点击按钮)但我想当按钮被点击时我在这个菜单上。

之后 Wamp 服务器重新启动,从那时起我无法使用我的 CodeIgniter 项目连接到数据库。 当我尝试打开一个项目时,它会抛出这个错误

当我尝试调试我的代码以验证我的 CodeIgniter 项目文件之一(在 config/database.php 文件中)中的问题时。 我把这段代码放上来就知道是什么问题了。

    echo '<pre>';
  print_r($db['default']);
  echo '</pre>';

  echo 'Connecting to database: ' .$db['default']['database'];
  $dbh=mysql_connect
  (
    $db['default']['hostname'],
    $db['default']['username'],
    $db['default']['password'])
    or die('Cannot connect to the database because: ' . mysql_error());
    mysql_select_db ($db['default']['database']);

    echo '<br />   Connected OK:'  ;
    die( 'file: ' .__FILE__ . ' Line: ' .__LINE__); 

之后,显示了无法连接数据库的原因。这是它现在显示的内容。

什么是可能的解决方案?

【问题讨论】:

  • 尝试将主机名设置为 127.0.0.1

标签: mysql database codeigniter database-connection


【解决方案1】:

您是否尝试通过 phpMyAdmin 连接到您的数据库?有用吗?

很难说你在那里做了什么,但为了节省时间,我建议你:

通过 phpMyAdmin 连接导出数据库,重新安装 WAMP 并放回数据库。

【讨论】:

  • 是的,我可以通过 phpMyAdmin 查看我的所有数据库。启动 Wamp 时显示绿色,表示一切正常。
  • 我认为备份所有数据库和源代码并重新安装 wamp 可能是最好的选择
【解决方案2】:

检查以下步骤,会有帮助:

当您只使用“localhost”时,MySQL 客户端库会尝试使用 Unix 域套接字而不是 TCP/IP 连接进行连接。错误告诉您,名为 MySQL 的套接字不能用于建立连接,可能是因为它不存在(错误号 2)。

来自 MySQL 文档:

在 Unix 上,MySQL 程序对主机名 localhost 进行特殊处理,与其他基于网络的程序相比,这种方式可能与您所期望的不同。对于到 localhost 的连接,MySQL 程序尝试使用 Unix 套接字文件连接到本地服务器。即使给出 --port 或 -P 选项来指定端口号,也会发生这种情况。要确保客户端与本地服务器建立 TCP/IP 连接,请使用 --host 或 -h 指定主机名值 127.0.0.1,或本地服务器的 IP 地址或名称。您还可以使用 --protocol=TCP 选项显式指定连接协议,即使对于 localhost 也是如此。

有几种方法可以解决这个问题。

您可以只使用 TCP/IP 而不是 Unix 套接字。

您可以在连接时使用 127.0.0.1 而不是 localhost。

不过,Unix 套接字可能会更快、更安全地使用。您可以更改 php.ini 中的套接字:打开 MySQL 配置文件 my.cnf 以查找 MySQL 创建套接字的位置,并将 PHP 的 mysqli.default_socket 设置为该路径。在我的系统上是 /var/run/mysqld/mysqld.sock。

打开连接时直接在PHP脚本中配置socket。例如:

$db = new MySQLi('localhost', 'kamil', '***', '', 0, '/var/run/mysqld/mysqld.sock')

【讨论】:

    猜你喜欢
    • 2016-08-25
    • 2021-06-11
    • 2016-01-01
    • 2019-03-25
    • 2013-03-23
    • 2011-09-08
    • 1970-01-01
    • 2019-04-25
    • 1970-01-01
    相关资源
    最近更新 更多