SQL Server/SQL Server Tip

.Net Framework 4.0과 SQL Server 2008 설치 오류

SungWookKang 2015. 7. 22. 10:43
반응형

.Net Framework 4.0과 SQL Server 2008 설치 오류

  • SecurityException / 'The process was terminated' errors installing SQL 2008 when .Net Framework 4.0 is installed

 

  • Version : SQL Server 2008, .Net Framework 4.0

 

SQL Server를 운영, 관리 하는데 있어서 가장 많이 접하는 이슈가 무엇일까? 필자는 개인적으로 SQL Server 프로그램 설치라 생각한다. 대부분의 윈도우 응용프로그램을 사용하는 사용자들은 프로그램 설치를 가장 쉽게 생각할 수도 있지만 다양한 서버의 환경(사용자마다 환경이 모두 동일할 수는 없다.)에서 설치되는 만큼 다양한 케이스의 오류가 발생하기 때문이다.

 

이번 포스트는 Microsoft의 SQL Server Premier Field Engineer Blog에 게시된 내용으로 .Net Framework 4.0과 관련된 설치 이슈이다. 필자가 읽고 이해한 내용을 바탕으로 정리하였으며 번역의 오류나 기술적 오류가 있음을 미리 알려둔다. 자세한 내용은 원문을 참고하길 바란다.

 

SQL Server 2008을 새로운 OS 또는 .Net Framework 4.0이 설치된 서버에 설치하려고 할 때 SQL Server 미디어가 UNC 경로에서 실행될 때 에러가 발생한다.

 

 

 

 

.Net 4.0에서는 CAS에 큰 변화가 있다.(http://blogs.msdn.com/b/shawnfa/archive/2010/02/24/so-is-cas-dead-in-net-4-or-what.aspx)

.Net Framework 3.5 이전 버전에서 어셈블리를 원격에서 로드 할 경우 어셈블리는 로드된 영역에서 신뢰할 수 있는 자격으로 실행 된다. 예를 들어 웹사이트에서 어셈블리를 로드할 때 인터넷 영역에 인터넷 권한이 부여되어 로드 된다.즉 인터넷 샌스박드에서 실행 된다. 만약 .Net 4.0 이상 버전에서 해당 어셈블리를 실행하려고 하면 예외가 발생 한다. 이때 사용자는 명시적으로 어셈블리에 대한 샌드박스를 만들어야 한다.

 

 

이 문제에 대해서는 최근 KB가 공개되었지만 아직 모든 해결 방법을 나열되어 있지 않다.

 

 

여기 문제 해결 방법에 대해서 몇 가지 나열해 본다.

  1. 로컬 드라이브에서 설치 하라
  2. SQL 설치 디렉토리의 설정파일(setup.exe.config)에서 V4.0을 삭제한다. (삭제 전 반드시 복사본을 만들어 놓는다.)

 

 

  1. LegacyCasPolicy를 끄고 SQL 설치 디렉토리의 Setup.exe.config에서 실행되는 원격 어셈블리를 허용하고 강조 표시된 요소를 추가한다.

 

 

  1. Use CasPol to trust the UNC share (Using CasPol to Fully Trust a Share ). 보안 파급효과를 이해한다.

 

 

  1. 최후의 수단으로 .Net Framework 4.0을 제거한다.

 

 

SQL Server를 설치하는데 있어서는 처음에 언급한 것 처럼 다양한 환경에서 설치가 이루어지기 때문에 오류 케이스 또한 다양하다. 어떤 시스템을 설치, 변경 하기 전 발생 할 수 있는 다양한 관점에서 검토 후 실행 할 수 있도록 한다.

 

[참고자료]

 

 

 

 

2013-09-26 / 강성욱 / http://sqlmvp.kr

 

 

반응형