自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

nsj820的专栏

Oracle、Linux/UNIX、ETL is here!

  • 博客(17)
  • 资源 (3)
  • 收藏
  • 关注

原创 Oracle锁的学习

<br />Oracle数据库中的锁机制<br />数据库是一个多用户使用的共享资源。当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。<br />在数据库中有两种基本的锁类型:排它锁(Exclusive Locks,即X锁)和共享锁(Share Locks,即S锁)。当数据对象被加上排它锁时,其他的事务不能对它读取和修改;加了共享锁的数据对象可以被其他事务读取,但不能修改。<br />根据保护对象的不同,O

2010-06-30 22:42:00 10162 4

原创 PCTFREE, PCTUSED, INITRANS, MAXTRANS, FREELIST PARAMETERS

PCTFREE, PCTUSEDPCTFREE参数用于指定块中必须保留的最小空闲空间比例.之所以要为块保留一些空闲空间,是因为在对块中存储的数据进行修改时(UPDATE操作),有可能会需要更多的存储空间.这时如果块中存储空间不足,就必须分配新块,此时会产生指针,降低性能.而如果每块在最初填写数据时均不填满,保留一部分可用空间,比如20%,则可以尽量避免上述问题.PCTUSED参数用于指定一个百分比,当块中已经使用的存储空间降低到这个百分比之下时,这个块才被标记为可用.要形容一个 BLOCK 的运作,我们可以

2010-06-27 13:01:00 1681 1

原创 行链接(Row chaining) 与行迁移(Row Migration)

<br />当一行的数据过长而不能插入一个单个数据块中时,可能发生两种事情:行链接(row chaining)或行迁移(row migration)。<br />行链接<br />当第一次插入行时,由于行太长而不能容纳在一个数据块中时,就会发生行链接。在这种情况下,oracle会使用与该块链接的一块或多块数据块来容纳该行的数据。行连接经常在插入比较大的行时才会发生,如包含long, long row, lob等类型的数据。在这些情况下行链接是不可避免的。<br />行迁移<br />当修改不是行链接的行时,

2010-06-26 18:00:00 709

原创 Oracle表段中的高水位线HWM

<br />在Oracle数据的存储中,可以把存储空间想象为一个水库,数据想象为水库中的水。水库中的水的位置有一条线叫做水位线,在Oracle中,这条线被称为高水位线(High-warter mark, HWM)。在数据库表刚建立的时候,由于没有任何数据,所以这个时候水位线是空的,也就是说HWM为最低值。当插入了数据以后,高水位线就会上涨,但是这里也有一个特性,就是如果你采用delete语句删除数据的话,数据虽然被删除了,但是高水位线却没有降低,还是你刚才删除数据以前那么高的水位。也就是说,这条高水位线在日

2010-06-26 17:53:00 1011

原创 利用临时表、REF游标、动态SQL实现分页查询

