Microsoft Internet Information Services (IIS) is either not installed or is disabled. IIS is required by some SQL Server features. Without IIS, some SQL Server features will not be available for installation. To install all SQL Server features, install IIS from Add or Remove Programs in Control Panel or enable the IIS service through the Control Panel if it is already installed, and then run SQL Server Setup again. For a list of features that depend on IIS, see Features Supported by Editions of SQL Server in Books Online.
옵션을 다시 추가적으로 설정해 줍니다.
--> Web management tools
--> IIS 6 Management Compatibility
--> IIS 6 WMI Compatibility
--> IIS Metabase and IIS 6 configuration compatibility
Try this
1. Open the registry key HKEY_LOCAL_MACHINE\System\CurrentControlSet
\Services\msftesql
2. Rename the value DependOnService to anything
3. Restart the server
여기서
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\msftesql
위 레지스트리를 찾아 보면 값이 "RPCSS NTLMSSP"
로 되어있는데요...
이값을 단순히 수정만 하지마시고
"RPCSS" 만 남기시던...
하셔야 합니다.
전 잘못되면 다시 복구시킬 요량으로
"RPCSS NTLwoojjaMSSP" 요런 식으로 수정해 놨더니만..
그래도 같은 Error 를 내 뱉더군요...
그래서 아예 RPCSS 만 남겨놨죠... ㅋㅋ
그랬더니 잘 실행되는 군요...
이유를 더 찾아 보니..
SQL Server 의 FullText Search 서비스는 실행할때 NTLMSSP (NTLM Security Support Provider)
이 넘을 이용해서 사용자의 권한을 관리자의 권한수준으로 올린다음 실행한다고 하는군요.
그런데 이 서비스는 Vista, Windows Server 2008 로 올라오면서 사라진 서비스라고 하는 군요.(아마도 UAC 가 있으니 있을 필요가 없어졌겠죠...)
여튼 그런데 없어진 서비스를 찾으면서 에러를 발생시킨 것입니다.
SQL Server 2000 성능 데이터 보기
이 문서가 적용되는 제품 보기.
기술 자료 ID : 283886
마지막 검토 : 2006년 1월 20일 금요일
수정 : 4.1
이 문서는 이전에 다음 ID로 출판되었음: KR283886
이 페이지에서
요약
v_sysperfinfo 보기
v_BufferCacheHitRatio 보기
v_difference 보기
v_Access_methods 보기
v_object_names 보기
본 문서의 정보는 다음의 제품에 적용됩니다.
요약
이 문서에서는 Microsoft 기술 자료의 다음 문서에서 설명하는 작업에서 만든 추적 파일의 성능 데이터를 분석하는 데 사용할 수 있는 보기를 설명합니다.
283696 (http://support.microsoft.com/kb/283696/) INF: SQL Server 2000 성능 및 활동 모니터링 작업
이러한 보기를 만들기 전에 추적 파일을 ActivityTrace라는 SQL Server 2000 테이블로 가져와야 합니다. 저장 프로시저 trace_gettable의 스크립트를 사용하면 추적 파일의 데이터를 SQL Server 2000 테이블로 가져올 수 있습니다. 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
283784 (http://support.microsoft.com/kb/283784/) INF: SQL Server 2000 작업 데이터를 보는 방법
다음 보기를 사용하여 성능 데이터를 분석합니다. • v_sysperfinfo 보기는 sysperfinfo 테이블에서 추적에 의해 기록된 성능 카운터를 나열합니다.
• v_BufferCacheHitRatio 보기는 버퍼 캐시 적중률을 계산합니다.
• v_difference 보기는 최대 카운터 값과 최소 카운터 값의 차이를 나열합니다.
• v_Access_methods 보기는 액세스 메서드 개체에 대한 모든 카운터를 나열합니다. 다른 카운터를 나열하려면 v_Access_methods 보기의 %:Access Methods%를 다른 개체로 변경합니다.
• v_object_names 보기는 모든 성능 개체 이름을 나열합니다.
v_sysperfinfo 보기
CREATE view v_sysperfinfo as
select top 100 percent
RowNumber,[servername],[starttime]
,substring(TextData, 1,40) as [object_name]
,substring(TextData, 41,40) as [counter_name]
,substring(TextData,81,35) as [instance_name]
,cast(substring(TextData,116,11) as int) as [cntr_value]
from ActivityTrace
where EventClass = 83
order by
substring(TextData, 1,40)
,substring(TextData,41,40)
,substring(TextData,81,35)
,starttime
v_BufferCacheHitRatio 보기
CREATE view v_BufferCacheHitRatio as
select top 100 percent a.starttime
, cast(substring(a.TextData,116,11) as int) as [hits]
, cast(substring(b.TextData,116,11) as int) as [base]
, cast(((cast(substring(a.TextData,116,11) as int) * 100)
/ cast(substring(b.TextData,116,11) as int)) as numeric(6,3))
as [Buffer cache hit ratio]
from ActivityTrace a join ActivityTrace b
on datepart(yy,a.starttime) = datepart(yy,b.starttime)
and datepart(mm,a.starttime) = datepart(mm,b.starttime)
and datepart(dd,a.starttime) = datepart(dd,b.starttime)
and datepart(hh,a.starttime) = datepart(hh,b.starttime)
and datepart(mi,a.starttime) = datepart(mi,b.starttime)
and datepart(ss,a.starttime) = datepart(ss,b.starttime)
and substring(a.TextData,41,27) = N'Buffer cache hit ratio '
and substring(b.TextData,41,27) = N'Buffer cache hit ratio base'
order by a.starttime
위로 가기
v_difference 보기
CREATE view v_difference as
select top 100 percent
substring(TextData, 1,40) as [object_name]
,substring(TextData, 41,40) as [counter_name]
,substring(TextData,81,35) as [instance_name]
,max(cast(substring(TextData,116,11) as int)) as [maximum]
,min(cast(substring(TextData,116,11) as int)) as [minimum]
,max(cast(substring(TextData,116,11) as int))
-min(cast(substring(TextData,116,11) as int)) as [difference]
,count(*) as [count]
,datediff(mi,min(StartTime),max(StartTime)) as [minutes]
from ActivityTrace
where EventClass = 83
group by
substring(TextData, 1,40)
,substring(TextData, 41,40)
,substring(TextData,81,35)
having max(cast(substring(TextData,116,11) as int))
-min(cast(substring(TextData,116,11) as int)) > 0
order by [difference] desc
v_Access_methods 보기
CREATE view v_Access_methods as
select top 100 percent
substring(TextData,41,40) as [counter name]
,left(starttime,20) as [time]
,cast(substring(TextData,116,11) as int) as [counter value]
from ActivityTrace
where substring(TextData,1,40) like '%:Access Methods%'
order by substring(TextData,41,40), starttime
v_object_names 보기
create view v_object_names as
select top 100 percent
substring(TextData,charindex(':',TextData),25) as [object_name]
from ActivityTrace
where EventClass = 83
group by
substring(TextData,charindex(':',TextData),25)
order by [object_name]
저번 야간에 작업을 하다 오라클 테이블 Lock 이 걸리는 사태가 발생했습니다.
Lock 이 걸려서 아무런 작업을 할 수가 없었죠...
DB Tool 로 Lock 을 풀어도 봤지만 단순한 방법으로는 Lock을 푼다고 해도 짧은 시간안에 바로 풀리지 않습니다. 저번 삼성 프로젝트할 때도 그런 경험이 있었지요.
Lock 해제하기위해 Admin 에게 요청을 해제 요청을 하면 다음날이 되서야 답변이오고(그때는 이미 Admin 이 작업하지 않아도 풀리고 나서죠.) 그래서 차라리 기다리는게 방법이다 하여 작업하다 퇴근한 적도 있습니다.
저번 작업은 조금 바쁜 작업이라 저희 회사 터프가이에게 헬프를 날렸죠...
친구들과 유흥을 즐기다 제 전화에 바로 겜방으로 달려가주시는 쎈쓰... 이런 쎈쓰쟁이...^^
3~40분을 전화통화를 하며 게임방에 VPN 프로그램을 깔고 접속하여 Lock리스트를 보는 찰라...
처음 조회때에는 보였는데 두번째 조회때에 사라졌습니다.
한마디로 Lock 이 자연적으루다가 시간이 지나서 풀려버린거죠...
대략이 난감이었습니다. ㅡㅡ'
그때 요럴땐 요로케 하셔요~ 하며 알려준 팁입니다. - 정말 쎈쓰쟁이... ^^
하지만 보시는 분들께 당부하고 싶은 한마디...
잘 사용하십시요... 아래 쿼리에 대한 결과에 대해 저나 우리의 쎈쓰쟁이는 책임지지 않습니다.
한마디로 위험하다는 말씀...
========================================================================
Lock 해제관련 query 보내드립니다.
1) 쿼리를실행한프로그램을알고있다면프로그램명으로해당세션의의 adress를알아냅니다.
select paddr from v$session where program like '%program name' ex) '%DOAD%'
2) 찾아낸세션의 Adress 정보를바탕으로프로세스 ID(SID)을찾습니다.
select * from v$process where addr='C00000018880FD58';
위에서찾아낸 SID를프로세스에서 Kill합니다, 단, 해당프로세의가리모트프로세스이어야만합니다. (local = no)
사용하지 않으려면 connection string 에 pooling=false 를 추가하시면 되겠습니다.
거기에 아래와 같은 옵션을 추가로 설정을 할 수가 있습니다.
OracleConnection con = new OracleConnection();
con.ConnectionString = "User Id=scott;Password=tiger;Data Source=oracle;Min Pool Size=10;Connection Lifetime=120;Connection Timeout=60;Incr Pool Size=5; Decr Pool Size=2";
con.Open();