eygle.com   eygle.com
eygle.com  
 

« July 2, 2005 | Blog首页 | July 4, 2005 »



July 3, 2005

王小慧作品

作者:eygle

出处:http://blog.eygle.com

这两天翻了一下王小慧的《我的视觉日记-旅德生活十五年》,深有所感,在网上找到作者的两幅作品,与大家分享。

第一副是作者的自拍像,题为:带着疑惑的希望。
王小慧在书中这样写道:
据说评论界对此评鉴很高,说我经历过沉重而混乱的过去(由左边的部分暗示出来),又经历过很长时间的彷徨(中间空白及小阴影),"现在的我"非常严肃的看着未来(向着画面外,眼睛看着远方)

带着疑惑的希望

着一张是王小慧的《女人的照片》摄影集的最后一张,也是“和二为一”组照的最后一张,表现的是男女携手,和二为一,奔向未来的寓意。这张照片让我想起了那个著名的沙画大师“创世纪”表演中的一幕,男女携手,总有更多的希望。
和二为一

读这本书,其实给我最多感触的还是书名,15年,转瞬即过的15年啊,沧海桑田。

而对于我们每个人,你怎样度过你的15年?

Posted by eygle at 10:20 PM | Comments (10)


如何使用sqlldr的WHEN判断加载数据到不同的数据表

作者:eygle

出处:http://blog.eygle.com

今天有朋友问到sqlldr加载数据到不同表的问题,做了一个测试,示例如下:
创建测试表
D:\Orion>sqlplus eygle/eygle

SQL*Plus: Release 9.2.0.6.0 - Production on 星期日 7月 3 19:53:59 2005

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.


连接到:
Oracle9i Enterprise Edition Release 9.2.0.6.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.6.0 - Production

19:53:59 SQL> create table test1 (
19:54:14   2  a1 varchar2(10),
19:54:21   3  a2 varchar2(10),
19:54:26   4  a3 varchar2(10));

表已创建。

已用时间:  00: 00: 00.03
19:54:32 SQL> create table test2 (
19:54:35   2  a1 varchar2(10),
19:54:39   3  a2 varchar2(10),
19:54:40   4  a3 varchar2(10));

表已创建。

已用时间:  00: 00: 00.04
19:54:42 SQL> exit
从Oracle9i Enterprise Edition Release 9.2.0.6.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.6.0 - Production中断开


测试数据:
D:\Orion>cat data.txt
01,KunMing,YunNan
02,BeiJing,BeiJing
02,ShenZhe,ShenZhe
02,TianJin,TianJin
D:\Orion>

控制文件:
D:\Orion>cat data.ctl
LOAD DATA
INFILE 'data.txt'
APPEND INTO TABLE test1
WHEN (2) = '1'
FIELDS TERMINATED BY "," OPTIONALLY ENCLOSED BY " " TRAILING NULLCOLS
( a1 POSITION(01:02), a2 POSITION(04:10), a3 POSITION(12:19) )
INTO TABLE test2
WHEN (2) = '2'
FIELDS TERMINATED BY "," OPTIONALLY ENCLOSED BY " " TRAILING NULLCOLS
( a1 POSITION(01:02), a2 POSITION(04:10), a3 POSITION(12:19) )


加载数据:
D:\Orion>sqlldr eygle/eygle errors=20000 log=data.log control=data.ctl

SQL*Loader: Release 9.2.0.6.0 - Production on 星期日 7月 3 19:57:36 2005

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

达到提交点,逻辑记录计数3
达到提交点,逻辑记录计数4


检查结果:
D:\Orion>sqlplus eygle/eygle

SQL*Plus: Release 9.2.0.6.0 - Production on 星期日 7月 3 19:57:38 2005

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.


连接到:
Oracle9i Enterprise Edition Release 9.2.0.6.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.6.0 - Production

19:57:38 SQL> select * from test1;

A1         A2         A3
---------- ---------- ----------
01         KunMing    YunNan

已用时间:  00: 00: 00.00
19:57:42 SQL> select * from test2;

