我无法为我的系统配置数据库缓存。我已经尝试了互联网上可用的所有配置。请帮助我。
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => 'root',
'password' => '123',
'database' => 'test',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => TRUE,
'cache_on' => TRUE,
'cachedir' => 'application/cache',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
下面是我收到的错误信息
遇到未捕获的异常
类型:异常
消息:已配置的数据库连接已启用缓存。中止。
文件名:C:\wamp\www\test\system\libraries\Session\drivers\Session_database_driver.php
最佳答案
通过三个步骤启用缓存:
1) 在您的服务器上创建一个可写目录,用于存储缓存文件。
2) 在 application/config/database.php 文件中设置缓存文件夹的路径。 例如:
$db['default']['hostname'] = 'XXXXX';
$db['default']['username'] = 'XXXXX';
$db['default']['password'] = 'XXXXX';
$db['default']['database'] = 'XXXXX';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = 'XXX';
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = TRUE;
$db['default']['cachedir'] = 'application/cache';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
3) 通过在 application/config/database.php 文件中设置首选项全局启用缓存功能,或者 如下所述手动启用/禁用缓存。
// Turn caching on
$this->db->cache_on();
// Turn caching off for this one query
$this->db->cache_off();
此外,确保您的目录是可写的(如果您使用的是 Mac 或 Linux)
sudo chmod 777 -R application/cache
希望对你有用。
关于php - codeigniter 数据库缓存配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39203032/