《追寻生命的意义》--后记
我们已经指出了生命的意义是会改变的,但永远不失其为意义,按照意义治疗学,我们能以三种不同的途径去发现这意义: (1)创造、工作。(2)体认价值。(3)受苦。第一种,显然是功绩或成就之路。第二与第三种途径,则需要进一步的详细说明。第二种途径是经由体验某种事物,如工作的本质或文化;或经由体验某个人...
expdp指定时间戳导出防止数据不一致
expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp FLASHBACK_TIME=“TO_TIMESTAMP(’25-08-2004 14:35:00’,’DD-MM-YYYY HH24:MI:SS’)”
关于字节序
在V$TRANSPORTABLE_PLATFORM中有一列ENDIAN_FORMAT,reference的解释为Platform endian format:BigLittleUNKNOWN FORMAT关于字节序有如下解释:在计算机中最小的单位是一个字节,不过一个字节能表示的范围太小了,我们可以将一个字节理解成一个0-9间的任何一个数字, 因此我们要表示一个千位数时就需要四位来表示, 给定...
with优化妙用
--语法:/*with alias_name1 as (subquery1), alias_name2 as (subQuery2), …… alias_nameN as (subQueryN) select col1,col2…… col3 from alias_name1,alias_name2……,alias_nameN &nb...
rolllup巧用
--构造环境drop table dept purge;drop table emp purge;create table dept as select * from scott.dept;create table emp as select * from scott.emp;------------------------------------------------------------------------------------------------------------------------------------------------...
使用with子句优化代码中重复查询
/*好处: 1. 性能更好,一份复制(类似SYS_TMP...),多份使用。 2. 结构清晰,预先定义。 3. 代码修改不必修改多处。 请注意观察语句1和语句2执行计划的差异,尤其是语句2的SYS_TEMP_0FD9D6605_3B91BA4这些奇怪的命名。其实这就表示是...
限定filesize的数据泵导入导出操作案例
使用如下方法导入导出expdp sh/sh dumpfile=ycr_%U.dump directory=exp filesize=2mimpdp sh/sh dumpfile=ycr_%U.dump directory=exp
三种链接方式的区别
1 nested loops join--我们用设置statistics_level=all的方式来观察如下表连接语句的执行计划:--T2表被访问100次(驱动表访问1次,被驱动表访问100次)--这个set linesize 1000对dbms_xplan.display_cursor还是有影响的,如果没有设置,默认情况下的输出,将会少了很多列,如BUFFERS等Set linesize 1000alter sessio...
INDEX SKIP SCAN适用场景
--请记住这个INDEX SKIP SCAN扫描方式drop table t purge;create table t as select * from dba_objects;update t set object_type='TABLE' ;commit;update t set object_type='VIEW' where rownum<=30000;commit;create index idx_type_id on t(object_type,object_id);exec dbms_stats.gather_table_stat...
INDEX FULL SCAN和INDEX FAST FULL SCAN区别
---请记住这个INDEX FULL SCAN扫描方式,并体会与INDEX FAST FULL SCAN的区别drop table t purge;create table t as select * from dba_objects;update t set object_id=rownum;commit;alter table T modify object_id not null;create index idx_object_id on t(object_id);set autotrace traceonlyset li...
索引反向使用案例,加index_desc hint
drop index idx_t;create index idx_t on t(owner desc,object_type asc);select /*+index(a,idx_t)*/ * from t a order by owner desc ,object_type asc;执行计划-------------------------------------------------------------------------------------| Id | Operation  ...
偷懒写脚本中特殊符号的转译
select 'alter database datafile '||''''||name||''''||'resize 100m;' from v$datafile;输出结果为alter database datafile '/u01/app/oracle/oradata/PROD1/system01.dbf'resize 100m;alter database datafile '/u01/app/oracle/oradata/PROD1/sysaux01.dbf'resize 100m;alter database datafile '/u01/app/oracle/o...
DB_NAME DB_UNIQUE_NAME 和 SID 的理解
1. DB_NAME 表示数据库名称,DB_NAME 会保持在数据文件头、控制文件、REDO文件里,所以更改DB_NAME不能仅仅修改spfile ,还需要用nid 来进行更改,并且更改后还需要手工做些工作,使其生效。DB_NAME 最长 8 个字符。2. 在 DG下,主库和物理从库的 DB_NAME 是一致的,主库和物理从库的DB_UNIQUE_NAME 不同,DB_UNIQUE_NA...
Oracle 死锁处理
一、数据库死锁的现象程序在执行的过程中,点击确定或保存按钮,程序没有响应,也没有出现报错。二、死锁的原理当对于数据库某个表的某一列做更新或删除等操作,执行完毕后该条语句不提交,另一条对于这一列数据做更新操作的语句在执行的时候就会处于等待状态,此时的现象是这条语句一直在执行,但一直没有执行成功...
secureCRT自动记录日志
为了方便记录自己的操作,和追究责任,我喜欢在secureCRT中记录日志方法如下:Options->Global Opations->Default Session->Edit Default Settings->Log File填写日志文件位置,勾选下方的Start Log upon connect位置位置我喜欢这么写:F:\crtlog\%H_%Y-%M-%D_%h%m%s.log...
契机,记一次吃坏肚子
小岩子不在家,又乱吃东西了,结果半夜2点肚子疼醒了,春节前,刚好为自己提了个醒,人总是这样吃了教训才长记性,否则别人怎么说都不听。开始吃素减肥吧,堕落了这么久了。
手工执行sql tuning advisor和sql access advisor
sql tuning advisor:创建任务DECLARE my_task_name VARCHAR2(30); my_sqltext CLOB;BEGIN my_sqltext := 'SELECT /*+ ORDERED */ * ' || 'FROM employees e, locations l, departments d ' || 'WHERE e.department_id = d.department_id AND ' || ...
awrsqrpt.sql使用方法,功能持续完善中
ORACLE_HOME/RDBMS/admin/awrsqrpt.sql 这个脚本可以很方便地取出某个sql在某两个快照间隔内,消耗cpu时间,执行次数,逻辑读,物理读,sql的执行计划以及sql的full sql text,对调优非常方便
PLSQL使用绑定变量
想对一个sql做10046trace,结果因为10g数据库无法对sql_id做,只能使用绑定变量的方法,下面sql是如何使用绑定变量运行sql的语句declare v_sql VARCHAR2(2000):= 'insert into regions values(:1,:2)';begin execute immediate v_sql using 11,'Japan';end;...
oracle回收站,搬运工
回收站(Recycle Bin)从原理上来说就是一个数据字典表,放置用户删除(drop)掉的数据库对象信息。用户进行删除操作的对象并没有被数据库删除,仍然会占用空间。除非是由于用户手工进行Purge或者因为存储空间不够而被数据库清掉。在Oracle 10g数据库中,引入了一个回收站(Recycle Bin)的数据库对象。回收站...