admin 管理员组文章数量: 887016
codeigniter mysql error,php
php-CodeIgniter:无法使用提供的设置连接到数据库服务器错误消息
我一直使用MySQL驱动程序来正常使用CI。 我想改用MySQL驱动程序,但是一旦更改它(只需在MySQL末尾添加“ i”并添加端口号),我会收到以下错误消息
发生数据库错误
无法使用提供的设置连接到数据库服务器。
文件名:core / Loader.php
行号:232
我的设置如下所示:
$db['default']['hostname'] = $hostname;
$db['default']['username'] = $username;
$db['default']['password'] = $password;
$db['default']['database'] = $database;
$db['default']['dbdriver'] = 'mysqli';
$db['default']['port'] = "3306";
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
where
$hostname = 'localhost';
$username = 'myusernamegoeshere';
$password = 'mypasswordgoeshere';
$database = 'mydatabasenamegoeshere';
我在用着:
CI 2.0.2 php 5.3.4 Apache / 2.2.17(Unix)mysql 5.5.13 mysql.default_port 3306
我做错什么了吗?
谢谢,
13个解决方案
104 votes
我认为,PHP配置有问题。
首先,在./config/database.php末尾使用此脚本调试数据库连接:
...
...
...
echo '
';
print_r($db['default']);
echo '
';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 '
Connected OK:' ;
die( 'file: ' .__FILE__ . ' Line: ' .__LINE__);
然后查看问题所在。
Valeh Hajiyev answered 2020-02-14T18:36:27Z
49 votes
今天,我将这种问题降落在实时服务器中,并解决了更改此行的问题
$db['default']['db_debug'] = TRUE;
至
$db['default']['db_debug'] = FALSE;
imsyedahmed answered 2020-02-14T18:36:51Z
29 votes
对我来说,问题出在php.ini文件中。 mysql.default_socket属性指向一个不存在的目录中的文件。 该属性指向/var/mysql/mysql.sock,但在OSX中,该文件位于/tmp/mysql.sock。
一旦我更新了php.ini中的条目并重新启动了网络服务器,问题就解决了。
ken answered 2020-02-14T18:35:58Z
29 votes
我通过改变解决了这个问题
$db['default']['pconnect'] = TRUE;至$db['default']['pconnect'] = FALSE;
在/application/config/database.php中
kamal answered 2020-02-14T18:37:20Z
17 votes
SET $db['default']['db_debug']设置为FALSE而不是TRUE。
$db['default']['db_debug'] = FALSE;
Bhumi Singhal answered 2020-02-14T18:37:40Z
3 votes
如果仅此而已,您可能没有在PHP配置中安装或启用mysqli驱动程序。
使用phpinfo()或在您的php.ini文件中(extension = php_mysqli ....)检查其是否存在。
Craig A Rodway answered 2020-02-14T18:38:04Z
2 votes
(CI 3)对我来说,有效的方法正在改变:
'hostname' => 'localhost' to 'hostname' => '127.0.0.1'
Shina answered 2020-02-14T18:38:24Z
2 votes
将@Valeh Hajiyev扩展为mysqli驱动程序测试的明确答案:
在./config/database.php末尾使用此脚本调试数据库连接:
/* Your db config here */
$db['default'] = array(
// ...
'dbdriver' => 'mysqli',
// ...
);
/* Connection test: */
echo '
';
print_r($db['default']);
echo '
';echo 'Connecting to database: ' .$db['default']['database'];
$mysqli_connection = new MySQLi($db['default']['hostname'],
$db['default']['username'],
$db['default']['password'],
$db['default']['database']);
if ($mysqli_connection->connect_error) {
echo "Not connected, error: " . $mysqli_connection->connect_error;
}
else {
echo "Connected.";
}
die( 'file: ' .__FILE__ . ' Line: ' .__LINE__);
MarcM answered 2020-02-14T18:38:49Z
1 votes
问题解决了!
我首先在XAMPP中建立了所有网站,然后又将其转移到LAMP(在SUSE安装的LAMP中),出现此错误。
问题在于,不应初始化database.php文件中的这些参数。只需将用户名和密码留空即可。就是这样
(我的第一个and脚的猜测是那是由于mysql的旧版本,因为内置安装附带了旧版本。
Helena answered 2020-02-14T18:39:22Z
0 votes
将$db['default']['dbdriver'] = 'mysql'更改为$db['default']['dbdriver'] = 'mysqli'
Bappi Datta answered 2020-02-14T18:39:42Z
0 votes
就我而言,存储是个问题。 我的硬盘已满...在硬件中腾出一些空间,您的站点将正常运行
Ammad Naeem answered 2020-02-14T18:40:02Z
-1 votes
如果您使用此方法保护服务器安全:[/]
然后得到错误:Code Igniter needs mysql_pconnect() in order to run。
当我意识到服务器上的所有Code Igniter网站都已损坏时,我就弄清楚了,所以这不是本地化的连接问题。
Lawrence answered 2020-02-14T18:40:32Z
-2 votes
我已经解决了 就我而言,我只是更改了配置。 '主机名'成为'本地主机'
$active_group = 'default';
$active_record = TRUE;
$db['default']['hostname'] = 'localhost';
achie answered 2020-02-14T18:40:52Z
本文标签: codeigniter mysql error php
版权声明:本文标题:codeigniter mysql error,php 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1717684401h699545.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论