magento 切换数据库,使用不同数据库

1. 在app/etc/local.xml 中,添加新的数据库选项

<?xml version="1.0"?>
    <config>
        <global>
            <install>
                <date><![CDATA[Tue, 05 Jul 2011 03:23:52 +0000]]></date>
            </install>
            <crypt>
                <key><![CDATA[80eb4be66ce28df745f27c75f2604d33]]></key>
            </crypt>
            <disable_local_modules>false</disable_local_modules>
            <resources>
                <db>
                    <table_prefix><![CDATA[]]></table_prefix>
                </db>
                <default_setup>
                    <connection>
                        <host><![CDATA[localhost]]></host>
                        <username><![CDATA[root]]></username>
                        <password><![CDATA[]]></password>
                        <dbname><![CDATA[hello]]></dbname>
                        <active>1</active>
                    </connection>
                </default_setup>  

                <vip_space_read>
                    <connection>
                        <host><![CDATA[localhost]]></host>
                        <username><![CDATA[root]]></username>
                        <password><![CDATA[]]></password>
                        <dbname><![CDATA[hello_dev_test]]></dbname>
                        <model>mysql4</model>
                        <initStatements>SET NAMES utf8</initStatements>
                        <type>pdo_mysql</type>
                        <active>1</active>
                    </connection>
                </vip_space_read>
            </resources>
            <session_save><![CDATA[files]]></session_save>
        </global>
        <admin>
            <routers>
                <adminhtml>
                    <args>
                        <frontName><![CDATA[hello_admin]]></frontName>
                    </args>
                </adminhtml>
            </routers>
        </admin>
    </config>