A1         A2         A3
---------- ---------- ----------
02         BeiJing    BeiJing
02         ShenZhe    ShenZhe
02         TianJin    TianJin

已用时间:  00: 00: 00.00
19:57:45 SQL> exit
从Oracle9i Enterprise Edition Release 9.2.0.6.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.6.0 - Production中断开

如果不选择分区表,可以使用此方式直接加载数据到不同的数据表中。
.

Posted by eygle at 7:33 PM | Comments (1)


如何从备份集中恢复归档日志

作者:eygle

出处:http://blog.eygle.com

这一类的操作是因为丢失了所有的控制文件,而RMAN的备份信息又存储在控制文件之中。

所以只能使用DMBS_BACKUP_RESTORE从备份集中恢复数据文件、归档日志等进行恢复。

本例示范如何恢复归档日志文件,恢复数据文件的例子参考:应对RMAN-06026错误,使用dbms_backup_restore进行恢复

SQL> DECLARE
 2   devtype varchar2(256);
 3   done boolean;
 4   BEGIN
 5   devtype:=sys.dbms_backup_restore.deviceAllocate(type=>'',ident=>'t1');
 6   sys.dbms_backup_restore.restoreSetArchivedLog(destination=>'D:\oracle\oradata\eygle\archive');
 7   sys.dbms_backup_restore.restoreArchivedLog(thread=>1,sequence=>6);
 8   sys.dbms_backup_restore.restoreBackupPiece(done=>done,handle=>'D:\oracle\oradata\eygle\bak\ARCH_EYGLE_20050702_7',params=>null);
 9   sys.dbms_backup_restore.deviceDeallocate;
10  END;
11  /

PL/SQL procedure successfully completed.

执行不完全恢复以后,resetlogs打开数据库:
SQL> recover database using backup controlfile until cancel;
ORA-00279: change 459405 generated at 07/02/2005 23:58:32 needed for thread1
ORA-00289: suggestion : D:\ORACLE\ORADATA\EYGLE\ARCHIVE\ARC16.ARC
ORA-00280: change 459405 for thread 1 is in sequence #6

Specify log: {=suggested | filename | AUTO | CANCEL}

ORA-00279: change 459428 generated at 07/02/2005 23:59:32 needed for thread1
ORA-00289: suggestion : D:\ORACLE\ORADATA\EYGLE\ARCHIVE\ARC17.ARC
ORA-00280: change 459428 for thread 1 is in sequence #7
ORA-00278: log file 'D:\ORACLE\ORADATA\EYGLE\ARCHIVE\ARC16.ARC' no longer needed for this recovery

Specify log: {=suggested | filename | AUTO | CANCEL}

ORA-00279: change 459516 generated at 07/03/2005 00:02:40 needed for thread1
ORA-00289: suggestion : D:\ORACLE\ORADATA\EYGLE\ARCHIVE\ARC18.ARC
ORA-00280: change 459516 for thread 1 is in sequence #8
ORA-00278: log file 'D:\ORACLE\ORADATA\EYGLE\ARCHIVE\ARC17.ARC' no longer needed for this recovery

Specify log: {=suggested | filename | AUTO | CANCEL}

ORA-00328: archived log ends at change 456840, need later change 459516
ORA-00334: archived log: 'D:\ORACLE\ORADATA\EYGLE\ARCHIVE\ARC18.ARC'

SQL> recover database using backup controlfile until cancel;
ORA-00279: change 459516 generated at 07/03/2005 00:02:40 needed for thread1
ORA-00289: suggestion : D:\ORACLE\ORADATA\EYGLE\ARCHIVE\ARC18.ARC
ORA-00280: change 459516 for thread 1 is in sequence #8

Specify log: {=suggested | filename | AUTO | CANCEL}
cancel
Media recovery cancelled.
SQL> alter database open resetlogs;

Database altered.

SQL>


恢复完毕.

Posted by eygle at 9:26 AM | Comments (2)



CopyRight © 2004-2008 eygle.com, All rights reserved.