案例:利用shell脚本spool数据到一指定文
!/usr/bin/sh################################ 1.define #################################----------1.1_set param-------##数据库用户名ORA_USER=xxx#数据库用户密码ORA_PASS=xxx#登陆本地命名(也即@后的连接串)ORA_LOCAL_NAME=db80#存放导出数据的本地路径DataPath='/home/oracle/'echo "======================================================================="echo "database username: ${ORA_USER}"echo "the path of the file: ${DataPath}"##############################
知道10条以上你就是知识最渊博的人了
01 : 人类全身上下,最强韧有力的肌肉,竟是舌头。 02 : 张开眼睛打喷嚏是不可能的。 03 : 憋气自杀也是不可能成功的。 04 : 每一次你舔一张邮票的背胶,你就吸收了十分之一卡路里。 05 : 右撇子平均比左撇子多活九年。 06 : 鳄鱼无法伸出它们的舌头。 07 : 北极熊都是左撇子。 08 : 某些狮子可以一天之内交配50次以上。果真是万兽之王呀09 : 鸵鸟的眼睛比脑袋大;而海星至今还没演化出脑。 10 : 跳蚤可以跳过它们350倍身长的距离,相当于一个人跳过一个美式足球场。 11 : 一只被摘掉头的蟑螂可以存活9天,9天后死亡的原因则是过度饥饿? 所
最近在给学员授课时提到的一些细节问题归纳
1、数据库打开时的备份在表空间层完成,要完成整个数据库的打开备份,数据库中的所有表空间均需完成上述过程,数据库打开时的物理备份也被称为热备份或非一致性备份,数据库关闭时的物理备份也被称为冷备份或一致性备份。2、如果数据库在备份前已经正常关闭,那么在线日志文件对于完全恢复数据库就不是必须的。3、for a multifile tablespace,when one datafile is taken offline,only data contained inside that datafile cannot be accessed.the tablespace still remains available.4、need to restore archived redo log files to a
案例:oracle中case when的用法
例子1、最近支持同事做报表,特提供数据源的sql脚本,当中就用到了case when。主要的视图结构如下:create or replace view v_card_channel_count5( icpcode,sumarea,count1201,count1202,count1203,count1204,count1205, count1206,count1207,count1208,count1209,count1210,count1211,count1212, count1213,count1214,count1215,count1216,count1217,count1218,count1219,count1220, count1221,count1222,count1223,count1224,count1225,count1226,count1227,count1228, count1229,count1230
案例:有关job的管理
查询当前系统正在运行的job,可通过数据字典dba_jobs_running来获取,也可采用如下的语句来获取:select /*+ RULE */ v.SID, v.id2 JOB, j.FAILURES, LAST_DATE, substr(to_char(last_date,'HH24:MI:SS'),1,8) LAST_SEC, THIS_DATE, substr(to_char(this_date,'HH24:MI:SS'),1,8) THIS_SEC, j.field1 INSTANCEfrom sys.job$ j, v$lock vwhere v.type = 'JQ' and j.job (+)= v.id2;几点注意的地方:1、查询dba_jobs_running会一直挂着不动,说明有bug出现;2、对job进行remove后要commit才行(比较怪异);3、可对job进行broken;
v$sqlarea,v$sql,v$sqltext三个视图的区别
V$SQL:Child cursor details for V$SQLAREAV$SQLAREA:Shared pool details for statements/anonymous blocksV$SQLTEXT:SQL text of statements in the shared poolv$sql的每一行表示的是每一个sql语句的一个版本,而v$sqlarea存放的是相同语句不同版本一个group by汇总。v$sql与v$sqlarea的源都是X$KGLCURSORv$sql及v$sqlarea存放着统计信息在调优时使用居多,但其sql是不全的,如果想获得完整的sql需使用v$sqltext。v$sqltext中存储的是完整的SQL,SQL被分割。SQL> desc v$sqltextName Type Nullable Default Comme
案例4:不完全恢复
SQL> alter system switch logfile;系统已更改。SQL> alter system switch logfile;系统已更改。SQL> select * from test; A---------- 1SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;TO_CHAR(SYSDATE,'YY-------------------2006-12-16 21:06:13SQL> drop table test;表已丢弃。SQL> shutdown immediate;数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL> startup;ORACLE 例程已经启动。Total System Global Area 59842188 bytesFixed Size 454
案例3:基于cancel的不完全恢复
SQL> alter system switch logfile;系统已更改。SQL> alter system switch logfile;系统已更改。SQL> select * from test; A---------- 1SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;TO_CHAR(SYSDATE,'YY-------------------2006-12-16 21:06:13SQL> drop table test;表已丢弃。SQL> shutdown immediate;数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL> startup;ORACLE 例程已经启动。Total System Global Area 59842188 bytesFixed Size 454
案例2:用cancel恢复redo的过程.
案例2:用cancel恢复redo的过程.SQL> insert into test values(2);已创建 1 行。SQL> commit;提交完成。SQL> shutdown immediate;数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。rem 采用os命令删除所有的redo文件.SQL> startupORACLE 例程已经启动。Total System Global Area 59842188 bytesFixed Size 454284 bytesVariable Size 37748736 bytesDatabase Buffers 20971520 bytesRedo Buffers 667648 bytes数据库装载完毕。ORA-00313: 无法打开日志组 1
案例1:用命令清空日志组(非current)的恢复.
案例1:用命令清空日志组(非current)的恢复.SQL> create table test(a number(12));表已创建。SQL> insert into test values(1);已创建 1 行。SQL> shutdown immediate;ORA-01097: 无法在事务处理过程中关闭 - 首先提交或返回SQL> commit;提交完成。SQL> select * from v$log;GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS---------- ---------- ---------- ---------- ---------- --- ----------------FIRST_CHANGE# FIRST_TIME------------- ----------1 1 26 31457280 1 NO CURRENT196339 15-12月-062 1 24 314572
化妆从护肤开始
中午和女孩子们一起共享自备的午餐时,闲聊起化妆方面的话题,我是主张自然、健康的美,不过有些特殊的场合,还是需要粉妆出席的。经常使用彩妆会伤害到我们的皮肤,所以我提倡:先保护皮肤,再上淡妆,有需要的时候,彩妆出场。要强调的是----彩妆后一定要做好皮肤清洁的工作,之后敷上保养品。首先,先让大家认识一下自己的皮肤属于什么类型的? 人的皮肤按其皮脂腺的分泌状况,一般可分为四种类型。即:中性皮肤、干性皮肤、油性皮肤和混合性皮肤。但在实际操作过程中,敏感性皮肤、痤疮性皮肤也是常见的皮肤。各类皮肤具有各自不同
清洁脸部肌肤
在清洁脸部彩妆与污垢的同时配以轻柔的按摩,帮助促进脸部的血液循环,为脸部带来自然红润的健康色泽。制造丰富泡沫 如果是液状的洗面露,有专用的制造泡沫的瓶子,就像市售洁面泡沫的那个瓶子一样,不过me不建议大家用市售洁面泡沫,因为它会使面部肌肤过度清洁,有紧绷感,破坏了皮肤天然的保护屏障,虽然洗干净了,但是得不尝失哦~还是自己动手打泡吧~至于膏状洗面奶如何打泡是有难度啊~,我用的克丽缇娜的洁面膏,是可以揉出丰富的泡沫的。~其实把洗面奶放手心揉搓几下,再以五点法抹到脸上就可以咯~此举目的是为了不让洗面奶局部
不可轻饶的十大类穿衣错误
我要个性,我要百变,我要我的与众不同,没问题,怎么打扮都可以,这是你自己的事情,可是按照自己的想法打扮出来了,有没有想过自己是不伦不类的,一起来看看,哪些容易让你出错,在个性的同时别忘记偶尔追求一些“和谐”…… 第一名:裙袜不搭调 当选理由:践踏流行。今年,各种各样的裙装大肆流行,彩色袜子更是彰显流行的要义。紫色、粉红、姜黄、绿色等都是时尚前端的色彩,格外光鲜。可如果你穿着一条黑色的长裙,若隐若现的开衩处却呈现出光鲜的姜黄色,就实在有点践踏流行了。 今年的袜色,让你美腿毕露,既性感俏皮,
怎样喝水皮肤才有效吸收
开场白:喝水是美容最基本的一项技能,怎么喝才能达到预想的效果,这是有讲究的。教你一天喝水行程表,真正有效的喝水才能让身体真正有效吸收…… 喝什么水? 饮好水 尽量避免常饮蒸馏水(一般蒸馏水的水性太酸,容易伤害身体,对肾脏较弱的人士则更为不利),可选择优质的矿泉水。如可以的话,饮用碱性水对人体最有利;否则,在家用滤水器过滤后煮熟再喝亦无不可。 饮暖水 很多人喜欢饮冰水。其实冰水对胃脏功能不利,饮暖开水更为有益,因为这有助于身体吸收。 如何饮水? 空腹饮水 当然,饮水随时都可以,口渴
昨天讲课时整理的几个知识点
1、进行联机表空间的备份时,所有对这个表空间的修改不进入数据文件,而是进入重做日志文件。而且是一个block一个block的进入。所以,备份完要尽快结束,不然,重做日志的数据增长飞快。平时,数据文件是一个block一个block的写入,重传日志文件是一条一条的写入;2、刷新物化视图时对应的索引也会跟着刷新;3、alter system archive log current 就是手工归档当前活动的日志组,一般数据库只有在日志切换时才会归档被切换的日志alter system switch logfile 是切换当前日志到下一个日志,如果数据库是归档模式,那么被切换的日志将会被归
sql语句的优化案例分析
今天一测试人员提供过来一sql语句,结构如下:SELECT t.* FROM v_service t,(SELECT DISTINCT icpcode,icpservid FROM t_servcate2serv t1,(SELECT cateid FROM t_servcate START WITH cateid=1 and showflag=1 CONNECT BY PRIOR cateid = parentid and showflag=1) t2 WHERE t1.cateid=t2.cateid) t3 WHERE t.icpcode=t3.icpcode AND t.icpservid=t3.icpservid and (t.ServStatus='A' OR t.servstatus ='P' or t.servStatus='B' ) and (t.OnDemandFlag !=1 and t.OnDemandFlag!=2) and (t.accessmodeid=2 or t.accessmodeid=5 or ((t.
有关重做日志的状态及switch logfile时的不正常案例分析
首先回顾一下有关重做日志的状态:V$logfile:INVALID - File is inaccessibleSTALE - File's contents are incompleteDELETED - File is no longer usednull - File is in useV$log:UNUSED - Online redo log has never been written to. This is the state of a redo log that was just added, or just after a RESETLOGS, when it is not the current redo log.CURRENT - Current redo log. This implies that the redo log is active. The redo log could be open or closed.ACTIVE - Log is active but is not the current log. It is
对照你的生日查查你属于哪一棵树
12.23-01.01]]苹果树│01.02-01.11]]枞 树│01.12-01.24]]榆 树│01.25-02.03]]柏 树│02.04-02.08]]白杨树│02.09-20.18]]杉 树│ 02.19-02.28]]松 树│03.01-03.10]]柳 树│03.11-03.20]]椴 树│ 03.21-03.21]]橡 树│03.22-03.31]]榛子树│04.01-04.10]]花楸树│ 04.11-04.20]]枫 树│04.21-04.30]]胡桃树│05.01-05.14]]白杨树│ 05.15-05.24]]栗 树│05.25-06.03]]白蜡树│06.04-06.13]]角 树│ 06.14-06.23]]无花树│06.24-06.24]]桦 树│06.25-07.04]]苹果树│ 07.05-07.14]]枞 树│07.15-07.25]]榆 树│07.26-08.04
现场故障诊断案例
早上7:30被一医院的客户电话吵醒,说是监听无法正常监听客户端的链接.赶紧打车过去一看,果然如此.lsnrctl命令后再service和status一看,发现有一服务的实例监听不正常.listenter.log文件有300多M,tnsping是通的,重新配置后问题解决.但数据库无法正常open,提示rac的功能无法正常使用,经过了解后将部分cluster参数设置为false后重新启动,可正常启动.但关闭数据库的时候提示dispather的异常,数据库一直hung着.在"服务"中停止进程后重新设置mts的部分参数后系统一切正常.[@more@]
什么是并行查询及其原理
[@more@]在OLAP环境,以利用多的CPU和内存资源来加速处理数据,也即oracle的并行查询。单个CPU同一时刻只能服务一个进程,如果有多个CPU,提高CPU利用律,就可以同时运行多个进程。也就是原来单个进程处理的变成多个进程并行处理加速执行时间。并行执行只是在全表处理或者分区及在分区表中执行本地索引时用到。下面情况会用到并行查询:全表扫描、 rebuild index、update (全表或分区表)、insert的并行子查询、本地索引使用、批量插入,象SQLLDR、创建临时表比如我们执行select /*+ parallel(c1 ,2) */ ...from customers c1order by ...p