2. 在需要使用的不同数据库的model resource中,重写 _setResource 方法,例如

  class Hello_Vip_Model_Entity_Vip_Adapter extends Mage_Core_Model_Mysql4_Abstract
    {
        protected $_logFile = ‘vip.adapter.log‘;  

        protected function _construct()
        {
            $this->_setResource(array(‘read‘ =>‘vip_space_read‘, ‘write‘

=>‘vip_space_read‘));
        }

经过以上两步,就能在某个model中使用不同的数据库

时间: 2024-08-06 13:22:51

magento 切换数据库,使用不同数据库的相关文章

Winform开发框架中实现多种数据库类型切换以及分拆数据库的支持 - 伍华聪

在很多应用系统里面,虽然一般采用一种数据库运行,但是由于各种情况的需要,可能业务系统会部署在不同类型的数据库上,如果开发的系统能够很方便支持多种数据库的切换,那可以为我们减少很多烦恼,同时提高系统的适应性和强壮型.还有一种情况,由于业务数据库的不断膨胀或者方便数据库的切割隔离,有时候也会把不同的业务数据库进行分拆,如权限提供数据库,客户关系管理数据库,工作流程数据库,企业营运数据库等等,因此在一个系统里面,同时使用2个或者以上的数据库的情况也是有的.针对这两种情况,本文介绍在我的Winform开

在oracle中重建新数据库后如何切换之前数据库,多个数据库之间如何切换

通过这个软件,创建一个SQLSERVER的数据库,之前的数据库一直是ORCL,即sqlplus system/orcl 后 NAME --------- ORCL 这样,但创建完新的数据库后长这样如下: 现在使用的PL/SQL DEVELOPER是可以两个数据库ORCL,和SQLSERVER都可以链接 希望让控制台从SQLSERVER的链接中回到ORCL的数据库的链接中 没想到今天运气好居然快速成功找回,折磨n天的问题终于找回 SET ORACLE_SID = SID名称即 SET ORACLE

通过SQL Server 2008数据库复制实现数据库同步备份

SQL Server 2008数据库复制是通过发布/订阅的机制进行多台服务器之间的数据同步,我们把它用于数据库的同步备份.这里的同步备份指的是备份服务器与主服务器进行 实时数据同步,正常情况下只使用主数据库服务器,备份服务器只在主服务器出现故障时投入使用.它是一种优于文件备份的数据库备份解决方案. 在选择数据库同步备份解决方案时,我们评估了两种方式:SQL Server 2008的数据库镜像和SQL Server 2008数据库复制.数据库镜像的优点是系统能自动发现主服务器故障,并且自动切换至镜

sql server 还原数据库时提示数据库正在使用,无法进行操作的解决方法

这个问题的原因在于有用户连接了当前要做还原的数据库,这里的用户甚至包括当前要做还原的用户.解决办法就是关闭与要还原数据库的所有连接. ①先切换数据库到master数据库.执行语句select * from master..sysprocesses where dbid=db_id( '数据库名称')②然后逐步运行语句 exec kill spid(上一步结果集中的数据), 问题就解决了.哈哈 今天在还原数据库的时候,提示"因为数据库正在使用,所以无法获得对数据库的独占访问权",无论我是

数据库 chapter 12 数据库管理系统

第十二章 数据库管理系统 阐述DBMS的基本功能,系统结构以及主要的实现技术. DBMS应具有的基本功能 数据库定义和创建 数据组织.存储和管理 数据存取 数据库事务管理和运行管理 数据库的建立和维护 其他功能 DBMS的进程结构 实际应用中,DBMS以及应用程序都必须进入某个具体的操作系统环境,应用程序通过DBMS.DBMS通过操作系统,与数据库中的数据打交道.根据三者关系,一般有四种进程组织方案. N方案:DBMS与应用程序相融合的方案 多线索(Multi-Threaded)DBMS 就像图

Mongodb(2)创建数据库,删除数据库,创建集合,删除集合,显示文档内容

显示所有数据库列表:show dbs > show dbs local 0.078GB runoob 0.078GB > 显示当前数据库:db > db runoob > 显示所有集合:show collections  --显示当前数据库的所有集合 > show collections col_1 col_2 runoob system.indexes > 创建数据库:use DataBase_Name  --创建名字为DataBase_Name的数据库,并切换到创建

使用dataguard将单实例数据库转换为rac数据库

我们经常将oracle rac数据库通过dataguard容灾到一个单实例数据库中,当生产库出现故障后可以将生产库切换到dg服务器上.而当生产库rac修复完成后,我们同样可以通过dg将数据回切到生产库中. 此次测试将单实例数据库通过dg转换为rac数据库,这个单实例是刚创建的,并不是由rac通过dg生成的. 在做dg之前需要安装完成grid,不需要创建数据库实例.在日志应用的时候必须只能是一个实例应用. 具体环境如下: 单实例库: 数据库版本:11.2.0.4.0 sid:suq db_uniq

数据库1(数据库、表及表数据、SQL语句)

01数据库概念 A: 什么是数据库 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来, 用户可以对数据库中的数据进行增加,修改,删除及查询操作. B: 什么是数据库管理系统 数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立.使用和维护数据库, 对数据库进行统一管理和控制,以保证数据库的安全性和完整性.用户通过数据库管理系统访问数据库中表内的数据. 02常见的数据库 * A: 常见的数据库

处理本地数据库和云数据库存储的注意事项

这是我的第一篇微博,主要谈的是在做安卓应用时,本地数据库和在线数据库同时应用时遇到的一些小问题和解决方法. 1.本地数据库与在线数据库不同步的问题:因为我做的是运动类的app所有数据都是实时更新的,所以如果不断交换本地数据和在线数据会很不合理,常常会出现错误.所以我在本地存储每天的运动数据(本地数据至多存储40天),一旦联网就将数据上传. 2.上传数据的处理问题:之前的做法是将在线数据进行下载,检查与本地数据是否有不同,若不同,保存不同处,将其上传并对其进行更新.后来发现这种方法太复杂,数据处理

iOS开发数据库篇—FMDB数据库队列(下)

iOS开发数据库篇—FMDB数据库队列(下) 一.代码示例 1.需要先导入FMDB框架和头文件,由于该框架依赖于libsqlite库,所以还应该导入该库. 2.代码如下: 1 // 2 // YYViewController.m 3 // 05-FMDB数据库队列 4 // 5 // Created by apple on 14-7-28. 6 // Copyright (c) 2014年 wendingding. All rights reserved. 7 // 8 9 #import "Y