断开控制器功能中的当前数据库连接并连接codeigniter

时间:2016-02-05 09:41:25

标签: codeigniter replication

在我的application / config / database.php我有多个数据库连接..现在数据库连接将根据我登录的城市进行。按照城市数据库连接将成功创建...现在我需要做的是在一个特定的功能里面我需要连接一个复制数据库(仅用于我已经连接复制数据库的那个功能)...我将成功连接该复制数据库连接,但问题是它将连接整个我的整个应用程序..我只需要复制数据库连接...对于其他控制器和功能,我需要连接我根据城市连接的数据库。

2 个答案:

答案 0 :(得分:0)

我相信这会解决你的问题。通过这种方式,您可以打开与复制服务器的连接,并可以访问两个数据库服务器。

将代码放在您想要的函数中。

public function replication_test()
{
        echo "<pre>";
        $query = $this->db->query("SELECT id FROM users ORDER BY id DESC LIMIT 0, 1");
        $result = $query->row_array();
        print_r($result);
        $db_repli = $this->load->database('replication_db', true);

        $query = $db_repli->query("SELECT id FROM repli_users ORDER BY id DESC LIMIT 0, 1");

        $result = $query->row_array();
        print_r($result);

        // Close the DB
        $db_repli->close();
}

答案 1 :(得分:0)

在这里,我提出了我的问题的解决方案,即在模型的构造函数中加载复制数据库而不是控制器的构造函数,该函数允许在需要时加载复制数据库连接。