반응형

WorkaHolic 242

1시간 이상 유휴(idle) 상태인 세션 알아내는 스크립트

저자: K Chithra 1시간 이상 유휴(idle) 상태인 세션을 발견하여 해당 세션을 죽이는 스크립트에 대해 살펴보도록 하자. select sid,serial#,username,trunc (last_call_et/3600,2)||' hr' last_call_et from V$session where last_call_et > 3600 and username is not null / 여기서 last_call_et의 단위는 '초'이다. 따라서 where 절에 2시간이면 7200을 적어주면 된다. 만일 그런 세션을 죽이고자 한다면 다음과 같은 명령을 사용할 수 있다. alter system kill session ','; [출처] 1시간 이상 유휴(idle) 상태인 세션 알아내는 스크립트 |작성자 진카자마

WorkaHolic 2010.04.08

테이블과 인덱스 사이즈를 간편하게 구해주는 스크립트

저자: DatabaseJournal 스크립트는 현재 데이터베이스에 들어있는 모든 테이블과 인덱스의 디스크 스페이스, 그리고 모든 테이블의 행 개수 등을 빠르게 알려주는 스크립트이다. SET NOCOUNT ON CREATE TABLE #TBLSize (Tblname varchar(80), TblRows int, TblReserved varchar(80), TblData varchar(80), TblIndex_Size varchar(80), TblUnused varchar(80)) DECLARE @DBname varchar(80) DECLARE @tablename varchar(80) SELECT @DBname = DB_NAME(DB_ID()) PRINT 'User Table size Report for (..

WorkaHolic 2010.04.08

일정 기간이 지난 파일을 삭제시켜 주는 SQL 스크립트

저자: DatabaseJournal 어떤 특정 폴더의 파일들 중 일정 기간이 지난 파일들을 삭제시켜 주고 싶은 경우들이 있다. 가령 예를 들어 로그 데이터 파일의 경우 계속해서 데이터가 쌓이는데 최신 30일 정도의 데이터만 유지하고 싶은 경우가 그런 좋은 예가 되겠다. 다음은 해당 SQL 스크립트이다. Create procedure USP_DelOldFiles @path varchar(25),@duration int as declare @myquery varchar(1000) declare @query varchar(1000) declare @name varchar(100) set @myquery = "exec master.dbo.xp_cmdshell 'dir "+ ltrim(rtrim(@path)) +..

WorkaHolic 2010.04.08

MSSQL 특정 날짜를 알려주면 지난 주 요일을 알려주는 스크립트

저자: DatabaseJournal 이 SQL 스크립트는 SQL 서버 2000 혹은 7.0에서 작동한다. 어떤 날짜를 알려주면 그 날짜의 전 주 금요일을 반환해 주는 스크립트이다. 이 스크립트는 통계 분석 혹은 데이터 비교를 위해 해당 날짜의 전 주 어떤 요일 값을 가지고 오고 싶을 때 사용하면 유용하다. 다음은 함수로 만든 SQL 스크립트이다. --Queried in Function Create function dbo.getfri (@day datetime) returns datetime as begin declare @output datetime if datepart(dw,@day) 7 set @output = dateadd(d,(-1)*(datepart(dw,@day)+1),@day) else se..

WorkaHolic/MSSQL 2010.04.08

MSSQL 날짜를 특정 형식으로 변경해 주는 SQL 스크립트

Datetime형 자료를 변경해 주는 일은 SQL 전문가들에게도 상당히 머리 아픈 일이다. 이 스크립트는 날짜를 영문 형태로 변경해 주는 스크립트이다. 이 SQL 스크립트는 SQL 서버 2000에서 작동한다. 다음은 함수로 만든 SQL 스크립트이다. create function dbo.date(@date datetime) returns varchar(20) As begin declare @string varchar(20) set @string = (select left(datename(month,@date),3)+" "+convert(varchar(2),day(@date))+(case when right(day(@date),1)=1 and day(@date)11 then 'st' when right(da..

WorkaHolic/MSSQL 2010.04.08

시스템상의 모든 인덱스를 재구성하는 프로시저

SET NOCOUNT ON DECLARE TableList CURSOR FOR SELECT name FROM sysobjects WHERE type = 'U' ORDER BY name DECLARE @table sysname , @ExecStr varchar(500) OPEN TableList FETCH NEXT FROM TableList INTO @table WHILE @@FETCH_STATUS -1 BEGIN PRINT @table EXEC ('dbcc dbreindex(''' + @table + ''')') FETCH NEXT FROM TableList INTO @table END DEALLOCATE TableList [출처] 시스템상의 모든 인덱스를 재구성하는 프로시저 |작성자 진카자마

WorkaHolic 2010.04.08
반응형