我的公司一直在设置一个不同的服务器,用于mysql DB的读写访问。以前,我们使用自定义PHP脚本。 但是,我最近被赋予了通过利用CI创建工具的任务。我在测试服务器上完成了它。现在,我很困惑,如何在实时服务器上实现它。
答案 0 :(得分:4)
为database.php配置文件中的每个服务器设置多个“连接组”,然后在模型中:
$DB1 = $this->load->database('group_one', TRUE);
$DB2 = $this->load->database('group_two', TRUE);
//read from DB1
$DB1->query();
//write to DB2
$DB2->insert();
中的示例
答案 1 :(得分:0)
可能更容易,而不是通过IP执行此操作,使用MySQL用户执行此操作。
您可以拥有两个不同的用户,一个拥有所有写权限,例如INSERT
和UPDATE
,然后是另一个拥有所有READ权限的用户,例如SELECT
,或者您想要的任何用户。
那么您的写入Web服务器上运行的代码是使用写入用户还是反之亦然?
答案 2 :(得分:0)
我创建了一个扩展数据库功能的简单库。您可以根据需要进行修改。 http://rangga.net/splitting-read-write-codeigniter-database/