<br />1、用到的源表表结构<br /> -- Create tablecreate table CUSTOMER( CUST_ID VARCHAR2(32) not null, CREATE_TIME TIMESTAMP(6) not null, CUST_NAME VARCHAR2(512), POINT_CMIS_ID VARCHAR2(20),

2010-06-26 14:48:00 1403 1

原创 oracle的正则表达式(regular expression)

<br />当前,正则表达式已经在很多软件中得到广泛的应用,包括Linux, Unix,HP等操作系统,PHP,C#,Java等开发环境,ORACLE则在10G中推出了自己的正则表达式。<br />Oracle 10g正则表达式提高了SQL灵活性,有效的解决了数据有效性,重复词的辨认, 无关的空白检测,或者分解多个正则组成的字符串等问题。<br />Oracle 10g支持正则表达式的四个新函数分别是:REGEXP_LIKE、REGEXP_INSTR、REGEXP_SUBSTR、和REGEXP_REPLAC

2010-06-24 12:35:00 750

原创 AIX系统利用Oracle取前N天日期

1、在Linux上可以用date -d "x days ago" +%Y%m%d命令取得X天以前的日期,但在AIX、HP-UX及WIN的BAT上就没有如此方便的命令了。在网上海找了半天,没发现较好的方法,最后想想何不SHELL结合ORACLE来做。本例是在AIX上试验,但在HP-UX上是一样的道理,应该也可以的,在DOS上的做法可以参考http://blog.csdn.net/nsj820/archive/2010/06/03/5645768.aspx中使用到的方法。2、AIX上SHELL脚本如下:main

2010-06-23 20:58:00 2790

原创 Crontab

1、Cron是一个linux/UNIX下的定时执行工具,可以在无需人工干预的情况下运行作业,相当于WIN平台的任务计划。可以用以下的方法启动、关闭这个服务:#service crond start //启动服务#service crond stop //关闭服务#service crond restart //重启服务#service crond reload //重新载入配置也可以将这个服务在系统启动的时候自动启动在/etc/rc.d/rc.local这个脚本的末尾加上:/sbin/service cro

2010-06-22 23:03:00 707

原创 例说一个ORACLE执行计划的查看

此例是不借助第三方工具,进行SQL执行计划的查看:Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 Connected as irsadmin SQL> explain plan for select * from loan_contract; Explained SQL> select * from table(dbms_xplan.display); PLAN_TABLE_OU

2010-06-22 07:05:00 590

原创 Linux命令study

<br />sar<br />sar是System Activity Reporter(系统活动情况报告)的缩写。顾名思义,sar工具将对系统当前的状态进行取样,然后通过计算数据和比例来表达系统的当前运行状态。<br />sar参数说明<br />-A汇总所有的报告<br />-a报告文件读写使用情况<br />-B报告附加的缓存的使用情况<br />-b报告缓存的使用情况<br />-c报告系统调用的使用情况<br />-d报告磁盘的使用情况<br />-g报告串口的使用情况<br />-h报告关于buf

2010-06-20 00:20:00 758

原创 表连接方式的分析与优化

连接是通过SQL语句中FROM从句的多个表名,以及WHERE从句里定义的表之间的连接条件来实现的。如果一个SQL语句的关联表超过两个:ORACLE首先连接其中的两个表,产生一个结果集;然后将产生的结果集与下一个表再进行关联;继续这个过程,直到所有的表都连接完成;最后产生所需的数据。下面都以两个表的连接为例create table user_info(user_name char(10),user_id char(10));create table dev_info(dev_no char(10),use

2010-06-11 22:06:00 1618

原创 Oracle 10g SGA设置

没有通用的Oracle SGA设置,那么所有Oracle SGA设置都需要根据系统的负载、相关的业务需求与某些硬件环境来对其进行调整。在Oracle9i及以前版本中,只能用手动SGA内存管理,不存在参数SGA_TARGET,而且参数 SGA_MAX_SIZE只是一个上限,而不是动态目标,但10G中时SGA_TARGET设置不能超过它。1、自动SGA内存管理在Oracle 10g中引入了自动SGA内存管理特性,DBA可以设定SGA_TARGET(默认等于SGA_MAX_SIZ)告诉Oracle可用的SGA内存

2010-06-10 23:14:00 3712 1

原创 oracle正式环境备份恢复到测试环境的一个方便方案

<br />1、从生产库上导出标准格式(username_YYYYMMDD.dmp)的备份<br />edw_exp_date.sh<br />DATE=`date +%Y%m%d`;export DATEexp edw/edw file=/ODS-DATA/DW_DMP/edw_$DATE.dmp log=/ODS-DATA/DW_DMP/edw_exp_$DATE.log OWNER=edw<br />2、用ftp或U盘将备份传到测试库<br />根据环境不同,采用合适的方式<br />3、重建

2010-06-04 14:05:00 2550

原创 WIN下用exp备份保存最近N天方案

1、批处理、DMP、LOG等均在D:/Exp_Solutions目录下;2、用于获取N天前日期的VBS脚本mydate.vbsCreateObject("Scripting.FileSystemObject").CreateTextFile("D:/Exp_Solutions/MyDate.cmd").Write "Set MyDate=" & Date-73、查看测试N天前日期的批处理代码取N天前.bat @ECHO OFFCscript D:/Exp_Solutions/MyDate.vbs //N

2010-06-03 21:38:00 2054

原创 oracle包dbms_job的使用

一、设置初始化参数 job_queue_processessql> alter system set job_queue_processes=n;(n>0)job_queue_processes最大值为1000查看job queue 后台进程sql>select name,description from v$bgprocess;或者sql>show parameter job_queue_processes;二、dbms_job package 用法介绍1、Broken()过程更新一个已提交的工作的状态,

2010-06-02 22:45:00 12789

原创 定时调度带输出变量的存储过程

以windos下为例,其他环境下大同小异。1、登录sql/plus的批处理exec_proc.batsqlplus irsadmin/irsadmin @D:/IRS_EXEC/exec_body.sql >>D:/IRS_EXEC/proc_exec.log2、sql/plus调用的SQL脚本exec_body.sqlDECLARE V_ETLDATE VARCHAR2(8); O_RUNSTATUS NUMBER; O_MSG VARCHAR2(256);BEGIN

2010-06-02 12:34:00 1230

原创 批处理菜单两例

1、打开目录或网站@echo offtitle 打开目录或网站:loopclsset /p input=请选择(1)(2)(3)退出:if %input%==1 start D:/TDDownloadif %input%==2 start www.sina.com.cnif %input%==3 exitpausegoto loop 2、系统维护菜单@echo offtitle 系统维护echo. echo. color a echo ┏━━┓我 ●╭

2010-06-02 10:01:00 2634 1

通过SQL链接oracle数据库.txt

通过SQL链接oracle数据库.txt

2008-05-15

SQL安装说明

SQL安装说明,SQL Server 2000安装.rm.

2008-05-15

Oracle性能优化.chm

Oracle性能优化.chm

2008-04-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除