【表压缩】使用表压缩技术将表所占用空间降低到最小
很多情况下,Oracle默认的表存储策略并不符合我们使用数据的实际情况。例如,在OLAP类型的系统中,数据的使用方式一般是定期批量初始化大量数据,此后的工作便是查询、分析和统计,很少的修改动作。基于这样...
【Flashback】使用闪回功能快速恢复用户的误操作
Oracle提供的闪回特性对于快速恢复误操作的数据起到了非常大的帮助。在没有这个特性的Oracle早期版本,如果需要恢复因用户错误导致的数据丢失,需要大量的时间和精力去做不完全恢复。不过,这种用空间换时间...
【PL/SQL】使用变量传递方法生成表更名的SQL语句
在某些情况下需要将PL/SQL中的一个变量的值修改后传给另外一个变量以便实现复杂的需求,这也是变量传递魅力所在。这里我以一个通过变量传递的方法生成修改表名的SQL语句为例给大家演示一下,供参考。1.为演示方...
【保留字】使用视图V$RESERVED_WORDS得到Oracle的保留字
在创建表时如果使用了Oralce的某些保留字,将会收到系统提示的“无效名”等错误,那么Oracle都有哪些保留字需要回避呢?这个问题完全可以使用Oralce自带的V$RESERVED_WORDS视图来回答,不同的版本中这个视图中记...
【maxmem】利用Oracle的maxmem小工具得到系统可用内存大小
在ORACLE_HOME/bin目录下有很多有意义的工具,如耳熟能详的exp(expdp)、imp(impdp)、rman等等。其中有一个工具叫做“maxmem”,要知道这个可不是操作系统上的命令,这个命令是Oracle提供的,使用这个命令可...
【视图】利用USER_TAB_MODIFICATIONS视图辅助监控表的增删改等操作
USER_TAB_MODIFICATIONS视图记录了当前用户中表自最后一次分析之后所有增、删、改等操作信息。通过对其查询可以得到一个简化版的审计功能效果。因为该视图中记录的信息会因表的分析自动清除,同时Oracle从性能上...
【orakill】使用Oracle的orakill命令彻底杀死Windows环境下Oracle线程
1.orakill命令怎么用?通过在command命令行直接使用orakill命令便可得到简单但清晰的实用使用指导。需要注意的是:“sid”指的是“instance name”,不要被名字误导!C:\>orakillUsage: orakill sid threa...
【IMP】使用IMP的SHOW参数轻松获取EXP命令的DUMP文件内容
使用IMP的SHOW参数可以轻松获取EXP的DUMP文件内容,通过读取其内容我们可以获得很多有价值的信息。简单列两点:1.创建数据库对象的SQL语句我们可以从中得到非常详细的数据库对象创建SQL语句。在此基础上如能...
【USER】使用“基表修改法”快速修改Oracle用户名
Oracle中没有提供直接修改用户名的方法,即使在11gR2中也没有提供具体的手段。由于没有直接修改用户名的方法,因此在Oracle中若要修改用户名,通常是比较周折的。通常修改用户名的一种方法...
【索引】使用索引分析快速得到索引的基本信息
我们在使用“validate structure”对索引进行分析后,通过查询index_stats可以得到很多有关索引本身的属性信息。通过这个实验简单展示一下几个重要的信息列。1.创建测试表t,在t表的x列上存在主键。2.对索引(主键)...
【优化】INDEX FULL SCAN (MIN/MAX)访问路径
Oracle对单独使用max或min函数时给出了一种非常高效的访问路径,就是“INDEX FULL SCAN (MIN/MAX)”,该方法可以避免索引的全部读取,进一步提高数据结果的获取效率。通过这个实验简单记录一下。1.创建...
【SQLLDR】使用SQL*Loader辅助生成外部表创建语句
如果想使用外部表技术完成数据的加载,一般的步骤如下:1.因为外部表需要directory对象,首先需要创建一个directory数据库对象;2.需要对创建外部表所需的参数和格式非常了解,以便完成外部表创建语句的...
【进制转换】十进制与十六进制相互转换方法
Oracle提供的to_char和to_number函数在进制转换上也有贡献。简单演示一下。1.使用TO_CHAR函数将十进制数转换为十六进制数的方法和效果如下sec@ora10g> select TO_CHAR (1, 'XX') as "1", 2 &...
【UNDO】使用重建UNDO表空间方法解决UNDO表空间过大问题
经过之前的大数据量测试,目前系统中的undo表空间被撑大到近20G。释放其占用的空间的工作摆在案头。通过此文将此项维护工作做一个简单梳理,供大家参考。思路很简单,就是通过启用一个新的undo表空间,然后...
【Direct-Path】直接路径加载提升插入效率及其自身限制
在加载大量数据的时候,可以考虑使用直接路径加载技术来加速。不过该技术本身也存在一些弊端,在使用前需要权衡利弊。本文将通过实验介绍该技术的一些点滴细节,供大家参考。1.初始化实验用表共两张表。表t...
【INSERT】逐行提交、批量提交及极限提速方法
在Oracle数据库中,不是提交越频繁越好。恰恰相反,批量提交可以得到更好的性能。这篇文章给大家简单展示一下在Oracle数据库中逐行提交于批量提交两者之间的性能差别。最后再给出一种可以极大改变性能的方法。1....
【Shell】使用脚本实现数以千计HTML文件中图片名小写转换需求
今天友情客串了一回HTML工程师,协助我们“美工王”完成了一个比较耗时的调整需求。分享在这里,供大家参考。“美工王”的需求:当前目录及子目录下的html文件中引用图片的名字存在大小写不一致的问题,为了...
【探索】两种查询和删除重复记录的方法及其性能比较
这里我来给出两种查询和删除重复记录的方法,一种是使用rowid辅助完成的,另外一种是借助分析函数的力量来完成的。这两种方法的执行效率相对其他方法是高效的。即便如此,这两种方法之间也有着本质上的...
【SCRIPTS】将用户具有的所有权限尽收眼底
如何快速的在SQL*Plus中获得特定用户所具有的所有权限?针对这个常见的问题我今天编写了一段简单脚本,供大家参考(当然您也可以在此基础上做进一步的改动,把它变成自己的一个小武器)。1.Oracle数据库...
【区别】Oracle官方文档中有关NVARCHAR2、VARCHAR2和VARCHAR数据类型的描述
Oralce官方文档“Datatypes”部分对NVARCHAR2、VARCHAR2以及VARCHAR有一段描述,可以清晰得到它们的区别。罗列在此,供大家参考。【链接】http://download.oracle.com/docs/cd/B19306_01/server.102/b14...