2008年3月3日
摘要: 回滚段管理一直是ORACLE数据库管理的一个难题,本文通过实例介绍ORACLE回滚段的概念,用法和规划及问题的解决。 回滚段概述 回滚段用于存放数据修改之前的值(包括数据修改之前的位置和值)。回滚段的头部包含正在使用的该回滚段事务的信息。一个事务只能使用一个回滚段来存放它的回滚信息,而一个回滚段可以存放多个事务的回滚信息。 回滚段的作用 事务回滚:当事务修改表中数据的时候,该数据修改前的值(即前影像)会存放在回滚段中,当用户回滚事务(ROLLBACK)时,ORACLE将会利用回滚段中的数据前影像来将修改的数据恢复到原来的值。 阅读全文
posted @ 2008-03-03 21:30 一江水 阅读(723) 评论(0) 推荐(0) 编辑
摘要: 语法描述: CREATE [UNDO] TABLESPACE tablespace_name [DATAFILE datefile_spec1 [,datefile_spec2] ...... [ { MININUM EXTENT integer [k|m] | BLOCKSIZE integer [k] |logging clause |FORCE LOGGING |DEFAULT {data_segment_compression} storage_clause |[online|offline] |[PERMANENT|TEMPORARY] |extent_manager_clause |segment_manager_clause}] 阅读全文
posted @ 2008-03-03 21:23 一江水 阅读(679) 评论(0) 推荐(0) 编辑
摘要: Oracle 数据库系统总是将系统用的回滚取名为SYSTEM(不要与SYSTEM用户相混),而且该回滚段都建立在 SYSTEM表空间内。比如可以从下面查询中看到系统的所有回滚段的基本信息: SQL select segment_name,tablespace_name,bytes,next_extent 2 from dba_segments where segment_type='ROLLBACK'; SEGMENT_NAME TABLESPACE_NAME BYTES NEXT_EXTENT ---------------- ----------------- ---------- ------------ SYSTEM SYSTEM 409600 57344 RBS0 RBS 4194304 2097152 RBS1 阅读全文
posted @ 2008-03-03 21:22 一江水 阅读(2768) 评论(0) 推荐(0) 编辑
摘要: ANALYZE { TABLE [ schema. ]table [ PARTITION ( partition ) | SUBPARTITION ( subpartition ) ] | INDEX [ schema. ]index [ PARTITION ( partition ) | SUBPARTITION ( subpartition ) ] | CLUSTER [ schema. ]cluster } { compute_statistics_clause | estimate_statistics_clause | validation_clauses | LIST CHAINED ROWS [ into_clause ] | DELETE [ SYSTEM ] STATISTICS } ; 阅读全文
posted @ 2008-03-03 21:12 一江水 阅读(3378) 评论(0) 推荐(0) 编辑
摘要: 之前在测试传输表空间时感受了一下跨平台的移值,当时只测试了通过传输表空间的特性复制某个指定表空间,或者是通过RMAN中的CONVERT或TTS复制数据库,测试结束之后,感觉ORACLE10G之后对不同平台(相同字节顺序)的数据文件相互兼容性方面得到大大提升,下意识认为不通过传输表空间直接复制数据文件应该也可以,今天在本地测试了一下,确实相当好使,通过这种方式使得跨平台的移植更加高效,也易于管理和操作,下面记录的为操作过程。 注意:源平台与目标平台的字节顺序(endian format)需要相同。更多概念可以参考我的笔记"使用可传输表空间的特性复制数据" 阅读全文
posted @ 2008-03-03 16:23 一江水 阅读(385) 评论(0) 推荐(0) 编辑
摘要: 1 、 首先查看 Primary Database 的归档模式( svrmgrarchive log list )若为无归档模式,将数据库转换为自动归档方式,方法如下: 先关闭 Primary Database : svrmgrshutdown immediate 再以 mount 方式启动 Primary Database : svrmgrconnect internal/password svrmgrstartup mount svrmgralter database archivelog svrmgrshutdown 阅读全文
posted @ 2008-03-03 14:20 一江水 阅读(2377) 评论(0) 推荐(0) 编辑
  2008年3月1日
摘要: a. show tables或show tables from database_name; // 显示当前数据库中所有表的名称 b. show databases; // 显示mysql中所有数据库的名称 c. show columns from table_name from database_name; 或show columns from database_name.table_name; // 显示表中列名称 d. show grants for user_name@localhost; // 显示一个用户的权限,显示结果类似于grant 命令 e. show index from table_name; // 显示表的索引 f. show status; // 显示一些系统特定资源的信息,例如,正在运行的线程数量 g. show variables; // 显示系统变量的名称和值 阅读全文
posted @ 2008-03-01 10:44 一江水 阅读(247) 评论(0) 推荐(0) 编辑
摘要: sqlldr userid=test/test control='a.ctl' OPTIONS ( ROWS=100000) LOAD DATA INFILE 'a.dat' BADFILE 'a.bad' INTO TABLE z Append FIELDS TERMINATED BY X'9' TRAILING NULLCOLS (a , b , c DATE "yyyymmdd") 阅读全文
posted @ 2008-03-01 01:40 一江水 阅读(605) 评论(0) 推荐(0) 编辑
  2008年2月25日
摘要:   1、为什么UNION ALL比UNION更快   你如果还记得,union操作是将两个数据集合并在一起。它不会产生重复或者多余的行。为了完成这样的效果,需要对这两张表执行SORT操作。这个SORT操作明显是计算密集的,并且会使用大量的内存。相反,UNION ALL仅仅是将两个集合的数据任意的合并在一起,而不管行是否重复。 阅读全文
posted @ 2008-02-25 00:15 一江水 阅读(163) 评论(0) 推荐(0) 编辑
  2008年2月24日
摘要:   2)建立属于公开的(public)或者是专属的db link object      SQL CREATE PUBLIC DATABASE LINK MYTEST   2 CONNECT TO APPLE IDENTIFIED BY APPLE   3 USING 'life02'      Database link created. 阅读全文
posted @ 2008-02-24 17:35 一江水 阅读(2440) 评论(0) 推荐(0) 编辑