NinGoo@Net --- Just a simple Oracle & MySQL DBA
常用标签:

Oracle10gR2 Logical Standby(六)逻辑备库的Failover

当主库由于某种原因不可用时,需要考虑将备库直接拉起来,这就是failover。基本原理和操作步骤和switchover差不多只是不管主库,直接将备库切换成新的主库。

一.切换前的检查

确保所有能应用的归档都已经应用。确保监听设置正确。确保切换后应用能连接到新的主库等。

二.停止SQL Apply

如果原来是停止的,那么可能还有部分最新的日志没有应用,则最好先应用一下日志,减少最终切换需要的时间:

alter database start logical standby apply finish;

alter database stop logical standby apply;

三.激活备库

以下命令会终止RFS,然后应用还未应用的日志,最后将数据库转换成primary角色。

alter database activate logical standby database finish apply;

至此,逻辑备库已经转换成主库,非常的简单。由于数据库本身是open的,转换后无须再作任何操作

select database_role from v$database;

DATABASE_ROLE
----------------
PRIMARY

四.处理其他备库

如果原来的DataGuard中还有不止一个逻辑备库,则其中一个逻辑备库failover成主库以后,其他的备库需要重新指向新的主库。首先在其他备库创建一个到新主库的database link

alter session disable guard;
create database link newprimary connect to user identified by password using 'newprimary';       
alter session enable guard;

然后重新指向新的备库

alter database start logical standby apply new primary newprimary;

如果执行时出现ORA-16109: failed to apply log data from previous primary,则备库只有重做了。

Oracle10gR2 Logical Standby(五)逻辑备库的Switchover

相对物理备库的切换,逻辑备库的切换稍微复杂点,但只要按照步骤,整个操作过程也可以在很短的时间内完成。这里记录下主库正常时的switchover操作过程:

1.切换前的检查
包括主备库参数设置,主备库的TNS设置,以及应用连接数据库的TNS等,确保主备库角色转换后整个系统运行不受影响。

2.主库准备切换

alter database prepare to switchover to logical standby;

命令执行成功后,主库的状态

select switchover_status from v$database;

SWITCHOVER_STATUS
--------------------
PREPARING SWITCHOVER

3.备库准备切换

alter database prepare to switchover to primary;

命令执行成功后,备库的状态

select switchover_status from v$database;

SWITCHOVER_STATUS
--------------------
PREPARING SWITCHOVER

4.主库开始切换
执行完第3步后,现在的备库需要生成logminer所需要的数据字典信息,然后传送到现在的主库,所以要执行逻辑备库切换,必须在备库也设置到主库的归档路径,并且主备库监听都需要保持开启。否则,切换的状态就会一直停留在PREPARING SWITCHOVER。

备库数据字典信息传递到主库后,主库的状态变成TO LOGICAL STANDBY,这时才能执行实际的切换。

select switchover_status from v$database;

SWITCHOVER_STATUS
--------------------
TO LOGICAL STANDBY

alter database commit to switchover to logical standby;

注:在PREPARING SWITCHOVER状态时,可以通过执行以下命令取消切换操作:

alter database prepare to switchover cancel;

5.从库切换
上一步成功后,备库的状态应该变成了TO PRIMARY,则可以执行切换

select switchover_status from v$database;

SWITCHOVER_STATUS
--------------------
TO PRIMARY

alter database commit to switchover to primary;

6.在新的备库启动日志应用进程

alter database start logical standby apply;

如果是实时应用,则

alter database start logical standby apply immediate;

上海过客

离开上海快一年了,第一次回来,为了上海电信办理ADSL时的500块押金,外地人才需要的押金。对于上海而言,我只是一个外地人。由于搬了几次家,还换了一次城市,押金的收据找不到了,所以这500块现在还拿不到,还得等45天。45天后,三年内,肯定还得为这500块跑一次东方路,从电信口里吐出来,再为交通部门贡献大半。

三年前来到上海,鼎盛时期大学同班同学有4个人在,刚好一桌牌,而现在一个去了北京,我到了杭州,另外一个,下个月即将随公司去麻辣的成都。我们只是上海的匆匆过客,两三年来收获的,也仅仅是到此一游而已。

东西南北的漂泊,在漂泊的岁月里慢慢蹉跎,曾经的理想,和家乡一样越来越遥远漫长。

端午节快乐!

如何建立独立域名的个人Blog

前段时间由于Dreamhost第一年的优惠期快到期,第二年需要恢复正常的119$/Year的价格,就搞了一次合租,一开始还有点担心找不到人,结果大家却意外的踊跃,很快名额就满了。这样看来,很多朋友都希望能建立自己的独立域名Blog,只是希望价格能更低一点而已,毕竟能赚钱的Blog是少数中的少数,大部分人只是为了自娱自乐一下而已,成本是不能不考虑的问题。

实际上现在创建一个独立域名的Blog,真金白银的成本相对来说是不算高的,花在里面的时间成本才是更重要的,至于收益,则在于个人了,我觉得只要从中得到了乐趣与满足,就是值得的。要建立一个Blog,不外乎三部曲:买域名空间,选择Blog平台,开始码字。

买域名空间

想一个好记的域名不容易,想好了域名要购买相对就容易多了。但是强烈不建议在国内的代理商购买,抛开价格不论,处处设置的限制就让你很不爽,有些代理商要改个DNS都得发身份证复印件,比公安机关还NB,更别提要迁移域名了。

域名和空间服务器现在满互联网都是,挑来挑去挑花眼。我也没用过其他的服务商,这里就说说我现在用的Dreamhost。Dreamhost是在美国的一家服务商,号称提供500GB存储空间+5TB每月的流量,支持shell,并且97天内不满意可以退款。当然你要是实际用了这么资源人家肯定是不干的,但是一般的个人Blog用用应该还是没问题的。一个空间可以绑定多个域名,也就是可以多人合租。至于价格,第一年可以通过使用优惠码获得一定的优惠,以前最高可以优惠到97美刀,但是现在只能优惠50美刀了,这样第一年就需要支付119.4-50=69.4$

要获得第一年优惠,可以通过在注册时输入优惠码,比如NINGOO,或者直接点击这个链接进入注册。购买空间的话可以免费获得一个国际域名一年的使用权,单独购买域名的价格是9.95$/Year

在Dreamhost等国外服务商购买域名空间,最好是使用双币信用卡付款比较方便。现在满大街都是银行的人拉你去办信用卡的,所以这个应该问题不大了。

选择Blog平台

目前最流行的两大Blog平台: MT(Movable Type)WP(WordPress)Fenng用的MT,基于Perl的,我这个是Wordpress,基于PHP的,选择哪个就看个人爱好了,最好是自己对perl或者php有一定了解的,这样某些地方可以根据自己的需求进行修改。不懂也没关系,直接用现成的也没多大问题的。Wordpress有很多的插件可以提供附加功能,有很多的模板可以提供各种风格的展现。关于具体怎么配置使用,Google一把应该有大量的信息了。

开始码字
这个,就不用说了把,进入到Blog的管理后台,开始写你的不老歌吧。