随笔分类 - Oracle Basic
SQL, Oracle Objects, Commands, etc.
摘要:--execute和call的区别-------------------------2014/01/14EXEC is a sqlplus command that put its argument as an anonymous pl/sql block: 'EXEC xxx' is transformed to 'BEGIN xxx; END;'So you can use it to call a procedure, or do any pl/sqlIt is documented here:http://download.oracle.com/docs
阅读全文
摘要:一.DBA_TABLESPACE_USAGE_METRICS 视图的理论说明群里一朋友说使用dba_tablespace_usage_metrics视图查看表空间的结果不正确,如下:dba_tablespace_usage_metrics视图在oracle 10g中引入,但未公开。 到了Oracle11g公开了这个视图。因为在Oracle 10g里可以使用这个视图,但是在官网文档里看不到说明,但是在11g的官方文档里可以查看到该视图的说明。Oracle 11g中对这个视图的说明如下:DBA_TABLESPACE_USAGE_METRICSdescribestablespace usage me
阅读全文
摘要:--Oracle进程与系统进程--------------------------2013/11/25这里讨论Linux/Unix环境下,oracle v$process与操作系统对应的关系。系统端:[Oracle@localhost ~]$ ps -ef |head -1 ;ps -ef |grep ora |sort -r +1n -2 | grep -v grepUID PID PPID C STIME TTY TIME CMDOracle 1108 2606 0 Nov23 ? 00:00:01 [oracle] Oracle...
阅读全文
摘要:--查看表、视图、索引、存储过程、触发器和包的定义-------------------------------------------------2013/11/23查看表的定义: set long 999999 select dbms_metadata.get_ddl('TABLE',upper('&table_name') ) from dual ;查看视图的定义: select text from user_views where view_name=upper('&view_name') ;查看index的定义: sel
阅读全文
摘要:--Connect By、Level、Start With的使用--------------------------------------2013/11/20Syntax 1CONNECT BY[NOCYCLE] START WITHSyntax 2START WITHCONNECT BY[NOCYCLE] 参考网址:http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:489772591421 http://psoug.org/reference/connectby.html http://w...
阅读全文
摘要:--调整ORACLE用户关闭密码有效期----------------------------------2013/11/12在oracle中执行一下操作:1、查看用户的proifle是那个,一般是default:sql>SELECT username,PROFILE FROM dba_users;2、查看指定概要文件(如default)的密码有效期设置:sql>SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';3
阅读全文
摘要:--[INS-30060]:Check for group existence failed-------------------------------------------------2013/11/06今天在Oracle Linux上面安装Oracle 11g2R,一直报这个错误,根据有的网友反映或许是/tmp的全新问题,我尝试过,可是依旧没能解决。由于我自己是确认group信息是没问题,按照oracle的提示,带参数./runInstaller -ignoreInternalDriverError安装解决问题,就是不知道后期会不会有什么问题。--续在接下来的安装中就出错了,最好还是解
阅读全文
摘要:--orakill和ALTER SYSTEM KILL SESSION详解【转】-----------------------------------------2013/11/05一个用户进程偶尔会挂起或占用过多资源而拒绝其它会话。如果DBA依然能够访问数据库,她通常可以发出以下查询:select s.username, s.osuser, s.sid, s.serial#, p.spidfrom v$session s,v$process pwhere s.paddr = p.addrand s.username is not null;select 'alter system k
阅读全文
摘要:下面我们要讲ORACLE服务器进程如何处理用户进程的请求,当一个用户进程发出了一条SQL语名: UPDATE TABBLEA SET SALARY=SALARY*2; 首先,服务器进程把这条语句的字符转换成ASCII等效数字码,接着这个ASCII码被传递给一个HASH函数,并返回一个HASH值,服务器进程将到SHARED POOL的共享PL/SQL区去查找是否存在同样的HASH值,如果存在,服务器进程将使用这条语句已高速缓存在SHARED POOL中的已分析过的版本来执行,如果不存在,服务器进程将对该语句进行语法分析,首先检查该语句的语法的正确性,接着对语句中涉及的表、索引、视图等对象进行..
阅读全文
摘要:将指定用户下所有表的查询权限赋权给查询用户[转]-----------------------------------------------2013/11/1oracle的开发和管理往往都是分开的,当然不否认这种"集万千宠爱于一身"的人才也大有人在,但是在公司,往往开发人员兼顾程序和数据库的设计与开发,而oracle dba则是负责oracle的安全与维护。那么这就出现了一个问题,权限问题,不是所有人都可以有dba权限的,这样很容易造成不安全的隐患。所以要合理的分配用户和权限。以下举例说明:一、创建了一个查询用户rptuser,该用户具有scott(根据公司具体要求替换用
阅读全文
摘要:--db link的查看创建与删除----------------------------2013/10/301.查看dblinkselect owner,object_name from dba_objects where object_type='DATABASE LINK';或者select * from dba_db_links;2.创建dblink前提: 创建dblink的用户有对应的数据库权限: create public database link 或者create database link授权: grant create public database lin
阅读全文
摘要:--自动生成AWR报告-------------------2013/09/23脚本代码:#!/bin/bashAWR_FORMAT=htmlNUM_DAYS=1MAX_SNAP_ID=`sqlplus -S / as sysdba /dev/null
阅读全文
摘要:Oracle安装oraInventory问题-----------------------------2013/10/15在使用安装Oracle软件或者使用dbca创建数据库时,所有的日志都会放在oraInventory这个目录下。默认情况下该目录会在$ORACLE_BASE/oraInventory,但是我们也可以通过更改/etc/oraInst.loc文件来指定具体的路径:假设想修改该目录的路径可以修改oraInst.loc 文件在linux下:该文件路径为/etc/oraInst.loc在hpunix下:该文件路径为/var/opt/oracle/oraInst.loc今天我在安装ora
阅读全文
摘要:索引的排序问题-----------------2013/10/09Oracle Concept:3-7 Indexes and Index-Organized TablesFull Index Scan: A full scan can eliminate sorting because the data is ordered by index key.引发思考,是否索引是保持有序的?网友解释:在一个非惟一索引中,Oracle会把rowid作为一个额外的列(有一个长度字节)追加到键上,使得键惟一。例如,如果有一个CREATE INDEX I ON T(X,Y)索引,从概念上讲,它就是CREA
阅读全文
摘要:Oracle维护:每天的工作检查数据库状态确认所有的INSTANCE状态以及listener状态正常,登陆到所有数据库或例程,检测ORACLE后台进程:$ ps –ef|grep ora$ lsnrctl statusSQL> select status from v$instance;检查文件系统如果文件系统的剩余空间过小或增长较快,需对其进行确认并删除不用的文件以释放空间。$df –k$df -h检查警告日志文件(alert_SID.log)Oracle在运行过程中,会在警告日志文件(alert_SID.log)中记录数据库的一些运行情况:数据库的启动、关闭,启动时的非缺省参数;数据
阅读全文
摘要:latch相关视图整理(原创)V$LATCHV$LATCH视图在选取X$KSLLT记录时,进行了Group By及SUM运算,从而得出了一个汇总信息,保存了自实例启动后各类栓锁的统计信息。常用于当v$session_wait中发现栓锁竞争时鉴别SGA区中问题所在区域。v$latch表的每一行包括了对不同类型latch的统计,每一列反映了不同类型的latch请求的活动情况。不同类型的latch请求之间的区别在于,当latch不可立即获得时,请求进程是否继续进行。按此分类,latch请求的类型可分为两类:willing-to-wait和immediate。Willing-to-wait:是指如果所
阅读全文
摘要:oracle常用视图介绍---------------------2013/10/04(last updated)dba_开头: dba_users 数据库用户信息 dba_segments 表段信息 dba_extents 数据区信息 dba_objects 数据库对象信息 dba_tablespaces 数据库表空间信息 dba_data_files 数据文件设置信息 dba_temp_files 临时数据文件信息 dba_rollback_segs 回滚段信息 dba_ts_quotas 用户表空间配额信息 dba_free_space 数据库空闲空间信息 dba_profiles 数据
阅读全文
摘要:--=====================-- 数据库与监听之间的关系--=====================监听是一个对外服务的窗口,有客户端的请求过来,它就应答。监听就好像是一个容器,实例在启动的时候会向监听中注册。如果没有监听启动,实例也可以启动,但是就是不能接受的客户端的请求。服务器端自己的请求是没问题的。需要说明的就是,他们没有依赖关系。不存在哪个对数据库对应哪个监听,是单独分离的。
阅读全文
摘要:--=====================--手动删除oracle数据库--=====================在很多情况下,或无法使用dbca工具的时候,我们需要手动来删除数据库。对此,可以借助drop database命令来实现,下面的描述中给出手动删除数据库的具体步骤,包含文件系统数据库以及ASM数据库。环境:OracleEnterpriseLinux5.4+ Oracle10gR2.一、手动删除文件系统数据库1.停止监听与OEM$ lsnrctlstoplistener_name$ emctlstopdbconsole2.获得数据文件,日志文件及控制文件的相关信息,包含归档$
阅读全文
摘要:Oracle SQL优化1.选用适合的ORACLE优化器ORACLE的优化器共有3种:a.RULE (基于规则)b. COST (基于成本)c. CHOOSE (选择性)设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS .你当然也在SQL句级或是会话(session)级对其进行覆盖.为了使用基于成本的优化器(CBO, Cost-Based Optimizer) ,你必须经常运行analyze命令,以增加数据库中的对象统计信息(object statistics)的准确性.如果
阅读全文