yii2引入第三方类库如何看读写的是主库还是从库

Yii2 怎样定义数据库连接
在saas中,多租户数据库分库管理时常常需要我们自定义数据库链接,并且需要支持在框架加载后再调用数据库连接。Yii2 如何定义数据库连接? 要注意的是:即除了使
在saas中,多租户数据库分库管理时常常需要我们自定义数据库链接,并且需要支持在框架加载后再调用数据库连接。
Yii2 如何定义数据库连接?
要注意的是:
即除了使用\Yii::app&set()外,还需要再多使用下面一句话:\Yii::app-&$database-&open();
因为在框架加载后再调用时,yii本身并不会帮我们打开连接。
* User: chenlb
namespace backend\modules\monitorMysql\controllers\
class AllDatabases extends \yii\base\Action
private static $_conn = [];
public function run()
// Create Test DB Connection
$db = $this-&getDb('数据库名称');
var_dump($db-&getSchema()-&getTableSchema('log')-&columns['id']-&isPrimaryKey);
* 得到数据库连接
public function getDb($database)
if(!isset(self::$_conn[$database])){
$connInfo = [
=& 'yii\db\Connection',
=& 'mysql:host=HOST_IP;port=3307;dbname='.$database,
'username' =& 'username',
'password' =& 'password',
\Yii::$app-&set($database, $connInfo);
\Yii::$app-&$database-&open();
self::$_conn[$database] = \Yii::$app-&$
return self::$_conn[$database];
以上就是Yii2 怎样定义数据库连接的全文介绍,希望对您学习和使用mysql有所帮助.
这些内容可能对你也有帮助
更多MySQL数据库可查看MySQL数据库列表页。
(责任编辑:admin)
------分隔线----------------------------
北森tita等五款国内外最有效的项目管理软件榜单,北森tita等五款国内外最有效的项目管...
谷歌的账号,与gmail邮箱通用,但是google在大陆被封禁,所以需要用vpn到香港或者国外...
2016年吉林省松原灌区工程建设有限公司招聘公告,详情如下。...
搜狗输入法iPhone版V3.8.1 率先适配iOS 10...
1、一个有希望的民族不能没有英雄,一个有前途的国家不能没有先锋。习近平总书记回望...
与ASP的差价,显示了很大一部分消费者选择了更高版本的iPhone。由于苹果每次推出新一...原文链接:
数据库读写分离是在网站遇到性能瓶颈的时候最先考虑优化的步骤,那么yii2是如何做数据库读写分离的呢?本节教程来给大家普及一下yii2的数据库读写分离配置。
两个服务器的数据同步是读写分离的前提条件,但这不在yii2读写分离教程内,yii2的数据库读写分离配置,仅仅实现了在主库读写,在从库查询,那么我们首先要配置主从服务器的数据同步。详情查看
主从服务器数据库同步完成之后,我们就可以开始yii2的读写分离配置,官方也有这方面的文档,但说的并不清楚,也没有实际的例子,酱油君在这里加以完善。
1.打开我们的数据库配置文件common\config\main-local.php在db属性中做如下配置
&&&&'class'&=&&'yii\db\Connection',
&&&&//&配置主服务器
&&&&'dsn'&=&&'mysql:host=192.168.0.1;dbname=hyii2',
&&&&'username'&=&&'root',
&&&&'password'&=&&'root',
&&&&'charset'&=&&'utf8',
&&&&//&配置从服务器
&&&&'slaveConfig'&=&&[
&&&&&&&&'username'&=&&'root',
&&&&&&&&'password'&=&&'root',
&&&&&&&&'attributes'&=&&[
&&&&&&&&&&&&//&use&a&smaller&connection&timeout
&&&&&&&&&&&&PDO::ATTR_TIMEOUT&=&&10,
&&&&&&&&],
&&&&&&&&'charset'&=&&'utf8',
&&&&//&配置从服务器组
&&&&'slaves'&=&&[
&&&&&&&&&&&&['dsn'&=&&'mysql:host=192.168.0.2;dbname=hyii2'],
&&&&&&&&],
如上配置就能实现yii2数据库读写分离的操作,很简单,只要一个配置就ok了,读写分离的功能由后台代码自动完成.调用者无须关心。
上面只是一个1主1从的配置,如果要一主多从,或者多主多从,参考此例以及官方文档即可完成。
更多关于yii2的精品文档
阅读(...) 评论()YII框架(23)
数据库读写分离是在网站遇到性能瓶颈的时候最先考虑优化的步骤,那么yii2是如何做数据库读写分离的呢?本节教程来给大家普及一下yii2的数据库读写分离配置。
两个服务器的数据同步是读写分离的前提条件,但这不在yii2读写分离教程内,yii2的数据库读写分离配置,仅仅实现了在主库读写,在从库查询,那么我们首先要配置主从服务器的数据同步。详情查看
主从服务器数据库同步完成之后,我们就可以开始yii2的读写分离配置,官方也有这方面的文档,但说的并不清楚,也没有实际的例子,酱油君在这里加以完善。
1.打开我们的数据库配置文件common\config\main-local.php在db属性中做如下配置
&&&&'class'&=&&'yii\db\Connection',
&&&&//&配置主服务器
&&&&'dsn'&=&&'mysql:host=192.168.0.1;dbname=hyii2',
&&&&'username'&=&&'root',
&&&&'password'&=&&'root',
&&&&'charset'&=&&'utf8',
&&&&//&配置从服务器
&&&&'slaveConfig'&=&&[
&&&&&&&&'username'&=&&'root',
&&&&&&&&'password'&=&&'root',
&&&&&&&&'attributes'&=&&[
&&&&&&&&&&&&//&use&a&smaller&connection&timeout
&&&&&&&&&&&&PDO::ATTR_TIMEOUT&=&&10,
&&&&&&&&],
&&&&&&&&'charset'&=&&'utf8',
&&&&//&配置从服务器组
&&&&'slaves'&=&&[
&&&&&&&&&&&&['dsn'&=&&'mysql:host=192.168.0.2;dbname=hyii2'],
&&&&&&&&],
如上配置就能实现yii2数据库读写分离的操作,很简单,只要一个配置就ok了,读写分离的功能由后台代码自动完成.调用者无须关心。
上面只是一个1主1从的配置,如果要一主多从,或者多主多从,参考此例以及官方文档即可完成。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
(6)(26)(2)(1)(8)(32)(1)(2)(5)(2)(1)(1)(3)(2)(1)(2)(4)(1)(3)(7)(6)(2)(5)(3)(2)(3)(1)
访问:33853次
积分:1369
积分:1369
排名:千里之外
原创:97篇
转载:36篇

我要回帖

更多关于 yii2连接多个数据库 的文章

 

随机推荐