下面按类别列出一些ORACLE用户常用数据字典的查询使用方法。
一、用户
查看当前用户的缺省表空间
SQL>select username,default_tablespace from user_users;
查看当前用户的角色
SQL>select * from user_role_privs;
查看当前用户的系统权限和表级权限
SQL>select * from user_sys_privs;
SQL>select * from user_tab_privs;
二、表
查看用户下所有的表
SQL>select * from user_tables;
查看名称包含log字符的表
SQL>select object_name,object_id from user_objects where instr(object_name,'LOG')>0;
查看某表的创建时间
SQL>select object ......
很多朋友要我帮忙推荐一下Oracle的入门书籍,能够了解Oracle的基本概念、基本知识的那种。
我就免为其难,推荐几本。
首先我想强调的一点是,任何一本系统的Oracle书籍只要认真读下来,都会有不错的收获,读书最忌讳的是虎头蛇尾,浅尝则止。
1.第一本要推荐给大家的是Oracle的概念手册,这本手册是无数DBA学习的起点:Database Concepts
这是Oracle的官方文档,详尽的介绍了Oracle的基本概念,是DBA经常需要翻阅的参考书,也是最好的入门学习资料,如果大家阅读英文不存在问题,请先阅读本书,这本书可以在Oracle的官方文档站点Tahiti找到:
http://www.oracle.com/pls/db102/homepage?remark=tahiti
Oracle10gR2的下载地址为:
http://download-west.oracle.com/docs/cd/B19306_01/server.102/b14220.pdf
下载之前你可能需要注册一个OTN的免费帐号。如果你无法从官方站点下载,也可以通过本站下载这本手册:B14220。
当然我建议大家都从英文版开始你的阅读,即便你的英文不够好,但是如果你觉得还是有障碍,网络上已经有很多朋友将这本手册翻译成了中文,我打包了两个版本(如果CHM格式无法打开,请在右键属性页里选择解除锁定),提供下载:
http://www.eygle. ......
http://www.wangchao.net.cn/bbsdetail_1776477.html
第 13 章 物化视图
8.1.5企业版/个人版开始支持
需要权限:GRANT CREATE MATERIALIZED VIEW,还必须直接赋予GRANT QUERY REWRITE.为实现查询重写,必须使用CBO.
13.1 物化视图如何工作
设置
COMPATIBLE参数必须高于8.1.0
QUERY_REWRITE_ENABLED = TRUE
QUERY_REWRITE_INTEGRETY =
ENFORCED - 查询仅用Oracle强制与保证的约束、规则重写;
TRUSTED – 查询除用Oracle强制与保证的约束、规则,也可用用户设定的数据间的任何关系来重写;
STALE_TOLERATED – 即便Oracle知道物化视图中数据过期(与事实表等不同步),也重写查询。
创建物化视图的用户必须具有直接赋予的GRANT QUERY REWRITE权限,不能通过角色继续。
内部机制
全文匹配
部分匹配:从from子句开始,优化器比较之后的文本, ......
转自:http://www.cnblogs.com/houxm/archive/2009/08/26/1554481.html
详解:http://sunwayle.blog.51cto.com/114995/102516
Oracle 回收站功能,彻底删除表
Oracle 10g
中出现表名:BIN$2cMp4FjwQ2Cw3Lj+BxLYTw==$0
最近发现Oracle中出现了这些奇怪的表名,上网查找后发现是oracle10g的回收站功能,并没有彻底的删除表,而是把表放入回收站,最后就出现了
这样一堆奇怪的表名。。。。
一、清除的方法如下:
1、purge table origenal_tableName;
purge index
origenal_indexName;
2、PURGE recyclebin;
二、查询垃圾信息,可以用如下SQL语句:
SELECT t.object_name,t.type
,t.original_name from user_recyclebin t;
三、删除Table不进入Recycle的方法:
drop table tableName purge;
......
你是否为等待你的查询返回结果而感到疲惫?你是否已经为增强索引和调优SQL而感到疲惫,但仍然不能提高查询性能?那么,你是否已经考虑创建物化视图?有了物化视图,那些过去需要数小时运行的报告可以在几分钟内完成。物化视图可以包括联接(join)和集合(aggregate)
你是否为等待你的查询返回结果而感到疲惫?你是否已经为增强索引和调优SQL而感到疲惫,但仍然不能提高查询性能?那么,你是否已经考虑创建物化视图?有了物化视图,那些过去需要数小时运行的报告可以在几分钟内完成。物化视图可以包括联接(join)和集合(aggregate),它提供了一种储存预计算结果的方法。
在执行一个查询时,优化器会判定访问物化视图或数据驻留的基础表是否更快一些。如果优化器判定查询物化视图是更好的解决方案,那么优化器会在一个被称为“查询改写”(query rewrite)的过程中改写SQL查询。在这个过程中,不需要对任何SQL或应用程序代码进行修改,所以任何利用SQL访问数据库的应用程序或特定查询工具都可得益于使用物化视图。当为计算结果而需要访问的数据数量远大于结果(如集合)的大小时,最适合使用查询改写,但是它也可被用于加速昂贵的联接或规划。
本文首先介绍 ......
Checkpoint
很多人都把checkpoint的概念给复杂化了,其实checkpoint这个数据库概念引入的真正意义就是用来减少在数据库
恢复过程中所花的时间(instance recovery),那么checkpoint是由谁来做的呢?我们都知道数据库中有个CKPT进程,这是个
可选进程,但是真正执行检查点的任务并不是由ckpt来完成的,而是ckpt在更新控制文件和数据文件头的有关信息后,通知
DBWn进程,产生一个检查点,在产生检查点的时候,DBWn进程会将buffer cache中的脏数据(当前online redo log对应的脏
数据),写入我们的数据文件当中。这个时候如果数据库此时崩溃(比如我们做个shutdown abort),那么在进行实例恢复的
时候就可以不需要当前online redo log的内容了,会很快就做完。因此ckpt进程只是个辅助进程,他的任务更多的是用来
在系统做checkpoint的时候更新控制文件和数据文件头中的信息。其实在oracle 8i的时候呢,ckpt的任务一般都是由lgwr
进程来完成,到了8i以后,随着CKPT进程的引入,lgwr的工作负担就减轻了很多(commit的速度加快了)
那么如何来产生检查点呢?
&n ......