Microsoft MVP성태의 닷넷 이야기
웹: 13. IIS 7.5 에서 SQL Express 연결 시 오류 [링크 복사], [링크+제목 복사],
조회: 30027
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

IIS 7.5 에서 SQL Express 연결 시 오류


IIS 7.5부터 ApplicationPool의 사용자 계정 기본값이 기존 "NetworkService"에서 "ApplicationPoolIdentity"로 바뀌었습니다.

이 소식을 아래의 글에서 전해주고 있습니다.

Tip#98: Did you know… The default Application Pool Identity in IIS 7.5 (Windows 7) changed from NetworkService to AppPoolIdentity? 
; http://blogs.iis.net/webdevelopertips/archive/2009/10/02/tip-98-did-you-know-the-default-application-pool-identity-in-iis-7-5-windows-7-changed-from-networkservice-to-apppoolidentity.aspx 

주된 이유는, "보안 강화"입니다.

그런데, 이렇게 할 경우 SQL Express 버전을 "User Instance" 모드로 사용하면 오류가 발생합니다.

Error connecting to SQL Server from Windows 7 / Windows 2008 R2 with ASP.NET 
; http://blogs.iis.net/bills/archive/2009/10/07/error-connecting-to-sql-server-from-windows-7-windows-2008-r2-with-asp-net.aspx


"
Failed to generate a user instance of SQL Server due to failure in retrieving the user's local application data path. Please make sure the user has a local user profile on the computer. The connection will be closed.
"



위의 글에서 이유를 같이 설명해주고 있는데요. "ApplicationPoolIdentity" 계정이 사용자 프로파일을 가지고 있지 않기 때문입니다. 지난번에 SQL Express의 "User Instance" 모드를 상세하게 설명드렸지요.

SQL Express 버전과 User Instance 옵션
; https://www.sysnet.pe.kr/2/0/668

즉, SQL Express의 "User Instance" 모드에서는 해당 계정과 연계된 폴더 (비스타의 경우, "C:\Users\[계정명]\AppData\Local\Microsoft\Microsoft SQL Server Data\[SQL Express인스턴스 이름]")에 시스템 DB를 복사하게 되어 있는데, 이런 폴더를 찾을 수 없어서 오류가 발생하는 것입니다.

할 수 없지요. ^^

이런 경우에는 "NetworkService" 계정을 사용하든가 별도의 사용자 계정을 지정하는 수밖에 없음을 "Tip#98"에서 설명해 주고 있습니다.



[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 6/27/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 16  [17]  18  19  20  21  22  23  24  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
13570정성태2/29/202412469닷넷: 2222. C# - WPF의 Dispatcher Queue 동작 확인파일 다운로드1
13569정성태2/28/202412016닷넷: 2221. C# - LoadContext, LoadFromContext 그리고 GAC파일 다운로드1
13568정성태2/27/202412123닷넷: 2220. C# - .NET Framework 프로세스의 LoaderOptimization 설정을 확인하는 방법파일 다운로드1
13567정성태2/27/202412335오류 유형: 898. .NET Framework 3.5 이하에서 mscoree.tlb 참조 시 System.BadImageFormatException파일 다운로드1
13566정성태2/27/202411977오류 유형: 897. Windows 7 SDK 설치 시 ".NET Development" 옵션이 비활성으로 선택이 안 되는 경우
13565정성태2/23/202410020닷넷: 2219. .NET CLR2 보안 모델에서의 개별 System.Security.Permissions 제어
13564정성태2/22/202412625Windows: 259. Hyper-V Generation 1 유형의 VM을 Generation 2 유형으로 바꾸는 방법
13563정성태2/21/202411817디버깅 기술: 196. windbg - async/await 비동기인 경우 메모리 덤프 분석의 어려움
13562정성태2/21/202410873오류 유형: 896. ASP.NET - .NET Framework 기본 예제에서 System.Web에 대한 System.IO.FileNotFoundException 예외 발생
13561정성태2/20/202412160닷넷: 2218. C# - (예를 들어, Socket) 비동기 I/O에 대한 await 호출 시 CancellationToken을 이용한 취소파일 다운로드1
13560정성태2/19/202412270디버깅 기술: 195. windbg 분석 사례 - Semaphore 잠금으로 인한 Hang 현상 (닷넷)
13559정성태2/19/202413647오류 유형: 895. ASP.NET - System.Security.SecurityException: 'Requested registry access is not allowed.'
13558정성태2/18/202412659닷넷: 2217. C# - 최댓값이 1인 SemaphoreSlim 보다 Mutex 또는 lock(obj)를 선택하는 것이 나은 이유
13557정성태2/18/202410191Windows: 258. Task Scheduler의 Author 속성 값을 변경하는 방법
13556정성태2/17/202411907Windows: 257. Windows - Symbolic (hard/soft) Link 및 Junction 차이점
13555정성태2/15/202412058닷넷: 2216. C# - SemaphoreSlim 사용 시 주의점
13554정성태2/15/202411103VS.NET IDE: 189. Visual Studio - 닷넷 소스코드 디컴파일 찾기가 안 될 때
13553정성태2/14/20249887닷넷: 2215. windbg - thin/fat lock 없이 동작하는 Monitor.Wait + Pulse
13552정성태2/13/202410118닷넷: 2214. windbg - Monitor.Enter의 thin lock과 fat lock
13551정성태2/12/202411884닷넷: 2213. ASP.NET/Core 웹 응용 프로그램 - 2차 스레드의 예외로 인한 비정상 종료
13550정성태2/11/202412529Windows: 256. C# - Server socket이 닫히면 Accept 시켰던 자식 소켓이 닫힐까요?
13549정성태2/3/202413785개발 환경 구성: 706. C# - 컨테이너에서 실행하기 위한 (소켓) 콘솔 프로젝트 구성
13548정성태2/1/202413243개발 환경 구성: 705. "Docker Desktop for Windows" - ASP.NET Core 응용 프로그램의 소켓 주소 바인딩(IPv4/IPv6 loopback, Any)
13547정성태1/31/202412993개발 환경 구성: 704. Visual Studio - .NET 8 프로젝트부터 dockerfile에 추가된 "USER app" 설정
13546정성태1/30/202412557Windows: 255. (디버거의 영향 등으로) 대상 프로세스가 멈추면 Socket KeepAlive로 연결이 끊길까요?
13545정성태1/30/202412291닷넷: 2212. ASP.NET Core - 우선순위에 따른 HTTP/HTTPS 호스트:포트 바인딩 방법
... 16  [17]  18  19  20  21  22  23  24  25  26  27  28  29  30  ...