【问题标题】:Database connection error for set up existing CodeIgniter设置现有 CodeIgniter 的数据库连接错误
【发布时间】:2014-10-01 20:13:54
【问题描述】:

我从服务器下载了 CodeIgniter 项目,我想在我的 localhost 中运行它,运行时出现错误。有谁知道是什么问题?我在 Mac 上使用了 MAMP。

这是我的数据库错误:

ErrorException [致命错误]:无法使用提供的设置连接到您的数据库服务器。 / 文件名:core/Loader.php / 行号:346

这里是database.php

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

$active_group = ENVIRONMENT;
$active_record = TRUE;

$db['development']['hostname'] = 'localhost';
$db['development']['username'] = 'fake';
$db['development']['password'] = 'fake';
$db['development']['database'] = 'bmgr';
$db['development']['dbdriver'] = 'mysqli';
$db['development']['dbprefix'] = '';
$db['development']['pconnect'] = TRUE;
$db['development']['db_debug'] = TRUE;
$db['development']['cache_on'] = FALSE;
$db['development']['cachedir'] = '';
$db['development']['char_set'] = 'utf8';
$db['development']['dbcollat'] = 'utf8_general_ci';
$db['development']['swap_pre'] = '';
$db['development']['autoinit'] = TRUE;
$db['development']['stricton'] = FALSE;

$db['staging']['hostname'] = 'localhost';
$db['staging']['username'] = 'fake';
$db['staging']['password'] = 'fake';
$db['staging']['database'] = 'bmgr1';
$db['staging']['dbdriver'] = 'mysqli';
$db['staging']['dbprefix'] = '';
$db['staging']['pconnect'] = TRUE;
$db['staging']['db_debug'] = TRUE;
$db['staging']['cache_on'] = FALSE;
$db['staging']['cachedir'] = '';
$db['staging']['char_set'] = 'utf8';
$db['staging']['dbcollat'] = 'utf8_general_ci';
$db['staging']['swap_pre'] = '';
$db['staging']['autoinit'] = TRUE;
$db['staging']['stricton'] = FALSE;

【问题讨论】:

  • 您似乎没有更改默认数据库设置。你的数据库会有一个用户名和密码——你安装了 MySQL 吗?如果是这样,您可以通过 phpMyAdmin 创建用户,如果您愿意,也可以在控制台上创建。
  • @halfer 我使用了 MAMP 我应该使用 MySQL 吗?
  • @RahilWazir 我没有重复我在它没有帮助之前看到它,如果你有建议搜索以找到问题,请告诉我其他明智的我已经检查了 stackoverflow 答案
  • (顺便说一句,使用 root 凭据并不理想,但由于它是一台开发机器,它也不可怕。我建议您搜索如何创建新的 MySQL 用户 - 您可以在phpMyAdmin,正如我上面所说的)。

标签: php mysql database codeigniter mysqli


【解决方案1】:

您根本没有连接到 MySQL 服务器。请确保您的机器上安装了 MySQL。其次,检查 MySQL 服务是否正在运行。第三,确保您在Database.php文件中填写的访问信息。

【讨论】:

  • 我用过 Mamp 我还需要 MySQL 吗?
  • MySQL 内置于 Wamp 中,但您需要检查 MySQL 服务是否通过 Wamp 运行。搜索 Wamp Tray 图标 ,如果它不是绿色的,则表示您的一项服务无法正常工作。点击它,然后点击(启动所有服务)
【解决方案2】:

无意冒犯,只是出于我的好奇,您的数据库是否位于同一台服务器上?我看到你使用'localhost',但数据库也可能在另一台机器上。我会使用终端仔细检查用户/密码(从提示中使用 MySQL,连接,使用'bmgr',从表中选择)。如果这有效,则意味着您的文件未正确编辑。如果不是,您可能指向错误的机器和/或您有防火墙问题和/或用户权限问题

【讨论】:

    猜你喜欢
    • 2013-08-28
    • 2016-07-04
    • 1970-01-01
    • 1970-01-01
    • 2014-04-27
    • 2017-10-21
    • 2011-10-21
    • 2014-08-24
    • 1970-01-01
    相关资源
    最近更新 更多