查找N天前的文件
查找N天前的文件find directory -mtime +N查找N天前的文件并删除它们find directory -mtime +N -exec rm {} ;[@more@]
catch DDL by DDL trigger
1. Create a table to store DDL informationcreate table ddl$trace(login_user varchar2(50),ddl_time date,ip_address varchar2(50),audsid varchar2(50),schema_user varchar2(20),schema_object varchar2(50),ddl_sql varchar2(500));[@more@]2. Create a trigger which will be triggered while DDL executedCREATE OR REPLACE TRIGGER tr_trace_ddl after DDL ON DATABASE declare sql_text ora_name_list_t; state_sql ddl$trace.ddl_sql%TYPE; BEGIN FOR i IN 1..ora_sql_txt(sql_text) LOOP state_sql := state_sql||sql_text(i
unix里按日期格式命名文件
#date '+%Y%m%d' | awk '{ print $1 }'20061019#date '+%Y%m%d' | awk '{ print $1-1 }'20061018...........................................bash-2.03# more main.sh#!/bin/shdt=`date '+%Y%m%d' | awk '{ print $1-1 }'`mv billing_detail.xls billing_detail_${dt}.xls[@more@]
建物化视图需要的权限
GRANT CREATE MATERIALIZED VIEW TO xxxxx[@more@]
取N年后的日期
select add_months(sysdate,12) from dual;[@more@]select add_months(sysdate,12的整数倍) from dual;
PLS-00103 appears in the last row
把脚本COPY出来,删掉最后的"/;",再执行就可以了。[@more@]
export spfile to txt
SQL> create pfile='initsid.ora' from spfile;[@more@]
exp-00024 issue
re-execute $ORACLE_HOME/rdbms/admin/catexp.sql[@more@]
Difference between connection and session
Connection and session are closely related to user process but are very different in meaning.[@more@]A connection is a communication pathway between a user process and an Oracle instance. A communication pathway is established using available interprocess communication mechanisms (on a computer that runs both the user process and Oracle) or network software (when different computers run the database application and Oracle, and communicate through a network).A session is a specific connection of
session与process之间的关系
ORACLE的连接数(sessions)与其参数文件中的进程数(process)有关,它们的关系如下: sessions=(1.1*process+5)[@more@]
Something about rownum
rownum是ORACLE按记录插入的先后顺序分配给记录的序号顺序跟rowid相同只能用在 rownum=1 或 rownum<n可以通过子查询来改变结果中rownnum的顺序(子查询中使用分组)[@more@]
oracle9i切换undotbs
CREATE undo TABLESPACE UNDOTBS1 DATAFILE '/disk1/oradata/test/undotbs1.dbf' SIZE 2000M reuse AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED;alter system set undo_tablespace=undotbs1 scope=both;前提:启用spfile[@more@]
oracle9i启用spfile
CREATE SPFILE='$ORACLE_HOME/dbs/spfilesid.ora'FROM PFILE='$ORACLE_HOME/dbs/initsid.ora'; 重启。[@more@]
因数据文件丢失导致ORA-01157错误
start up数据库的时候报错:ORA-01157: cannot identify/lock data file 5 - see DBWR trace file ORA-01110: data file 5: '/disk3/oradata/test.dbf' 因为不需要恢复此数据文件,所以将它删除即可。解决方法:在数据库mount的状态下,alter database datafile '/disk3/oradata/test.dbf' offline drop;然后打开数据库:alter database open;删除表空间:select name from v$tablespace where ts# in(select ts# from v$datafile where name = '/disk3/oradata/test.dbf');drop tablespace NAME including contents;[@more@]
sql语句中字符串内单引号的问题
希望输出 'test'语句: select '''test''' from dual;即:字符串内包含单引号的时候,在sql中需要用两个单引号代替。双引号不变。[@more@]
用sqlplus '/as sysdba'跟用户组有关系
新建的用户oracle,组定义为oinstall,用sqlplus '/as sysdba'登陆报权限不够,用usermod将组改为dba后解决。[@more@]
SQL*PLUS报表功能
SQL*PLUS的一些基本格式命令 column deptno heading department column ename heading name column sal heading salary column sal format $99,999.00 ttitle sample report for|hitech corp btitle strictly confidential break on deptno compute sum of sal on deptno run [@more@]表头和表尾 ttitle sample report for|hitech corp btitle right strictly confidential “|”表示换行,结尾不必加分号 选项有三种:left right center 使用TTITLE,系统将自动地在每页的顶部显示日期和页号。 TTITLET和BTITLE命令有效,
oracle9i中修改列名
alter table table_name rename column XXX to XXX [@more@]
dba_sequences中cache_size的含义
每次取出cache_size个值,放在cache里。last_number每次增加的值=INCREMENT_BY*CACHE_SIZE[@more@]