数据配置
module的配置文件在项目根目录下的config/db.config.php文件中, 一个简单的数据库配置文件如下:
/**
* mysql
*/
$mysql_link = array(
'host' => '127.0.0.1',
'port' => '3306',
'user' => 'root',
'prefix' => 'cp_',
'pass' => '123456',
'charset' => 'utf8',
);
$db = $mysql_link;
$db['name'] = 'test';
return array(
'mysql' => array(
'db' => $db,
)
);
配置文件返回一个二维数组, 数组的key表示数据连接类型. 同一个数据连接类型下可以配置多个值. 同一数据连接类型下的key表示名称, value表示值
配置多个数据库
在项目中, 我们可能需要配置多个数据库, 如下:
/**
* mysql
*/
$mysql_link = array(
'host' => '127.0.0.1',
'port' => '3306',
'user' => 'root',
'prefix' => 'cp_',
'pass' => '123456',
'charset' => 'utf8',
);
/**
* redis
*/
$redis_link = array(
'host' => '127.0.0.1',
'port' => 6379,
'pass' => '',
'timeout' => 2.5
);
//主库
$db = $mysql_link;
$db['name'] = 'test';
//评论数据库
$comment = $mysql_link;
$comment['name'] = 'test_comment';
//缓存
$cache = $redis_link;
$cache['db'] = 6;
//队列
$queue = $redis_link;
$queue['db'] = 7;
return array(
'mysql' => array(
'db' => $db,
'comment' => $comment,
),
'redis' => array(
'cache' => $cache,
'queue' => $queue,
),
);
除了mysql主库外, 还配置了一个mysql从库, 另外还配了2个redis数据库, 一个用于缓存, 一个用于队列
指定默认数据库
当使用多个数据库配置时, 可以在app配置文件中指定默认数据库
sys => array(
'default_db' => 'Model类型:配置名称'
)
默认的Model类型是mysql, 名称是db.