限制某段或某个IP登陆
通过对oracle参数文件的设置,可以控制访问计算机的ip地址。在配置文件sqlnet.ora中增加:#开启对ip地址的检查tcp.validnode_checking=yes#允许访问的iptcp.invited_nodes=(ip1,ip2……)#禁止访问的ipTCP.excluded_nodes= (ip1,ip2……)然后重启LISTENER就可以了下面这种会产生额外的成生,对性能有一定的影响create or replace trigger afafter LOGON on databasebegin if(sys_context('userenv','ip_address') = '168.9.200.10') then raise_application_error(-20001,'refuse'); end if;end;/[@more@]
Oracle中查看已执行sql的执行计划
摘自:http://space.itpub.net/7607759/viewspace-445628有时候我们可能会希望查看一条已经执行过的sql的执行计划,常用的方式有两种:a,set autotrace后再重新执行一遍,不过重新执行可能会浪费时间,而且有些语句也不允许(例如修改操作的语句),或者查询v$sql_plan视图,但v$视图的可读性又不是那么好,这里提供一个新方式,通过dbms_xplan.display_cursor来获取执行过的sql的执行计划。首先看看该函数的语法:DBMS_XPLAN.DISPLAY_CURSOR(sql_id IN VARCHAR2 DEFAULT NULL,child_number IN NUMBER DEFAULT NULL,format IN VARCHAR2 DEFA
查询oracle中主外键列
一、查询表主键列select column_name from dba_cons_columns where constraint_name in (select constraint_name from dba_constraints where table_name = upper('tablename') and constraint_type = 'P');二、查询表外键列select column_name from dba_cons_columns where constraint_name in (select constraint_name from dba_constraints where table_name = upper('tablename') and constraint_type = 'R');三、查询表中列select column_name from dba_tab_columns where table_name = upper('tablename');四、查询表之间的主外键关
重建控制文件
在MOUNT下重建控制文件:alter database backup controlfile to trace;查找生成的文件:SELECT a.VALUE||b.symbol||c.instance_name||'_ora_'||d.spid||'.trc'TRACE_FILE_NAME FROM (SELECT VALUE FROM v$parameter WHERE NAME='user_dump_dest') a, (SELECT SUBSTR(VALUE,-6,1) symbol FROM v$parameter WHERE NAME='user_dump_dest') b, (SELECT instance_name FROM v$instance) c, (SELECT spid FROM v$session s,v$process p,v$mystat m WHERE s.paddr=p.addr AND s.SID=m.SID AND