Oracle11g新特性:Active Database Duplicate
Google订阅 | 鲜果榜 | Technorati | Delicious | Twitter | Taobao DBA | 招聘 | 合租 | 管理 | 阿里妈妈

Oracle11g新特性:Active Database Duplicate

利用Rman的duplicate命令,可以很方便的将原库复制出一个新库,这在诸如data guard等应用中非常有用。但是在Oracle11g之前,执行duplicate要求首先对原库用rman进行备份,然后将备份复制到复制库,同时连接原库(做为target)和复制库(做为auxiliary),执行duplicate命令进行复制。在Oracle11g中推出的active database duplicate特性,则省略了进行rman备份的步骤,能够直接从原库复制出新库,对于一些大型的数据库来说,这个特性可以节省很多操作时间。本文将简单的演示一下操作过程(在同一个主机上执行duplicate):

原库:ora11g(归档模式)
新库:oradup
操作系统:windows

一、首先手工创建新的instance
包括windows服务,dump路径,初始化参数文件,password文件,监听配置等等,这些步骤就不赘述了。理论上,初始化参数最少只需要指定db_name一个参数就可以了。当然,简单起见,最好还是设置如下参数:

DB_NAME=ORADUP
CONTROL_FILES=(’F:\ORACLE\ORADATA\ORADUP\CONTROL01.CTL’,
‘F:\ORACLE\ORADATA\ORADUP\CONTROL02.CTL’)
DB_FILE_NAME_CONVERT=(’F:\ORACLE\ORADATA\ORA11G’,'F:\ORACLE\ORADATA\ORADUP’)
LOG_FILE_NAME_CONVERT=(’F:\ORACLE\ORADATA\ORA11G’,'F:\ORACLE\ORADATA\ORADUP’)
log_archive_dest_1=F:\ORACLE\ARCH\ORADUP
compatible=11.1.0

经过试验,必须加入compatible=11.1.0的参数,如果不加,默认是compatible=11.0.0,那么rman duplicate最后在创建控制文件的时候会报错:

RMAN-03002: Duplicate Db 命令 (在 10/23/2007 22:43:40 上) 失败
RMAN-06136: 来自辅助数据库的 ORACLE 错误: ORA-01503: CREATE CONTROLFILE 失败
ORA-01130: 数据库文件版本 11.1.0.0.0 与 ORACLE 版本 11.0.0.0.0 不兼容
ORA-01110: 数据文件 1: ‘F:\ORACLE\ORADATA\ORADUP\SYSTEM01.DBF’

这个应该算是一个bug吧,11.0.0应该是beta版的版本号

加入log_archive_dest_1参数,则是因为最后需要复制原库的归档日志到备库,如果两个库都没有设置归档路径,那么都会放在默认的$ORACLE_HOME\rdbms目录下,就会发生冲突。当然,如果原库和新库在不同的主机上,则只需要db_name和compatible就足够了。

[继续阅读全文]

oracle11g for windows版本发布

在oracle11g for linux 64位版本撤了又发之后,windows版本总算也出来了,这样在家里的机器上做试验的时候终于不用再开虚拟机了。

点击进入下载页面

安装完后居然发现还带了OWB的客户端,看来Oracle还是舍不得自己开发的这个ETL工具,只是不知道准备将收购的ODI置于何种地位了。

DBCA建库的过程基本上和10g一样的简单,只是配合11g的一些新特性增加和修改了几个用户设置的地方:

[继续阅读全文]

车展·生日·百淘

最近突然觉得没什么好写的了,可能因为新到公司,很多东西需要熟悉,脑袋里一下子涌进了很多东西,有点失语了。不过发现最近Google阅读中订阅的一些blog的更新也都不多,几天难得看到一篇,要么跟我这个一样瞎扯几句不痛不痒的,要么就是一窝蜂的报道域名被劫持啦,youtube被和谐啦。。。。。。

昨天和流云去看2007西博车展,第一次这么近距离的看到这么多PL的MM和这么PL的车车。只是目前来看,mm和车车都还离的比较遥远,来车展不是闲着没事找被刺激么?而且,美丽的东西要是太集中了,容易审美疲劳,3个小时看下来,在回来的公交车上就跟周公小聚去了。

今天有两件事值得小小的记录一下,一个是又老一岁了,人生最痛苦的事,莫过于年华老去,而儿时的梦想也真的变成只能梦里偶尔想想了。另外就是开始为期7天的新人训,基本上都是些老招式了,公司文化洗脑增加对公司的了解,团队拓展增进对同事的亲近,还有就是那啥,外面传得沸沸扬扬的倒立,这不就是偶小时候不小心踢碎邻居家玻璃的姿势么?No problem,20年后重操旧业而已啦。百淘19的朋友们,还不会倒立的加油了,手伸直,腰挺紧,腿轻轻一点,整个世界就颠倒了^_^

NND,怎么一下就变成20年前了呢,过几年后还不得“想当年”啊

2007西博车展

2007西博车展

使用stty修改终端设置

在linux/unix平台上的sqlplus中,如果输错了字符,要想删除,习惯性的按下backspace键后,发现非但没有删除想要删掉的字符,还多出了两个字符^H。当然,我们可以同时按下ctrl+backspace键来删除,但对于习惯了用backspace来删除的用户,这样很不爽。这可以通过修改tty终端的设置来实现backspace删除功能。通过使用stty命令,就可以查看或者修改终端的按键设置。

例如,设置backspace为删除键:

[oracle10g@linux]$ stty erase ^h

如果要改回使用ctrl+backspace为删除键

[oracle10g@linux]$ stty erase ^?

如果需要重启后自动设置终端,可以将上述命令加入到profile中。

可以通过stty -a命令来查看所有的终端设置。下面是在linux下执行的输出:

[oracle10g@linux]$ stty -a
speed 38400 baud; rows 66; columns 132; line = 0;
intr = ^C; quit = ^\; erase = ^H; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany -imaxbel
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke

其中: