-- SQL 2000일 경우 SP3이상 적용 되어있어야 함

DECLARE
@handle VARBINARY(64)
SELECT  @handle = sql_handle FROM master.dbo.sysprocesses
WHERE sql_handle != 0x0

SELECT * FROM ::fn_get_sql(@Handle)


Microsoft SQL Server 2000 서비스 팩 4

Database Components

2005년 3월 21일

© Copyright Microsoft Corporation, 2004. All rights reserved.


SQL Server 문서화 팀에서 기술 지원 문제에 대한 질문에는 답변해 드릴 수 없지만 본 추가 정보 문서에 대한 여러분의 제안과 의견을 환영합니다. 아래 링크를 사용하면 전자 메일을 통해 빠르게 의견을 보내실 수 있습니다. 모든 의견은 영문으로 작성해야 합니다.

본 문서에 대한 사용자 의견을 보내려면  
사용자 의견 보내기를 클릭하십시오.
 

목차

1.0 소개

    1.1 시스템 요구 사항

    1.2 Database Components SP4로 업그레이드하기 전에

    1.3 Microsoft Data Access Components 버전 확인

    1.4 SQL Server 2000의 현재 버전 확인

    1.5 SP4 추가 정보

    1.6 SQL Server 2000 온라인 설명서의 업데이트 사용 가능

2.0 Database Components SP4를 찾아서 다운로드할 위치

    2.1 정확한 언어 선택

    2.2 Database Components SP4 다운로드

    2.3 Database Components SP4 파일 압축 풀기

    2.4 다운로드 및 압축 풀기에 대한 단계별 지침

    2.5 Database Components SP4 설치 문서

3.0 서비스 팩 설치

    3.1 Database Components SP4 설치 준비

    3.2 Database Components SP4 설치

    3.3 서비스 및 응용 프로그램 다시 시작

    3.4 장애 조치 클러스터에 설치

    3.5 복제된 서버에 Database Components 설치

    3.6 복제 토폴로지의 읽기 전용 데이터베이스 또는 파일 그룹에 SP4 적용

    3.7 연결된 서버의 카탈로그 업그레이드

    3.8 Database Components SP4 제거

    3.9 Database Components SP4 다시 적용

4.0 추가 설치 정보

    4.1 무인 설치

    4.2 SP4 Database Components 재배포

    4.3 Systems Management Server 배포 설치

5.0 설명서 참고

    5.1 데이터베이스 향상

    5.2 복제 기능 향상

    5.3 SQL Server 에이전트 및 공유 도구 기능 향상

    5.4 SQL Server 연결 구성 요소 기능 향상

    5.5 메타데이터 서비스 기능 향상

    5.6 데이터 변환 서비스 기능 향상

    5.7 XML 기능 향상

    5.8 가상 백업 장치 API 기능 향상

    5.9 오류 보고

    5.10 서비스 기능 향상

    5.11 English Query 기능 향상

    5.12 C 언어용 DB-Library 및 Embedded SQL

1.0 소개

본 추가 정보 파일에서는 Microsoft® SQL Server™ 2000 서비스 팩 4(SP4)의 Database Components 부분을 사용하여 기존 SQL Server 2000 데이터베이스 엔진의 인스턴스를 SQL Server 2000 SP4로 업그레이드하는 방법에 대해 설명합니다.

SP4의 일반적인 설치 과정은 다음과 같습니다.

  1. SP4를 사용할 수 있는지 여부와 사용 가능한 경우 설치해야 할 SP4 부분을 결정합니다. 1.0 단원의 모든 부분을 검토한 다음 SP4를 다운로드하여 설치합니다.

  2. 서비스 팩 설치 파일을 다운로드하여 압축을 풉니다. 2.0 단원에서는 SP4 설치 파일을 얻는 방법에 대해 설명합니다.

  3. SP4로 업그레이드하기 위해 인스턴스를 준비합니다. 3.1 단원에서는 SP4를 설치하기 전에 수행해야 할 준비 단계에 대해 설명합니다.

  4. SP4를 설치합니다. 3.2 단원 SP4 설치를 실행하는 데 사용할 수 있는 옵션에 대해 설명합니다.

SQL Server 2000 SP4는 다음 4부분으로 구성되어 있습니다.

  • Database Components SP4는 SQL Server 2000 Desktop Engine(MSDE 2000) 인스턴스를 제외한 SQL Server 2000용 데이터베이스 엔진 인스턴스를 업데이트합니다. Database Components SP4를 사용하면 SQL Server 2000 Workgroup Edition 인스턴스를 업그레이드할 수 있습니다. Database Components SP4는 다음 항목에 대한 업데이트를 제공합니다.
    • 데이터베이스 엔진

    • SQL Server 엔터프라이즈 관리자 및 osql 유틸리티 등과 같은 모든 데이터베이스 클라이언트 도구 및 유틸리티

    • Microsoft OLE DB Provider for SQL Server 2000, SQL Server 2000 ODBC 드라이버 및 클라이언트 Net-Libraries 등과 같은 데이터베이스 클라이언트 연결 구성 요소

    • 복제

    • DTS(데이터 변환 서비스)

    • 메타데이터 서비스
  • Analysis Services SP4는 SQL Server 2000을 설치할 때 SQL Server 2000 Analysis Services의 여러 부분을 업데이트합니다.

  • MSDE 2000 SP4는 SQL Server 2000 MSDE 2000 및 MSDE 2000 릴리스 A 인스턴스를 업데이트합니다.

  • SQL Server 2000 SP4(64비트)에는 SQL Server 2000(64비트)의 모든 업데이트가 포함되어 있습니다. 이 서비스 팩이 SQL Server 2000(64비트)의 첫 번째 서비스 팩입니다.

모든 SQL Server의 서비스 팩은 누적됩니다. SP1, SP2, SP3 및 SP3a에서 제공되는 수정 프로그램이 SQL Server SP4에 포함되어 있습니다.

Database Components SP4는 Enterprise Edition, Standard Edition, Developer Edition 또는 Personal Edition의 SQL Server 2000 데이터베이스 엔진의 인스턴스에서만 사용할 수 있습니다. SQL Server 2000 SP4의 다른 부분은 다른 SQL Server 2000 구성 요소 즉, Analysis Services, MSDE 2000 또는 SQL Server 2000 (64비트)에 적용됩니다. 별도의 추가 정보 파일에 Analysis Services SP4, MSDE 2000 SP4 및 SQL Server 2000 SP4(64비트)의 사용법이 각각 설명되어 있습니다. 다른 추가 정보 파일도 이 Microsoft 웹 사이트에 있습니다.

 

1.1 시스템 요구 사항

이 단원에서는 시스템 요구 사항에 대한 변경 사항 및 Database Engine SP4 설치에 영향을 주는 시스템 관련 문제에 대해 설명합니다. SQL Server 2000의 시스템 요구 사항에 대한 일반적인 정보는 Microsoft 웹 사이트에 있습니다.

지원 시스템 변경
  • SQL Server 2000 SP4는 Windows NT 4.0, Windows Millennium Edition 및 Windows 98 플랫폼에서 지원되지 않습니다.

  • Windows NT 4.0, Windows Millennium Edition 및 Windows 98 플랫폼에 SQL Server 2000 SP3a를 설치한 경우 SQL Server 2000 SP4의 최종 릴리스 이후 12개월 동안 계속해서 중요 핫픽스에 대한 지원을 받을 수 있습니다.

  • SQL Server 2000 SP4부터는 X64 또는 호환 프로세서에서 WoW(Windows-on-Windows) 64 모드로 실행되는 Windows 2003 SP1에서도 SQL Server 2000(32비트)을 지원합니다.
지원되는 시스템에서의 설치 문제

다음 보안 정책 중 하나라도 설치 허용 안 함으로 설정되어 있으면 Database Components SP4를 설치할 수 없습니다.

  • Windows XP용 장치: 서명되지 않은 드라이버 설치 동작 로컬 보안 정책

  • Windows 2000용 서명되지 않은 비드라이버 설치 동작 로컬 보안 정책

설치 허용 안 함 설정을 사용하는 경우 Database Components SP4를 설치하기 전에 이 설정을 작업 완료로 변경해야 합니다. 필요한 경우 설치가 끝난 후 이 정책을 이전 설정으로 되돌릴 수 있습니다.

참고   설치 허용 안 함은 이 보안 정책의 기본 설정이 아닙니다.

보안 정책을 설정하려면

  1. 제어판에서 관리 도구를 두 번 클릭합니다.

  2. 로컬 보안 정책을 두 번 클릭합니다.

  3. 로컬 정책을 확장합니다.

  4. 보안 옵션을 선택합니다.

  5. Database Components SP4를 설치하기 전에 오른쪽 창에서 다음 옵션이 작업 완료로 설정되어 있는지 확인합니다.

  6. Windows XP 및 Windows 2003의 경우: 장치: 서명되지 않은 드라이버 설치 동작

  7. Windows 2000의 경우: 서명되지 않은 비드라이버 설치 동작

 

응용 프로그램 요구 사항

응용 프로그램에서 SQL Server 2000을 사용 중인 경우 Database Components SP4로 업그레이드하기 전에 해당 응용 프로그램에 적용할 SQL Server 2000 업그레이드 고려 사항이 있는지 여부를 응용 프로그램 공급자에게 문의하십시오.

[맨 위로]

1.2 Database Components SP4로 업그레이드하기 전에

본 단원에서는 Database Components SP4를 사용하여 기존 SQL Server 2000 데이터베이스 엔진의 인스턴스를 업그레이드하기 전에 해결해야 하는 문제와 수행해야 하는 작업에 대해 설명합니다.

Database Components SP4의 인스턴스로 만든 데이터베이스 또는 데이터베이스 백업을 이전 버전의 SQL Server 2000에서도 연결하거나 복원할 수 있습니다. 그러나 복제 토폴로지의 데이터베이스에 대해서는 제한이 있습니다. 자세한 내용은 1.2.2 복제 또는 로그 전달 토폴로지의 인스턴스에 대한 고려 사항 단원을 참조하십시오.

Database Components SP4 설치 프로그램은 업그레이드될 SQL Server 2000 인스턴스의 SQL Server 2000 버전을 자동으로 검색합니다. 설치 프로그램은 해당 인스턴스에 대해 설치되어 있는 구성 요소만 업그레이드합니다. 예를 들어 SQL Server 2000 Standard Edition을 실행하는 컴퓨터에 서비스 팩을 적용하는 경우 서비스 팩에서 SQL Server 2000 Enterprise Edition에만 들어 있는 구성 요소는 업그레이드하지 않습니다.

SQL Server의 단일 기본 인스턴스 또는 명명된 인스턴스에 Database Components SP4를 적용할 수 있습니다. 여러 SQL Server 2000 인스턴스를 SP4로 업그레이드할 경우 각 인스턴스에 SP4를 적용해야 합니다. SQL Server 2000 인스턴스가 있는 둘 이상 컴퓨터에서 한 인스턴스만 SP4로 업그레이드해도 모든 도구가 SP4로 업그레이드됩니다. 각 인스턴스에 대해 도구가 따로 제공되지 않습니다.

응용 프로그램에서 SQL Server 2000 인스턴스를 사용 중인 경우 먼저 SQL Server 2000 업그레이드 고려 사항이 해당 응용 프로그램에 적용되는지 여부를 응용 프로그램 공급자에게 문의하십시오.

[맨 위로]

# 1.2.1 Database Components SP4를 제거하는 방법 결정

Database Components SP4를 사용하여 기존 데이터베이스 엔진 인스턴스를 업그레이드하기 전에 나중에 필요할 경우에 대비하여 이전 상태로 인스턴스를 되돌리는 방법을 계획해 두는 것이 좋습니다. SQL Server 2000 Database Components SP4를 설치한 경우 유지 관리 목적을 위해 시스템 테이블을 변경합니다. 또한 SP4 설치 프로그램은 복제 토폴로지의 구성원인 사용자 및 배포 데이터베이스도 업그레이드합니다. 이러한 변경 사항 때문에 Database Components SP4를 쉽게 제거할 수 없습니다. Database Components SP4 설치 전에 실행하던 빌드로 되돌리려면 먼저 SQL Server 2000 데이터베이스 엔진 인스턴스를 제거한 후 다시 설치해야 합니다. 그런 다음, 이전 SQL Server 2000 서비스 팩을 실행하거나 핫픽스를 적용한 경우 인스턴스에 서비스 팩과 핫픽스를 다시 적용해야 합니다.

참고   SP4를 제거하려면 SP4를 적용하기 전에 사용한 master, modelmsdb 데이터베이스를 백업해야 합니다. 자세한 내용은 3.1.1 SQL Server 데이터베이스 백업 단원을 참조하십시오.

자세한 내용은 3.8 SP4 제거 단원을 참조하십시오.

 

1.2.2 복제 또는 로그 전달 토폴로지의 인스턴스에 대한 고려 사항

SQL Server 2000 SP4 설치 프로그램은 복제 토폴로지의 구성원에 속하는 사용자 데이터베이스도 업그레이드합니다. 이러한 업그레이드 요인은 복제된 사용자 데이터베이스의 백업 및 복원 기능에 영향을 줄 수 있습니다. SP4를 설치하기 전에 복제 데이터베이스와 파일 그룹이 쓰기 가능한지 확인합니다. 복제 토폴로지에 포함된 데이터베이스에 SP4를 적용하는 방법에 대한 자세한 내용은 3.5 복제된 서버에 Database Components 설치 단원을 참조하십시오. 복제에 대한 추가 백업 및 복원 고려 사항은 5.2.6 병합 복제에 대한 백업 및 복원 문제 단원에 자세히 설명되어 있습니다.

참고   SQL Server 인스턴스가 복제 토폴로지에 속하지 않는 경우 SQL Server 2000의 다른 릴리스에서도 사용자 데이터베이스를 백업하거나 복원할 수 있습니다.

SP4 설치 프로그램에서 쓰기 권한이 없는 사용자 데이터베이스나 파일 그룹을 검색하면 다음을 수행합니다.

  • 모든 쓰기 가능 사용자 데이터베이스에 SP4 복제 업데이트를 적용합니다.

  • Winnt\Sqlsp.log에 있는 설치 로그에 쓰기 권한이 없는 데이터베이스 목록을 기록합니다.

  • 다음과 같은 경고 메시지를 표시합니다.
    Setup has detected one or more databases and filegroups which are not writable.

    참고   이 메시지는 Database Components의 무인 설치에 영향을 주지 않습니다. 무인 설치에 대한 자세한 내용은 4.1 무인 설치 단원을 참조하십시오..

설치 로그에 표시된 데이터베이스가 복제 토폴로지의 구성원이 아니면 이 경고를 무시할 수 있습니다. 그러나 설치 로그에 표시된 쓰기 가능하지 않은 데이터베이스 중에 복제 토폴로지의 구성원이 있으면 해당 데이터베이스를 쓰기 가능 상태로 만들고 해당 SQL Server 2000 인스턴스에 SP4 설치 프로그램을 다시 적용해야 합니다.

데이터베이스를 쓰기 가능하도록 설정하는 방법에 대한 자세한 내용은 3.6 복제 토폴로지의 읽기 전용 데이터베이스 또는 파일 그룹에 SP4 적용 단원을 참조하십시오. SP4 다시 적용에 대한 자세한 내용은 3.9 Database Components SP4 다시 적용 단원을 참조하십시오.

로그 전달 및 Database Components

쓰기 권한이 없는 데이터베이스의 경우 설치가 실패하지 않으므로 Database Components SP4로 업그레이드하기 전에 로그 전달을 제거하지 않아도 됩니다. 그러나 데이터베이스가 복제 게시자인 데이터베이스에 로그를 전달하는 경우 다음을 수행해야 합니다.

  1. SP4를 적용하기 전에 데이터베이스를 오프라인 상태로 만듭니다.

  2. 인스턴스에 SP4를 적용합니다.

  3. 데이터베이스를 다시 온라인 상태로 만듭니다.

  4. 쿼리 분석기에 로그온한 후 다음 스크립트를 실행합니다.
    USE master GO EXEC sp_vpupgrade_replication GO

게시 데이터베이스에 로그를 전달하는 쓸 수 없는 데이터베이스를 모두 오프라인 상태로 만들지 않고 SP4를 적용하면 다음 오류 메시지가 나타납니다.

Error Running Script sp_vpupgrade_replication (1)

이 오류가 발생하면 위에 설명한 절차를 따르십시오.

참고   설치하는 동안 설치 프로그램에서 읽기 전용 데이터베이스와 오프라인 상태이거나 상태가 명확하지 않은 데이터베이스를 구분하지 않습니다. 설치하는 동안 오프라인 상태이거나 불명확한 상태의 복제 데이터베이스나 파일 그룹이 복제 토폴로지에 포함되어 있으면 데이터베이스를 쓰기 가능 상태로 만든 후 서비스 팩을 다시 적용해야 합니다.

 

1.3 Microsoft Data Access Components 버전 확인

Database Components SP4 설치 프로그램은 설치된 Microsoft Data Access Components(MDAC)의 버전을 MDAC 2.8 SP1로 업그레이드할지 여부를 결정합니다.

  • Windows 2000을 실행하는 컴퓨터는 MDAC 2.8 SP1로 업그레이드됩니다.

  • Windows XP 또는 Windows Server 2003을 실행하는 컴퓨터는 MDAC 2.8 SP1로 업그레이드되지 않습니다. MDAC 2.8 SP1에서 제공되는 수정 프로그램이 시스템에 필요한 경우 시스템을 Windows XP SP2 또는 Windows Server 2003 SP1로 업그레이드하여 MDAC 2.8 SP2를 얻습니다.

  • MDAC 2.8 SP1은 MDAC 버전 또는 이후 버전이 설치된 컴퓨터에는 설치되어 있지 않습니다.

    참고   Database Components SP4가 설치된 컴퓨터가 최신 운영 체제 플랫폼으로 업그레이드된 경우 SP4로 설치된 MDAC 버전은 더 이상 존재하지 않습니다.

참고   컴퓨터의 MDAC 버전을 확인하는 방법에 대한 자세한 내용은 기술 자료 문서 301202를 참조하십시오.

Database Components SP4가 MDAC 2.8 SP1을 설치할 때 MDAC 언어 버전은 Database Components SP4의 언어 버전과 동일합니다. Database Components SP4의 언어 버전과 다르게 MDAC의 언어 버전을 유지하려면 Database Components SP4 설치 프로그램을 실행하기 전에 원하는 MDAC 2.8 SP1의 언어 버전을 다운로드하여 설치합니다. 언어별 MDAC 2.8 SP1 버전은 Microsoft 웹 사이트에서 다운로드할 수 있습니다.

MDAC 2.8 SP1에는 MSXML 3.0 SP7에 대한 업그레이드도 포함되어 있습니다. 또한 MDAC 2.81은 Microsoft SQL Server 2000에 제공된 SQLXML 1.0도 업데이트합니다. 이 서비스 팩을 적용해도 SQLXML 3.0이 설치되거나 업데이트되지 않습니다. 응용 프로그램에 SQLXML 3.0이 필요하면 Microsoft 웹 사이트에서 다운로드하여 설치해야 합니다. MDAC 2.8 SP1에 대한 자세한 내용은 Microsoft 웹 사이트를 참조하십시오. MDAC 버전에 대한 자세한 내용은 기술 자료 문서 822758을 참조하십시오. MDAC 2.8 SP1에 포함된 수정 프로그램은 기술 자료 문서 884930에 설명되어 있습니다.

참고   SQL Server 2000 SP4의 이전 릴리스 버전에는 MSXML 3.0 SP7의 이전 릴리스 버전도 포함되어 있습니다. SQL Server 2000 SP4의 이전 릴리스 버전을 설치한 경우 이 Microsoft 웹 사이트에서 MSXML 3.0 SP7의 최종 버전을 다운로드하여 설치하는 것이 좋습니다.

 

1.4 SQL Server 2000의 현재 버전 확인

설치 프로그램을 실행하기 전에 업그레이드할 Database Components 인스턴스의 버전을 확인해야 합니다.

설치된 SQL Server 2000 Database Components의 버전을 확인하려면

  1. isql, osql 또는 쿼리 분석기를 사용하여 데이터베이스 엔진의 인스턴스에 다음 쿼리 중 하나를 실행합니다.
    • SELECT SERVERPROPERTY('ProductLevel')

    • SELECT @@VERSION

    • SELECT SERVERPROPERTY('ProductVersion')
  2. 다음 표를 사용하여 Database Components의 버전을 확인합니다.
    SQL Server 2000 버전 및 수준 @@VERSION 제품 수준
    SQL Server 2000 원본 릴리스 8.00.194 RTM
    Database Components SP1 8.00.384 SP1
    Database Components SP2 8.00.534 SP2
    Database Components SP3, SP3a 또는 MSDE 2000 릴리스 A 8.00.760 SP3
    Database Components SP4 8.00.2039 SP4

    참고   제품을 설치하거나 이전 서비스 팩을 설치한 후에 핫픽스를 적용한 경우 제품 버전이 이 값과 다를 수도 있습니다. 예를 들면, @@VERSION 은 SQL Server 2000 SP3a에 보안 픽스 MS03-031을 적용하면 8.00.818 값을 반환합니다.

  3. (옵션) SQL Server 2000 데이터베이스 엔진의 버전을 실행 중인지 또는 MSDE 2000 버전을 실행 중인지 확실하지 않은 경우 isql, osql 또는 쿼리 분석기를 사용하여 문제의 인스턴스에 다음 쿼리를 실행합니다.
    • SELECT SERVERPROPERTY('Edition')

    이 쿼리에 대해 "desktop engine"이 반환되면 MSDE 2000 인스턴스가 실행 중인 경우이고 그 외에는 SQL Server 2000 데이터베이스 엔진 인스턴스가 실행 중인 경우입니다.

 

1.5 SP4 추가 정보

이 서비스 팩에 들어 있는 모든 수정 프로그램 목록은 Microsoft 기술 자료 문서 888799에 제공될 예정입니다. 888799에 제공될 각 수정 프로그램은 해당 수정 프로그램에서 해결한 문제에 대한 기술 자료 문서로 연결됩니다. 개별 기술 자료 문서의 링크를 클릭하면 각 수정 프로그램에 대한 정보를 확인할 수 있습니다.

이 추가 정보 파일을 작성할 때 사용할 수 없었던 SQL Server 2000 서비스 팩 4 관련 정보는 모두 Microsoft 기술 자료 문서 884525에 게시될 예정입니다.

이 추가 정보 문서에 언급된 기술 자료 문서는 Microsoft 기술 지원 서비스 기술 자료에서 볼 수 있습니다.

기술 자료 문서를 찾으려면

  1. 고급 검색에서 검색어 텍스트 상자에 검색할 문서 번호를 입력합니다.

  2. 검색 형식에서 기술 자료 ID를 선택합니다.

  3. 검색 실행 오른쪽 화살표 단추를 클릭합니다.
핫픽스

SQL Server 2000 SP3a 및 SQL Server 2000(64비트) 보안 게시판에 보고된 문제는 SP4에서 모두 해결되었습니다.

2004년 12월 2일 이후에 받은 SQL Server 2000 핫픽스는 SP4에 들어 있지 않을 수도 있습니다. SQL Server 2000 SP4용 핫픽스 구입 방법은 주 지원 공급자에게 문의하십시오.

SQL Server 2000 SP4에는 서비스 기능 향상이 포함되어 출시될 핫픽스를 제거할 수 있습니다. 자세한 내용은 5.10 서비스 기능 향상 단원을 참조하십시오.

Slammer 웜 관련 수정 프로그램

Microsoft SQL Server 2000 SP4에는 Slammer 웜으로 인한 문제를 해결해 주는 SQL Server 2000의 변경 사항이 포함되어 있습니다.

  • SQL Server 2000 Enterprise Eval!uation Edition에 SP4를 적용하면 해당 SQL Server 버전의 인스턴스들에도 수정 프로그램을 적용할 수 있습니다.

  • SP4는 SQL Server 2000 SP3의 Microsoft Data Access Components(MDAC) 버전에서 발생하는 설치 문제를 해결합니다.

  • SQL Server 2000 SP4 또는 SP3a의 인스턴스가 네트워크 연결을 지원하지 못하도록 구성되어 있으면 해당 인스턴스가 UDP 포트 1434의 사용을 중지합니다.
SQL Server CE 및 SQL Mobile Server 도구 업데이트

또한 Microsoft SQL Server 2000 Windows® CE Edition(SQL Server CE) 및 SQL Server 2005 Mobile Edition(SQL Mobile)을 사용하는 경우 SQL Server 2000 데이터베이스 및 게시자 서버를 SP4 이상으로 업그레이드했거나 업그레이드하려면 Microsoft IIS(인터넷 정보 서비스) 서버에서 서버 복제 구성 요소를 업데이트해야 합니다. 업데이트된 서버 도구 설치 관리자는 SQL Server CE 및 SQL Mobile에서 사용할 수 있습니다.

참고   SQL Server 2000 SP3 또는 SP3a로 업그레이드한 다음 서버 복제 구성 요소를 업데이트해도 서버 도구 구성 요소에 대한 최신 SP4 업데이트를 설치해야 합니다.

OPENXML 업데이트

SQL Server 2000 SP4를 설치하면 운영 체제에서 설치한 MSXML 버전에 OPENXML이 종속되지 않게 됩니다. Database Components SP4는 MSXML 2.6의 이전 버전과 호환되는 MSXML 기술의 내부 버전을 설치합니다.

 

1.6 SQL Server 2000 온라인 설명서의 업데이트 사용 가능

SQL Server 2000 온라인 설명서는 Database Components 2000의 기본 사용자 설명서입니다. 온라인 설명서는 정기적으로 수정 프로그램과 새로운 정보로 업데이트됩니다.

  • 온라인 설명서의 최신 버전은 온라인 설명서 다운로드 사이트에서 다운로드할 수 있습니다.

  • 영어로 작성된 최신 버전 온라인 설명서는 이 웹 사이트에 있습니다.
업데이트된 SQL Server 2000 예제 사용 가능

SP3 및 SP3a에 대해 업데이트된 SQL Server 2000 데이터베이스 엔진 및 Analysis Services 예제를 구할 수 있습니다. 이 업데이트된 예제는 이 Microsoft 웹 사이트에서 다운로드할 수 있습니다.

 

2.0 Database Components SP4를 찾아서 다운로드할 위치

SQL Server 2000 SP4는 다음과 같은 방법으로 배포됩니다.

  • 다음 구성 요소의 서비스 팩이 들어 있는 SQL Server 2000 서비스 팩 4 CD-ROM
    • Database Components SP4

    • Analysis Services SP4

    • MSDE 2000 SP4

    • SQL Server 2000 SP4(64비트)

    SP4 CD가 있는 경우 CD에서 직접 Database Components SP4 파일을 사용하여 SQL Server 2000 인스턴스를 SP4로 업그레이드할 수 있습니다.

    Microsoft 웹 사이트에서 다운로드할 수 있는 네 개의 자동 압축 풀기 설치 패키지 파일
    • SQL2000-KB884525-SP4-x86-LLL.exe(Database Components SP4)

    • SQL2000.AS-KB884525-SP4-x86-LLL.exe(Analysis Services SP4)

    • SQL2000.MSDE-KB884525-SP4-x86-LLL.exe(Desktop Engine(MSDE 2000) SP4)

    • SQL2000-KB884525-SP4-ia64-LLL.exe(SQL Server 2000 SP4(64비트))

    참고   LLL은 언어마다 다른 지정자를 표시합니다.

    SP4 CD가 없는 경우, SQL2000-KB884525-SP4-x86-LLL.exe를 다운로드한 다음 해당 파일을 실행하여 컴퓨터에 Database Components SP4 파일의 압축을 풀 수 있습니다. SQL2000-KB884525-SP4-x86-LLL.exe는 SP4 CD의 Database Components 폴더 및 파일과 동일한 구조로 디스크에 폴더와 파일 집합을 만듭니다. 파일 압축 풀기 단계가 완료되면 해당 폴더에서 Database Components SP4를 디스크에 설치할 수 있습니다.

 

2.1 정확한 언어 선택

SQL Server 2000 Database Components 서비스 팩은 언어별로 제공됩니다. SQL Server 2000 인스턴스를 업그레이드하려면 인스턴스와 동일한 언어의 서비스 팩을 구해야 합니다. 서비스 팩은 SQL Server 2000 SP4 CD에 있습니다. 또는 Database Components SP4 파일을 다운로드하여 구할수 있습니다. 예를 들어 일본어 버전의 SQL Server 2000 인스턴스를 업그레이드하려면 Database Components SP4 일본어 버전을 구해야 합니다.

SQL Server 2000 인스턴스의 언어를 모르는 경우

  • 시작을 클릭한 다음 실행을 클릭합니다.

  • 열기 상자에서 Regedit를 입력한 다음 확인을 클릭합니다.

  • 다음 키 중 하나를 찾아 선택합니다.
    • 기본 SQL Server 2000 인스턴스의 경우 이 하위 키를 찾아 선택합니다.

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion

    • 명명된 SQL Server 2000 인스턴스의 경우 이 하위 키를 찾아 선택합니다.

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\InstanceName\CurrentVersion

      여기서 InstanceName은 인스턴스의 이름입니다.

  • 오른쪽 목록 창에서 언어 항목 값을 읽습니다. 다음 표의 언어 값을 비교하여 SQL Server 2000의 인스턴스에 대한 언어를 확인합니다.
    언어 레지스트리 값(16진수) 언어 레지스트리 값(10진수) 인스턴스 언어
    0x00000404 1028 중국어(번체)
    0x00000407 1031 독일어
    0x00000409 1033 영어
    0x0000040a 1034 스페인어
    0x0000040c 1036 프랑스어
    0x00000410 1040 이탈리아어
    0x00000411 1041 일본어
    0x00000412 1042 한국어
    0x00000804 2052 중국어(간체)

 

2.2 Database Components SP4 다운로드

Database Components SP4의 자동 압축 풀기 설치 패키지를 다운로드하려면

  • Microsoft 웹 사이트로 이동합니다.

  • 이 페이지의 오른쪽 위에 있는 전체 다운로드 드롭다운 목록에서 SQL Server 2000 인스턴스의 언어와 일치하는 언어를 선택한 다음 이동을 선택하십시오.

  • 선택한 언어에 해당하는 Microsoft 다운로드 센터 페이지에서 SQL2000-KB884525-SP4-x86-LLL.exe 파일을 선택합니다. 여기서 LLL은 언어 이름입니다.

 

2.3 Database Components SP4 파일 압축 풀기

설치 패키지가 포함되어 있는 자동 압축 풀기 파일을 다운로드했으면 Database Components SP4 파일의 압축을 풀어야 합니다.

  • Windows 탐색기를 열고 자동 압축 풀기 설치 패키지 파일을 다운로드한 폴더로 이동합니다.

  • 다운로드한 파일을 두 번 클릭하여 Database Components SP4 파일의 압축을 풉니다. 메시지가 나타나면 SP4 파일의 압축을 풀어 놓을 폴더를 지정합니다.

 

2.4 다운로드 및 압축 풀기에 대한 단계별 지침

인터넷에서 Database Components SP4 설치 파일을 다운로드하여 압축을 풀려면 다음 지침을 따르십시오.

  • Database Components SP4를 설치하거나 업그레이드하려면 SQL2000-KB884525-SP4-x86-LLL.exe를 컴퓨터나 네트워크 공유 디렉터리의 폴더로 다운로드합니다. 서비스 팩 설치 파일의 압축을 풀고 저장하려면 실행 파일보다 대략 세 배 이상 큰 크기의 빈 공간이 있어야 합니다. 자동 압축 풀기 파일을 저장할 공간, 압축을 푼 서비스 팩 파일을 저장할 공간 및 자동 압축 풀기 프로그램에 필요한 임시 작업 공간이 충분히 있어야 합니다.

  • SQL2000-KB884525-SP4-x86-LLL.exe를 로컬 또는 공유 디렉터리로 다운로드하여 설치 파일을 실행하면 서비스 팩 파일을 저장할 폴더의 이름을 묻는 메시지가 표시됩니다.

    참고   서비스 팩의 압축을 네트워크 공유 디렉터리에 풀 경우 SQL2000-KB884525-SP4-x86-LLL.exe를 실행한 폴더의 상대 경로로 지정해야 합니다.

  • 구성 요소의 압축을 푼 다음에는 폴더의 이름을 바꾸거나 폴더를 이동할 수 있습니다. 폴더 경로 이름에는 공백이 없어야 합니다.

  • 자동 압축 풀기 파일을 사용하면 SP4 CD-ROM에 있는 것과 동일한 폴더 및 파일이 생성됩니다. SP4를 다운로드하는 경우 파일 압축을 풀어 서비스 팩 폴더를 만든 후 SQL Server 설치 프로그램을 실행해야 합니다.

  • Database Components SP4의 경우 CD-ROM을 사용할 때와 압축을 푼 파일을 사용할 때 설치 프로세스가 동일하게 진행됩니다.

  • 세 개의 SP4 파일을 모두 동일한 대상 폴더에 다운로드하여 전체 SQL Server 2000 SP4 CD와 동일한 구조의 폴더를 만들 수 있습니다. 세 개의 자동 압축 풀기 파일은 서로 덮어쓰거나 방해하지 않습니다.

 

2.5 Database Components SP4 설치 문서

Database Components SP4 설치 파일에는 SP4를 설치하는 동안 도움말을 클릭하여 액세스할 수 있는 업데이트된 설치 설명서가 들어 있습니다. 이 설명서는 컴퓨터에 이미 설치되어 있는 SQL Server 2000 온라인 설명서 버전을 업데이트하지는 않습니다. SQL Server 2000 온라인 설명서의 업데이트 버전을 얻는 방법에 대한 자세한 내용은 1.6 SQL Server 2000 온라인 설명서의 업데이트 사용 가능 단원을 참조하십시오. SQL Server 온라인 설명서를 업데이트하지 않고 업데이트된 SQL Server 2000 SP4 설치 설명서에 액세스하려면 Setupsql.chm 파일을 실행합니다. Setupsql.chm은 SP4 CD-ROM 폴더에 있는 \Books 하위 폴더, 압축을 푼 서비스 팩 파일이 들어 있는 로컬 폴더 또는 네트워크 공유에 있습니다.

[맨 위로]

3.0 서비스 팩 설치

Database Components SP4를 설치하려면 다음 단원의 설치 지침을 참조하십시오. 1.0 소개 단원의 내용을 검토하고 Database Components SP4를 설치합니다. Database Components SP4의 설치 단계는 다음과 같습니다.

  1. Database Components SP4 설치 준비

  2. Database Components SP4 설치

  3. 서비스 및 응용 프로그램 다시 시작

 

3.1 Database Components SP4 설치 준비

Database Components SP4를 설치하기 전에 다음 작업을 수행해야 합니다.

  1. SQL Server 데이터베이스 백업

  2. 시스템 데이터베이스에 충분한 여유 공간이 있는지 확인

  3. 서비스 및 응용 프로그램 중지

 

3.1.1 SQL Server 데이터베이스 백업

Database Components SP4를 설치하기 전에 master, msdbmodel 데이터베이스를 백업합니다. SP4를 설치하면 master, msdbmodel 데이터베이스가 수정되므로 SP4 이전 버전의 SQL Server와 호환되지 않습니다. SP4를 적용하지 않고 SQL Server 2000만 다시 설치하기로 할 경우 이러한 데이터베이스의 백업이 필요합니다.

SP4가 복제 토폴로지의 구성원에 속하는 사용자 데이터베이스만 업데이트하지만 사용자 데이터베이스도 백업해 두는 것이 좋습니다.

복제 구조를 나타내는 기존의 백업 스키마를 사용하여 장애가 발생한 경우에도 SP4 업그레이드 후의 알려진 특정 시점으로 데이터베이스를 복원할 수 있습니다. SP4를 적용한 후에는 로그 데이터베이스 백업이나 전체 데이터베이스 백업을 통해 복제 토폴로지에 포함된 사용자 데이터베이스를 백업하는 것이 좋습니다. 이렇게 하면 복제 데이터베이스에 문제가 발생해도 데이터베이스를 복원한 후에 SP4를 다시 적용할 필요가 없습니다.

 

3.1.2 시스템 데이터베이스에 충분한 여유 공간이 있는지 확인

mastermsdb 데이터베이스에 대해 자동 증가 옵션을 선택하지 않은 경우 데이터베이스에 최소 500KB 이상의 사용 가능 공간이 있어야 합니다. 이 공간이 있는지 확인하려면 master 또는 msdb 데이터베이스에 sp_spaceused 시스템 저장 프로시저를 실행합니다. 두 데이터베이스 중 하나의 할당되지 않은 공간이 500KB 미만인 경우 해당 데이터베이스의 크기를 늘립니다. 자세한 내용은 SQL Server 2000 온라인 설명서에서 "데이터베이스 확장"을 참조하십시오.

mastermsdb 데이터베이스에 대해 자동 증가 옵션을 선택한 경우 드라이브에 충분한 공간이 있으면 앞에서 설명한 공간 확인 단계를 건너뜁니다.

SQL Server 2000에서 자동 증가 옵션이 선택되어 있는지 확인하려면 SQL Server 엔터프라이즈 관리자를 열고 해당 데이터베이스 아이콘을 마우스 오른쪽 단추로 클릭한 후 속성을 클릭합니다. 파일 자동 증가 확인란이 선택되어 있는지 확인합니다.

 

3.1.3 Database Components SP4 설치 프로그램을 실행하기 전에 서비스 및 응용 프로그램 중지

Database Engine SP4를 설치하기 전에 제어판, 프로그램 추가/제거, SQL Server 2000 Reporting Services, SQL Server 2000 Notification Services를 비롯하여 모든 응용 프로그램 및 서비스와 업그레이드할 데이터베이스 엔진 인스턴스에 연결되어 있는 모든 응용 프로그램을 모두 중지해야 합니다.

처음에 서비스를 종료하지 않고 Database Components SP4를 적용할 수 있지만 일부 서비스는 시스템을 다시 부팅해야 다시 시작됩니다. 서비스를 종료하지 않으면 설치 프로그램이 끝날 때 컴퓨터를 다시 시작하라는 메시지가 표시됩니다. 시스템을 다시 시작하지 않으면 다음 서비스가 시작되지 않을 수 있습니다.

  • MS DTC(Microsoft Distributed Transaction Coordinator) 및 Microsoft Search 서비스

  • 업그레이드한 인스턴스(예: MSSQL$NamedInstance)의 MSSQLServer 및 SQLServerAgent 서비스

  • Microsoft Component Services, Microsoft Message Queuing 및 Microsoft COM Transaction Integrator

Database Components SP4를 설치한 후에 컴퓨터를 다시 시작해야 하는 과정을 줄일 수도 있습니다. 이러한 과정을 줄이려면 설치 프로그램을 실행하기 전에 앞의 목록에 표시된 서비스와 응용 프로그램을 중지합니다.

클러스터된 환경에서는 이러한 서비스를 중지할 수 없습니다. 자세한 내용은 3.4 장애 조치 클러스터에 설치 단원을 참조하십시오.

 

3.2 Database Components SP4 설치

다음 내용은 SQL Server 2000의 Database Components 부분에만 해당됩니다.

다음 위치 중 하나에서 Setup.bat 스크립트를 실행합니다.

  • SQL2000-KB884525-SP4-x86-LLL.exe의 압축을 푼 서비스 팩 파일이 있는 로컬 컴퓨터의 폴더. 여기서 LLL은 언어에 따라 다릅니다.

  • SQL Server 2000 SP4 CD-ROM의 루트 폴더

  • SQL2000-KB884525-SP4-x86-LLL.exe의 압축을 푼 서비스 팩 파일이 있는 네트워크 공유의 폴더

참고   네트워크 공유에서 Database Components를 설치하려면 먼저 다음 중 하나를 수행해야 합니다.

  • 압축을 푼 서비스 팩 파일이 들어 있는 네트워크 공유를 로컬 컴퓨터의 사용 가능한 드라이브 문자에 매핑하고 Setup.bat가 들어 있는 매핑된 드라이브의 해당 폴더로 이동한 후 Setup.bat를 실행합니다.

  • 압축을 푼 서비스 팩 파일이 들어 있는 네트워크 공유 폴더의 하위 폴더인 \X86\Setup에서 Setupsql.exe 파일을 실행하여 설치 프로그램을 시작합니다.
Database Components SP4 설치 프로그램 실행

설치 프로그램에서 SQL Server 인증이나 Windows 인증 중 어떤 것을 사용할 것인지 묻는 대화 상자를 표시합니다. SQL Server 인증을 선택한 경우 설치 프로그램에 sa 로그인 암호를 입력해야 합니다. Windows 인증을 선택한 경우 업그레이드하는 중인 SQL Server 2000 인스턴스에 대한 sysadmin 고정 서버 역할의 구성원인 Windows 로그인 계정으로 Windows에 로그온하여 설치 프로그램을 실행해야 합니다 .

그 다음 설치 프로그램에서 다음 작업을 수행합니다.

  • sa 로그인 암호를 지정하지 않고 혼합 모드 인증을 사용하여 설치한 경우 인증 모드 대화 상자를 표시합니다. sa 로그인 암호를 비워 두면 관리자 권한으로 SQL Server 또는 MSDE에 쉽게 액세스할 수 있으므로 암호를 지정하는 것이 좋습니다. sa 암호를 지정하거나 Windows 인증을 사용하여 시스템을 보호하십시오. 이 대화 상자에 대한 자세한 내용은 이 단원 뒷부분의 인증 모드 대화 상자를 참조하십시오.

  • sa 로그인 암호를 지정하지 않으면 SA 암호 경고 대화 상자를 표시합니다. 이 경고 상자를 무시하고 설치를 계속하도록 선택하면 sa 암호를 비워두고 설치를 계속할 수 있습니다. 그러나 암호를 비워 두면 보안상 위험하므로 권장되지 않습니다. 이 경고 대화 상자는 사용하는 인증 모드에 관계없이 표시됩니다.

    참고   암호 변경은 즉시 적용되며 설치에 실패해도 그대로 적용됩니다.

  • SP3 이전의 SQL Server 버전에 서비스 팩을 적용하면 발생할 수 있는 문제에 대해 경고하는 이전 버전과의 호환성 검사 목록 대화 상자를 표시합니다 . 이 대화 상자에 대한 자세한 내용은 이 단원 뒷부분의 이전 버전과의 호환성 검사 목록 대화 상자를 참조하십시오.

  • 데이터베이스나 파일 그룹에 쓰기 권한이 없는 경우 메시지 대화 상자를 표시합니다. 이때 복제 토폴로지에 속하는 데이터베이스나 파일 그룹이 있으면 다음을 수행할 수 있습니다.
    • 설치 프로세스를 중지하고 이러한 개체를 쓰기 가능으로 만든 후 설치 프로그램을 다시 시작합니다.

    • 현재 SP4 설치 프로세스를 계속하고 이러한 개체를 쓰기 가능으로 만든 후 나중에 SP4를 다시 적용합니다.

    참고   앞의 단계는 복제 토폴로지에 속하는 쓰기 권한이 없는 데이터베이스나 파일 그룹에 SP4를 적용할 때만 필요합니다. 자세한 내용은 3.6 복제 토폴로지의 읽기 전용 데이터베이스 또는 파일 그룹에 SP4 적용 단원을 참조하십시오.

  • SP4에 포함되어 있는 새로운 오류 보고 기능을 활성화하는 방법에 대한 정보를 제공하는 오류 보고 대화 상자를 표시합니다. 오류 보고에 대한 자세한 내용은 5.9 오류 보고 단원을 참조하십시오.

  • 필요한 경우 MDAC 구성 요소를 업데이트합니다. 자세한 내용은 1.3 Microsoft Data Access Components 버전 확인 단원을 참조하십시오.

  • SP4 파일로 기존의 SQL Server 2000 파일을 바꿉니다.

  • Transact-SQL 스크립트 파일을 실행하여 시스템 저장 프로시저를 업데이트합니다.

  • 설치 프로그램에서 다시 시작이 필요한 경우 마지막 대화 상자에 컴퓨터를 다시 시작하라는 옵션이 표시됩니다.

 

인증 모드 대화 상자

인증 모드 대화 상자는 기본적으로 설치에 대한 현재 설정을 표시하지 않습니다. 대화 상자 기본 설정은 Windows 인증입니다. 지정된 sa 로그인 암호를 통해 Windows 인증 모드 또는 혼합 모드 인증으로 전환하려면 이 대화 상자를 사용하십시오.

참고   인증 모드 또는 sa 로그인 암호를 변경하기 전에 이러한 변경 사항이 기존 응용 프로그램에 영향을 주는지 확인해야 합니다. 예를 들어 혼합 모드 인증에서 Windows 인증만 선택하는 방식으로 SQL Server 인스턴스를 변경하면 SQL Server 인증을 사용하여 연결을 시도하는 기존 응용 프로그램은 인증 모드를 Windows 인증으로 설정할 때까지 연결할 수 없습니다. 또한 sa 로그인 암호를 변경하면 기존 암호를 사용하는 응용 프로그램이나 관리 프로세스는 새 암호를 사용하도록 구성될 때까지 연결할 수 없습니다.

중요  보안상의 이유로 sa 로그인의 암호를 반드시 지정해야 합니다.

설치 프로그램에서 수행하는 작업에 대한 정보를 Sqlsp.log 파일에 기록합니다. 이 로그 파일은 설치 프로그램을 실행하는 컴퓨터의 Windows 폴더에 저장됩니다. 여러 인스턴스를 업그레이드하는 경우 가장 최근의 업그레이드만 이 로그에 기록됩니다.

 

이전 버전과의 호환성 검사 목록 대화 상자

The 이전 버전과의 호환성 검사 목록 대화 상자에는 SP3 이전의 SQL Server 버전에 서비스 팩을 적용하면 발생될 수 있는 문제가 나열됩니다. 검사 목록에 나타나는 호환성 문제는 업그레이드하는 SQL Server 2000 인스턴스의 구성에 따라 다릅니다.

이 대화 상자에는 다음과 같은 이전 버전과의 호환성 문제가 표시될 수 있습니다.

  • SP2 이전 버전에서 업그레이드할 경우 SP4는 Microsoft Search 서비스를 업그레이드하며 해당 서비스를 사용하는 모든 응용 프로그램의 전체 텍스트 카탈로그를 자동으로 다시 작성합니다. 이 카탈로그를 다시 작성하는 동안 전체 텍스트 기능을 부분적으로 사용하지 못할 수 있습니다. 설치를 계속하려면 이 확인란을 선택해야 합니다. 자세한 내용은 5.1.4 설치를 마친 후 전체 텍스트 카탈로그 다시 작성 단원을 참조하십시오.

  • 서비스 팩을 적용하기 전에 SQL Server 2000 마스터/대상 서버 구성을 업그레이드해야 합니다. SP4에 추가된 향상된 기능은 SQL Server 2000 SP3 이후 버전을 실행하는 서버와만 호환됩니다. 설치를 계속하려면 이 확인란을 선택해야 합니다. 자세한 내용은 5.3.2 마스터/대상 서버 구성 변경 단원을 참조하십시오.

  • SP4에서는 기본적으로 데이터베이스 간 소유권 체인이 해제되어 있습니다. 설치 후 개별 데이터베이스의 데이터베이스 간 소유권 체인을 활성화할 수 있습니다. 이 옵션 확인란을 선택하면 모든 데이터베이스의 데이터베이스 간 소유권 체인을 사용할 수 있습니다. 자세한 내용은 5.1.10 데이터베이스 간 소유권 체인 단원을 참조하십시오.

    보안 주의 사항  모든 데이터베이스에 대해 데이터베이스 간 소유권 체인을 사용하지 않는 것이 좋습니다.

 

3.3 서비스 및 응용 프로그램 다시 시작

설치가 완료되면 시스템을 다시 시작할 것인지 묻는 메시지가 표시됩니다. 3.1.3 Database Components SP4 설치 프로그램을 실행하기 전에 서비스 및 응용 프로그램 중지 단원에서는 다시 시작이 필요한 경우에 대한 지침이 설명되어 있습니다. 시스템을 다시 시작한 다음 또는 설치 프로그램이 시스템 다시 시작을 요구하지 않고 완료된 다음 제어판의 서비스 응용 프로그램을 사용하여 서비스 팩을 적용하기 전에 중지한 모든 서비스가 현재 실행 중인지 확인하십시오. 서비스 팩을 적용하기 전에 중지해야 하는 서비스로는 DTC, Microsoft Search, MSSQLServer, MSSQLServerOLAPService 및 SQLServerAgent 서비스 또는 인스턴스 등이 있습니다.

서비스 팩 설치 프로그램을 실행하기 전에 닫혀 있는 응용 프로그램을 다시 시작합니다.

이때 업그레이드된 mastermsdb 데이터베이스도 백업하는 것이 좋습니다.

 

3.4 장애 조치 클러스터에 설치

다음 정보는 장애 조치 클러스터에 속하는 SQL Server 2000 구성 요소에만 적용됩니다.

장애 조치 클러스터에 서비스 팩을 설치하려면

  1. SQL Server 리소스에 대해 종속성을 갖는 리소스가 추가되었으면 SP4를 설치하기 전에 이러한 종속성을 제거하거나 오프라인 상태로 만들어야 합니다. 이러한 종속성을 제거하지 않고 SP4를 설치하면 리소스가 오프라인 상태로 변경됩니다.

    참고   클러스터 리소스가 오프라인 상태로 변경되면 모든 종속 리소스도 클러스터 서비스에 따라 오프라인 상태로 변경됩니다.

  2. 업그레이드하려는 가상 서버가 포함된 그룹을 소유하는 노드에서 서비스 팩을 실행합니다. 이렇게 하면 장애 조치 클러스터의 모든 노드에 서비스 팩 파일이 설치됩니다.

  3. 설치 프로그램 대화 상자에서 업그레이드하려는 가상 서버의 이름을 입력합니다.

  4. 설치 중에 클러스터의 모든 노드를 온라인 상태로 유지합니다. 이렇게 하면 클러스터의 각 노드에 업그레이드가 적용됩니다.

  5. 1단계에서 종속성을 제거하거나 리소스를 오프라인 상태로 전환한 경우 종속성을 복원하거나 리소스를 온라인 상태로 전환합니다.

참고   설치 프로그램은 장애 조치 클러스터 노드를 다시 시작하도록 요구할 수 있습니다. 노드를 다시 시작하면 설치 중에 사용되던 파일이 업데이트된 파일로 바뀝니다.

SQL Server 기본(클러스터되지 않은) 인스턴스를 가상 서버로 업그레이드하는 경우 기본(클러스터되지 않은) 인스턴스를 가상 인스턴스로 업그레이드한 다음 SP4를 적용해야 합니다. 업그레이드에 대한 자세한 내용은 SQL Server 온라인 설명서에서 "기본 인스턴스를 SQL Server 2000의 기본 클러스터된 인스턴스로 업그레이드하는 방법(설치)" 항목을 참조하십시오.

장애 조치 클러스터에 SP4를 설치하는 방법에 대한 자세한 내용은 기술 자료 문서 811168을 참조하십시오.

장애 조치 클러스터에서 노드를 다시 작성해야 하는 경우

  1. 장애 조치 클러스터에서 노드를 다시 작성합니다. 노드 다시 작성에 대한 자세한 내용은 SQL Server 2000 온라인 설명서에서 "시나리오 1에서 장애 조치 클러스터 오류를 복구하는 방법"을 참조하십시오.

  2. 원본 SQL Server 2000 설치 프로그램을 실행하여 장애 조치 클러스터로 노드를 다시 추가합니다.

  3. 추가한 노드에 Database Components SP4 설치 프로그램을 실행합니다. 이렇게 하면 새 노드의 이진 데이터만 SP4로 업데이트됩니다.

참고   가상 서버가 실행 중인 노드에서 설치 프로그램을 실행하면 모든 노드에 SP4를 다시 적용해야 합니다. 또한 데이터베이스 업그레이드 스크립트를 다시 실행해야 합니다.

 

3.5 복제된 서버에 Database Components 설치

다음 내용은 복제 토폴로지에 속하는 기존 SQL Server 2000 인스턴스에만 해당됩니다.

  • SP4로 업그레이드하기 전에 SQL Server 서비스가 실행되는 Windows 계정이 sysadmin 고정 서버 역할의 구성원인지 확인합니다. 복제 배포 데이터베이스는 SQL Server 서비스 계정의 컨텍스트에서 업그레이드되므로 이 사항을 확인해야 합니다. SP4로 업그레이드한 후에는 sysadmin 역할에서 해당 Windows 계정을 제거합니다.

  • 배포자를 먼저 업그레이드한 후에 게시자를 업그레이드해야 합니다.

  • 구독자가 읽기 전용인 트랜잭션 복제를 기반으로 하는 복제 토폴로지의 MSDE 2000 인스턴스를 업그레이드해야 할 때, 게시자와 배포자를 업그레이드하기 전 또는 후에 구독자를 업그레이드할 수 있습니다.

  • 구독자를 업데이트할 때 병합 복제 또는 트랜잭션 복제를 기반으로 하는 복제 토폴로지의 MSDE 2000 인스턴스를 업그레이드해야 할 때, 게시자와 배포자를 업그레이드하기 전 또는 후에 구독자를 업그레이드해야 합니다.

    참고   많은 경우, 특히 병합 복제에서 배포자와 게시자는 같은 서버에 있으며 동시에 업그레이드됩니다.

  • 병합 복제를 사용하고 있으며 배포자가 다른 컴퓨터나 다른 데이터베이스 인스턴스에 있는 경우(원격 배포자) SP4를 적용한 후에 새로운 스냅샷을 생성해야 합니다.

 

게시자 및 구독자로 사용되는 서버에 SP4 설치

다음과 같은 경우에 시스템을 중지하고 모든 업데이트를 중지하고 모든 서버를 동시에 업그레이드해야 합니다.

  • 병합 복제에 기반한 복제 토폴로지의 경우

  • 구독자 및 게시자(또는 배포자) 모두로 사용되는 하나 이상의 서버를 비롯하여 구독자를 업데이트하는 트랜잭션 복제를 기반으로 하는 복제 토폴로지의 경우
예제 1. 동시 업그레이드가 필요한 토폴로지

다음 표에서는 구독자의 데이터 업데이트를 허용하는 게시 항목을 게시하고 구독하는 서버를 보여 줍니다. 앞에서 설명한 것처럼 구독자의 데이터 업데이트를 허용하는 토폴로지에 대해 배포자, 게시자 및 구독자의 업그레이드 순서를 따라야 합니다. 이 순서에 따르면 병합 게시의 경우 Server A를 먼저 업그레이드하고 구독자가 업데이트되는 트랜잭션 게시의 경우 Server B를 먼저 업그레이드해야 합니다. 이 경우 시스템을 중지하고 서버를 동시에 업그레이드해야 합니다.

Server A Server B
병합 복제의 게시자/배포자 병합 복제의 구독자
구독자를 업데이트하는 트랜잭션 복제의 구독자 구독자를 업데이트하는 트랜잭션 복제의 게시자/배포자

예제 2. 순차적 업그레이드를 허용하는 토폴로지

이 예제에서는 읽기 전용 트랜잭션 게시가 게시자/배포자보다 먼저 구독자 업그레이드를 허용하므로 Server A를 먼저 업그레이드할 수 있습니다.

Server A Server B
병합 복제의 게시자/배포자 병합 복제의 구독자
읽기 전용 트랜잭션 복제의 구독자 읽기 전용 트랜잭션 복제의 게시자/배포자

 

3.6 복제 토폴로지의 읽기 전용 데이터베이스 또는 파일 그룹에 SP4 적용

다음 정보는 복제 토폴로지에 속하는 SQL Server 2000 구성 요소에만 적용됩니다.

쓰기 가능하지 않은 데이터베이스나 파일 그룹이 있으면 설치 프로그램은 다음 메시지를 표시합니다.

Setup has detected one or more databases and filegroups which are not writable.

일반적으로 이 경고를 무시하고 설치를 계속할 수 있습니다. 그러나 설치 로그에 표시된 쓰기 가능하지 않은 데이터베이스 중에 복제 토폴로지의 구성원이 있으면 해당 데이터베이스를 쓰기 가능 상태로 만들고 해당 SQL Server 2000 인스턴스에 SP4 설치 프로그램을 다시 적용해야 합니다.

참고   이 메시지는 무인 설치에 영향을 주지 않습니다. 무인 설치에 대한 자세한 내용은 4.1 무인 설치 단원을 참조하십시오..

설치 프로그램은 설치 중에 쓰기 가능하지 않은 데이터베이스와 오프라인 상태이거나 상태가 명확하지 않은 데이터베이스 간을 구분하지 않습니다. 설치 중에 복제 토폴로지의 데이터베이스나 파일 그룹이 쓰기 가능하지 않은 경우 서비스 팩을 이 데이터베이스에 다시 적용해야 합니다. 데이터베이스를 온라인 상태로 전환하는 방법에 대한 자세한 내용은 SQL Server 2000 온라인 설명서에서 "데이터베이스 연결 및 분리" 항목을 참조하십시오. 문제가 의심되는 데이터베이스를 진단하는 방법에 대한 자세한 내용은 SQL Server 온라인 설명서에서 "서버 및 데이터베이스 문제 해결" 항목을 참조하십시오.

읽기 전용 데이터베이스에 Database Components SP4를 적용하려면

  1. 읽기 전용 데이터베이스를 쓰기 가능하도록 설정하려면 ALTER DATABASE 문을 다음과 같이 사용합니다.
    ALTER DATABASE database SET READ_WRITE
  2. 모든 읽기 전용 데이터베이스에 대해 1단계를 반복합니다.

  3. SP4를 적용(다시 적용)합니다.

  4. 필요한 경우 데이터베이스를 다시 읽기 전용 상태로 만들려면ALTER DATABASE문을 다음과 같이 사용합니다.
    ALTER DATABASE database SET READ_ONLY

읽기 전용 파일 그룹에 SP4를 적용하려면

  1. 읽기 전용 파일 그룹을 쓰기 가능하도록 설정하려면ALTER DATABASE문을 다음과 같이 사용합니다.
    ALTER DATABASE Database MODIFY FILEGROUP filegroup_name READWRITE 
  2. 모든 읽기 전용 파일 그룹에 대해 1단계를 반복합니다.

  3. 서비스 팩을 적용하거나 다시 적용합니다.

  4. 파일 그룹을 다시 읽기 전용으로 설정하려면ALTER DATABASE문을 다음과 같이 사용합니다.
    ALTER DATABASE Database MODIFY FILEGROUP filegroup_name READONLY

ALTER DATABASE에 대한 자세한 내용은 SQL Server 2000 온라인 설명서에서 "ALTER DATABASE" 참조 항목을 참조하십시오. SP4 다시 적용에 대한 자세한 내용은 3.9 Database Components SP4 다시 적용 단원을 참조하십시오.

 

3.7 연결된 서버의 카탈로그 업그레이드

SQL Server 2000 데이터베이스 엔진 인스턴스를 Database Components SP4로 업그레이드할 경우 SQL Server 또는 MSDE의 다른 인스턴스에서 일부 시스템 저장 프로시저가 업데이트되어 있는지 확인해야 할 수도 있습니다.

Database Components SP4에는 Microsoft Data Access Components(MDAC)의 MDAC 버전 2.8 SP1로의 업그레이드가 포함되어 있습니다. MDAC 2.8 SP1에는 SQLOLEDB 공급자와 SQL Server ODBC 드라이버에 대한 업데이트가 포함되어 있습니다. 자세한 내용은 1.3 Microsoft Data Access Components 버전 확인 단원을 참조하십시오. 공급자나 드라이버가 SQL Server 또는 MSDE 인스턴스에 연결된 경우 공급자나 드라이버에서 카탈로그 저장 프로시저로 알려진 시스템 저장 프로시저 집합을 사용합니다. 인스턴스의 카탈로그 저장 프로시저 버전은 공급자와 드라이버에서 사용하는 버전 이상이어야 합니다. 카탈로그 저장 프로시저의 이전 버전이 있는 SQL Server 또는 MSDE 인스턴스에 연결하려는 경우 다음 오류가 발생합니다.

The ODBC catalog stored procedures installed on server <ServerName>
are version <OldVersionNumber>; version <NewVersionNumber> or later
is required to ensure proper operation. Please contact your system
administrator.

 

Instcat.sql 스크립트 실행

공급자와 드라이버의 각 버전에는 Instcat.sql라는 이름의 스크립트가 제공됩니다. Instcat.sql은 이전 버전의 카탈로그가 있는 SQL Server 또는 MSDE 인스턴스의 카탈로그 저장 프로시저를 업그레이드합니다.

Database Components SP4를 설치한 후에 SQL Server 2000 SP4보다 이전 버전이며 다음 특성이 있는 SQL Server 또는 MSDE 인스턴스에 Database Components SP4의 Instcat.sql을 실행해야 합니다.

  • SQLClient 관리 네임스페이스, ADO, OLE DB 또는 ODBC를 사용하며 SQL Server 2000 SP4가 설치된 컴퓨터에서 실행되는 응용 프로그램에 의해 액세스됩니다.

  • SQL Server 2000 SP4 인스턴스에서 실행되는 분산 쿼리에 의해 참조됩니다. 분산 쿼리에는 sp_addlinkedserver OPENROWSET 및 OPENQUERY 함수를 사용하여 정의하는 연결된 서버 항목에 대한 참조가 있습니다.

Windows 인증 모드를 사용하는 인스턴스에서 카탈로그 저장 프로시저를 업그레이드하려면

  1. SQL Server sysadmin 고정 서버 역할의 구성원인 사용자로 로그인하여 Windows에 로그온합니다.

  2. 명령 프롬프트 창을 엽니다.

  3. osql 유틸리티를 실행합니다.
    • 기본 인스턴스의 경우 다음을 실행합니다.
      osql -E -SComputerName -ilocation\instcat.sql
    • 명명된 인스턴스의 경우 다음을 실행합니다.
      osql -E -SComputerName\InstanceName -ilocation\instcat.sql

혼합 모드를 사용하는 인스턴스에서 카탈로그 저장 프로시저를 업그레이드하려면

  1. 임의 로그인으로 Windows에 로그온합니다.

  2. 명령 프롬프트 창을 엽니다.

  3. osql 유틸리티를 실행합니다.
    • 기본 인스턴스의 경우 다음을 실행합니다.
      osql -UAnAdminLogin -PAdminPassword -SComputerName -ilocation\instcat.sql
    • 명명된 인스턴스의 경우 다음을 실행합니다.
      osql -UAnAdminLogin -PAdminPassword -SComputerName\InstanceName -ilocation\instcat.sql

여기서

  • AnAdminLogin은 sysadmin 고정 서버 역할의 구성원인 SQL Server 로그인입니다.

  • AdminPassword는 AnAdminLogin에 대한 암호입니다.

  • ComputerName은 SQL Server 또는 MSDE 인스턴스가 실행 중인 컴퓨터의 이름입니다.

  • InstanceName은 SQL Server 2000 또는 MSDE 2000의 명명된 인스턴스 이름입니다.

  • location은 Instcat.sql이 포함된 폴더의 전체 경로입니다. SQL Server 2000 인스턴스가 설치된 기본 위치는 c:\program files\Microsoft SQL Server\MSSQL\Install입니다.

Instcat.sql 스크립트는 많은 메시지를 생성합니다. 일반적으로 메시지는 오류를 표시하지 않고 단지 스크립트에 있는 각 Transact-SQL 문의 영향을 받는 행 수만 알려줍니다. 마지막 메시지는 스크립트가 성공적으로 실행되었는지 여부를 표시합니다.

 

3.8 Database Components SP4 제거

Database Components SP4를 제거하려면 이 단원의 단계를 수행하십시오.

참고   MDAC 업데이트는 제거되지 않습니다. 자세한 내용은 1.3 Microsoft Data Access Components 버전 확인 단원을 참조하십시오.

SP4 이전 버전의 SQL Server 2000 구성 요소로 되돌릴 수 있도록 하려면 SP4를 설치하기 전에 master, msdb model 데이터베이스를 백업해야 합니다. 자세한 내용은 3.1.1 SQL Server 데이터베이스 백업 단원을 참조하십시오.

복제에 데이터베이스가 포함된 경우 게시를 비활성화해야 합니다.

게시를 비활성화하려면

  1. SQL Server 엔터프라이즈 관리자에서 SQL Server 그룹을 확장하고, 서버를 확장하고, 복제 폴더를 마우스 오른쪽 단추로 클릭한 다음 게시, 구독자 및 배포 구성을 클릭합니다.

  2. 게시 데이터베이스 탭을 클릭합니다.

  3. 복제에 포함된 각 데이터베이스에 대한 확인란을 선택 취소합니다. 이렇게 하면 데이터베이스가 분리될 수 있습니다.

SQL Server SP4 이전 버전으로 되돌리려면

  1. 모든 사용자 데이터베이스를 분리합니다. 자세한 내용은 SQL Server 온라인 설명서에서 "데이터베이스를 연결 및 분리하는 방법(엔터프라이즈 관리자)" 항목을 참조하십시오.

  2. SQL Server를 제거합니다. 제어판에서 프로그램 추가/제거를 두 번 클릭한 다음 제거하려는 SQL Server 인스턴스를 선택하고 제거를 클릭합니다.

  3. CD-ROM 또는 처음에 SQL Server를 설치한 위치에서 SQL Server 2000을 다시 설치합니다.

  4. Database Components SP4 이전에 설치된 서비스 팩 및 핫픽스를 적용합니다.

  5. 설치하기 전에 마지막으로 만든 백업에서 master, msdbmodel 데이터베이스를 복원합니다. 데이터 파일의 위치가 변경되지 않은 경우 백업을 만들었을 때 연결되었던 사용자 데이터베이스가 이러한 복원을 통해 자동으로 연결됩니다.

  6. master 데이터베이스의 마지막 백업 이후에 만들어진 사용자 데이터베이스를 연결합니다.

  7. 필요에 맞게 복제를 구성합니다.

    경고  SQL Server SP4 이전 버전으로 되돌리면 SP4를 적용한 이후에 master, msdbmodel 데이터베이스에서 변경된 내용은 모두 유실됩니다.

 

3.9 Database Components SP4 다시 적용

다음 정보는 모든 구성 요소에 적용됩니다.

다음 경우에 SP4를 다시 적용해야 합니다.

  • SP4를 적용한 후에 새로운 SQL Server 2000 구성 요소가 추가된 경우

  • SP4를 처음 적용할 때는 복제 토폴로지에 속하며 읽기 전용이었던 데이터베이스나 파일 그룹이 쓰기 가능 상태로 전환된 경우

SP4를 다시 적용하려면 3.0 서비스 팩 설치 단원의 단계를 따르십시오.

 

4.0 추가 설치 정보

이 단원에서는 특수한 경우에만 적용되는 추가 서비스 팩 설치 고려 사항을 설명합니다.

 

4.1 무인 설치

Database Components SP4에는 더 이상 미리 정의된 설치 초기화(.iss) 파일이 없습니다. 그러나 Database Components SP4의 설치를 실행할 때마다 설치 옵션이 시스템 폴더에 있는 setup.iss 파일에 작성됩니다. 나중에 .iss 파일을 사용하여 Database Components SP4의 무인 설치를 수행할 수 있습니다. 무인 설치 실행 방법에 대한 자세한 내용은 SQL Server 2000 온라인 설명서에서 "무인 설치 수행" 항목을 참조하십시오.

 

무인 설치 시 고려 사항

다음 사항은 무인 설치와 관련되어 있습니다.

  • 무인 설치를 실행할 시스템의 구성 및 설치 설정 조합마다 별도의 setup.iss 파일을 만들어야 합니다. 설치 동작을 변경하려면 setup.iss 파일을 수정해야 합니다. 자세한 내용은 SQL Server 2000 온라인 설명서에서 "수동으로 설치 파일 만들기" 항목을 참조하십시오.

  • Database Components SP4의 설치를 실행할 때마다 setup.iss 파일을 덮어씁니다. 명령 프롬프트에서 Analysis Services SP4의 설치를 실행하고 Setup.iss 파일을 생성하도록 선택하면 기본적으로 이 파일도 시스템 폴더에 만들어지고 기존의 .iss 파일을 덮어쓸 수 있습니다. 자세한 내용은 Analysis Services SP4 추가 정보 파일에서 4.1 무인 설치 단원을 참조하십시오.

  • 터미널 서비스 환경에서 Database Components SP4를 설치할 때 Setup.iss 파일은 로그인한 사용자의 임시 디렉터리에 만들어집니다.

  • 가능한 경우 Windows 인증을 사용하여 무인 설치를 실행합니다.

  • SQL Server 인증을 사용하여 무인 설치를 실행해야 하는 경우 .iss 파일 또는 일괄 처리 파일은 암호화되어 있지 않으므로 이러한 파일에 sa 로그인 암호를 넣지 마십시오. 대신 다음과 같이 sapwd 매개 변수를 사용하여 명령줄에 sa 로그인에 대한 암호를 제공해야 합니다.
    start /wait setupsql.exe -s -sms -f1 C:\Windows\setup.iss -sapwd password 

    보안 주의 사항  가능한 경우 런타임 시 보안 자격 증명을 제공합니다. 스크립트 파일에 자격 증명을 저장한 경우 이 파일의 보안을 유지하여 무단 액세스를 방지해야 합니다.

  • SP4로 업그레이드할 SQL Server 인스턴스의 sa 로그인 계정에 암호를 지정하지 않은 경우 무인 설치를 실행하기 전에 암호를 제공해야 합니다. sp_password를 실행하여 암호를 변경해야 합니다. 자세한 내용은 SQL Server 2000 온라인 설명서에서 "sp_password"를 참조하십시오.

    보안 주의 사항  암호를 비워 두면 보안이 취약해져 공격을 받기 쉬우므로 암호를 비워 두지 마십시오.

  • 수동으로 만든 .iss 파일 또는 SP3 이전에 만든 .iss 파일을 사용하여 SP4의 무인 설치를 실행할 때 이전 버전과의 호환성 검사 목록오류 보고 대화 상자에 해당되는 다음 설치 스위치를 수동으로 설정해야 합니다. 그렇지 않으면 무인 설치가 제대로 이루어지지 않습니다.

무인 설치 스위치 설명
UpgradeMSSearch 이 스위치는 필요한 전체 텍스트 카탈로그의 다시 작성을 해결하는 데 필요합니다. 전체 텍스트 검색이 설정되면 이 스위치를 1로 설정해야 합니다. 자세한 내용은 5.1.4 설치를 마친 후 전체 텍스트 카탈로그 다시 작성 단원을 참조하십시오.
MSXTSXUpgraded 이 스위치는 마스터/대상 서버 구성 업그레이드와 관련된 문제를 해결하는 데 필요합니다. 마스터 또는 대상 서버에 SP4를 적용하는 경우 이 스위치를 1로 설정해야 합니다. 자세한 내용은 5.3.2 마스터/대상 서버 구성 변경 단원을 참조하십시오.
EnableCrossDBChaining (옵션) 이 스위치는 데이터베이스 간 소유권 체인을 활성화하는 데 사용됩니다. 데이터베이스 간 소유권 체인을 활성화하려면 이 스위치를 1로 설정합니다. 자세한 내용은 5.1.10 데이터베이스 간 소유권 체인 단원을 참조하십시오.
EnableErrorReporting (옵션) 이 스위치는 오류 보고를 활성화하는 데 사용됩니다. 오류 보고를 활성화하려면 이 스위치를 1로 설정합니다. 자세한 내용은 5.9 오류 보고 단원을 참조하십시오.

  • 무인 설치 중에 설치 프로그램이 쓰기 가능하지 않은 데이터베이스나 파일 그룹을 발견하면 해당 정보가 설치 로그에 기록되고 무인 설치는 계속됩니다. 설치 로그에 표시된 쓰기 가능하지 않은 데이터베이스 중에 복제 토폴로지의 구성원이 있으면 해당 데이터베이스를 쓰기 가능 상태로 만들고 해당 SQL Server 2000 인스턴스에 Database Components SP4 설치 프로그램을 다시 적용해야 합니다. 데이터베이스를 쓰기 가능 상태로 만드는 방법에 대한 자세한 내용은 3.6 읽기 전용 데이터베이스 또는 파일 그룹에 SP4 적용 단원을 참조하십시오. SP4 다시 적용에 대한 자세한 내용은 3.11 SP4 다시 적용 단원을 참조하십시오.

 

4.2 SP4 Database Components 재배포

Database Components SP4에는 자동 압축 풀기 파일 Sqlredis.exe가 들어 있습니다. Sqlredis.exe를 실행하면 다음 결과가 발생됩니다.

  1. MDAC(Microsoft Data Access Components) 2.8 서비스 팩 1의 Mdac_typ.exe 파일이 실행됩니다. 그 결과 SP4에 포함되어 있는 MDAC 2.8 SP1a 핵심 구성 요소(동일한 버전이나 최신 버전이 없는 경우)와 SQL Server 및 Desktop Engine 클라이언트 연결 구성 요소 버전이 설치됩니다. 자세한 내용은 1.3 Microsoft Data Access Components 버전 확인 단원을 참조하십시오.

  2. Microsoft Jet ODBC 드라이버와 연결 구성 요소가 설치됩니다.

SP4와 함께 제공되는 Redist.txt 파일에 명시된 약관에 따라 Sqlredis.exe 파일을 재배포할 수 있습니다.

 

4.3 Systems Management Server 배포 설치

Database Components SP4는 원격 위치에서 설치할 수 없습니다. 그러나 Microsoft Systems Management Server를 사용하여 Windows Server 2003, Windows XP 또는 Windows 2000이 실행되는 여러 컴퓨터에 자동으로 SP4를 설치할 수 있습니다. 이렇게 하려면 Systems Management Server에서 SQL Server 패키지의 작성을 자동화하는 패키지 정의 파일(Smssql2ksp4.pdf)을 사용해야 합니다. 그런 다음 이 SQL Server 패키지를 Systems Management Server를 실행하는 컴퓨터에 배포하여 설치할 수 있습니다. Sms2kdef.bat 파일은 Systems Management Server를 사용하여 무인 설치를 시작하는 배치 파일입니다. 이러한 설치 유형의 경우 설치 프로그램에서 필요한 시스템 정보를 자동으로 검색하므로 사용자 작업이 필요하지 않습니다.

 

5.0 설명서 참고

이 단원에서는 Database Components SP4를 적용한 후에 발생할 수 있는 문제와 SP4를 실행할 때 사용할 수 있는 새 기능에 대해 설명합니다. SQL Server 2000의 이전 버전에서 업그레이드하기 위해 서비스 팩을 실행할 때 이러한 문제가 발생됩니다. 이 단원에서는 SP4에 제공된 모든 수정 프로그램에 대해 설명하지는 않습니다. 이러한 수정 프로그램의 전체 목록은 Microsoft 기술 자료 문서 888799를 참조하십시오.

이 추가 정보 파일을 작성할 때 사용할 수 없었던 SQL Server 2000 서비스 팩 4 관련 정보는 모두 Microsoft 기술 자료 문서 884525에 게시될 예정입니다.

 

5.1 데이터베이스 기능 향상

Database Components SP4를 설치한 SQL Server 2000 인스턴스에서 다음과 같은 기능이 향상됩니다.

 

5.1.1 해시 팀 제거

SP1의 추가 기능

해시 팀이 제거되었습니다. SQL Server 2000의 특정 기능이 향상되었으므로 해시 팀은 더 이상 SQL Server 7.0에서 제공했던 성능상의 이점을 제공하지 못합니다. 또한 해시 팀을 제거함으로써 SQL Server 2000은 보다 안정한 상태가 되었습니다.

따라서 쿼리 최적화 프로그램에서는 더 이상 해시 팀을 사용하여 쿼리 계획을 생성하지 않습니다.

드문 경우지만 해시 팀을 제거할 경우 쿼리가 좀더 느리게 처리될 수 있습니다. 이러한 쿼리를 분석하여 보다 적절한 인덱스를 만들어 쿼리 성능을 이전 수준으로 회복할 수 있는지 여부를 확인하십시오.

 

5.1.2 선호도 마스크 스위치 추가

SP1의 추가 기능

이 서비스 팩에는 두 개의 선호도 마스크 스위치가 추가되었습니다.

선호도 마스크 I/O 스위치

이 서비스 팩을 사용하면 디스크 I/O 작업을 위해 스레드를 실행하는 데 사용되는 CPU를 지정할 수 있습니다. 이 스위치는 선호도 마스크 옵션과 함께 사용해야 합니다. 자세한 내용은 기술 자료 문서 298402를 참조하십시오.

선호도 마스크 연결 스위치

이 서비스 팩을 사용하면 VIA(Virtual Interface Architecture)를 사용하도록 설정된 시스템을 특정 네트워크 카드에서 프로세서나 프로세스 집합으로 SQL Server 연결을 바인딩하도록 구성할 수 있습니다. 이 스위치는 선호도 마스크 옵션과 함께 사용해야 합니다. 자세한 내용은 기술 자료 문서 299641을 참조하십시오.

 

5.1.3 필터링된 인덱스된 뷰

SP2의 추가 기능

Microsoft 기술 자료 문서 306467에서 설명하는 SQL Server 2000 버그 355069가 발생한 경우 이 서비스 팩을 적용해도 이미 데이터는 수정된 상태이므로 예상치 못한 결과가 더 이상 발생하지 않도록 막는 효과만 얻을 수 있습니다. 이 수정 프로그램을 적용하는 것 외에 필터 조건이 지정된 뷰 기반의 모든 인덱스를 다시 만들어야 합니다.

 

5.1.4 설치를 마친 후 전체 텍스트 카탈로그 다시 작성

SP3의 추가 기능

SP2 이하 버전에서 업그레이드할 경우 SP4 설치 작업의 일환으로 모든 전체 텍스트 카탈로그가 다시 작성됩니다. 이 작업은 자동으로 수행되며 리소스가 많이 소요됩니다. 전체 텍스트 카탈로그에 대한 쿼리는 다시 작성 프로세스가 완료될 때까지 부분적인 결과만 반환하거나 아무런 결과도 반환하지 않습니다. SP4를 설치하면 시스템 이벤트 로그에 이전 버전 카탈로그가 손상되었으므로 다시 작성해야 한다는 내용의 메시지가 표시됩니다.

자세한 내용은 기술 자료 문서 327217을 참조하십시오. 이 문서에서는 다시 작성 프로세스 중에 전체 텍스트 검색 기능을 계속 사용 가능 상태로 유지하고 다시 작성 작업이 자동으로 수행되지 않도록 하는 방법에 대해서도 설명합니다.

 

5.1.5 sp_change_users_login 구문 변경

SP3의 추가 기능

@Action=Auto_Fix 인수를 사용하여 sp_change_users_login을 실행할 때는 암호를 지정해야 합니다. sp_change_users_login은 사용자를 위해 만든 새 로그인에 이 암호를 할당합니다. 다음 예제에서는 새로운 @Password 인수를 보여 줍니다.

sp_change_users_login [ @Action = ] 'action' [ , [ @UserNamePattern = ] 'user' ] [ , [ @LoginName = ] 'login' ] [ , [ @Password = ] 'password' ]

@Password 인수는 @Action=Auto_Fix와만 함께 사용합니다. 다음 예제에서는 Auto_Fix를 사용할 경우 sp_change_users_login 명령의 새 구문을 보여 줍니다. SQL Server 온라인 설명서의 다른 예제는 변경되지 않고 그대로 유지됩니다.

USE pubs go EXEC sp_change_users_login 'Auto_Fix', 'Mary', NULL, 'B3r12-36' Go

 

5.1.6 기본적으로 사용 해제된 OLE DB 공급자에 대한 임의 액세스

SP3의 추가 기능

DisallowAdhocAccess 레지스트리 옵션을 명시적으로 설정하지 않으면 기본적으로 OLE DB 공급자에 대한 임의 액세스가 허용되지 않습니다. 즉, OPENDATASOURCE 및 OPENROWSET과 같은 임의의 쿼리 구문이 원격 서버에 작동되지 않습니다. 임의 액세스를 허용하려면 DisallowAdhocAccess 옵션을 명시적으로 0으로 설정해야 합니다.

 

5.1.7 새 SqlServerLike 공급자 옵션

SP3의 추가 기능

LIKE 조건자를 포함하는 원격 쿼리를 보다 효율적으로 처리하기 위해 SP3에 SqlServerLike 옵션이 추가되었습니다. SQL Server 2000 SP3 이상 버전에는 LIKE 연산을 연결된 서버로 보내기 위한 두 가지 옵션이 있습니다. 연결된 서버의 OLE DB 공급자가 LIKE 연산자와 와일드카드에 대해 SQL Server 구문을 지원하면 SqlServerLIKE 옵션을 지정하여 SQL Server가 SQL Server 구문을 사용하여 LIKE 연산을 보낼 수 있도록 지정할 수 있습니다. 연결된 서버의 OLE DB 공급자가 초급 단계 ANSI/ISO SQL-92 구문을 지원하고 SQLPROP_ANSILIKE 속성을 반환하는 것으로 보고하면 SQL Server는 SQL-92 구문을 사용하여 연결된 서버에 LIKE 연산을 보냅니다. SQLPROP_ANSILIKE에 대한 자세한 내용은 SQL Server 2000 온라인 설명서에서 "SQLPROPSET_OPTHINTS 속성 설정 프로그래밍" 항목을 참조하십시오.

OLE DB 공급자에 대해 SqlServerLIKE 옵션을 사용하려면 레지스트리 키 값을 추가해야 합니다.

보안 주의 사항   레지스트리를 잘못 편집하면 심각한 문제가 발생하여 운영 체제를 다시 설치해야 할 수도 있습니다. Microsoft는 레지스트리를 잘못 편집하여 발생할 수 있는 문제 해결에 대해 보증하지 않습니다. 레지스트리를 편집하기 전에 중요한 데이터를 모두 백업하십시오.

  1. Regedit32를 엽니다.

  2. 적절한 레지스트리 키를 찾습니다.
    • 명명된 인스턴스의 경우 다음 키를 찾습니다.

      HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\<Instance Name>\Providers\<Provider Name>

    • 기본 인스턴스의 경우 다음 키를 찾습니다.

      HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Providers\<Provider Name>

  3. <Provider Name> 키에서 SqlServerLIKE라는 DWORD 값을 추가하고 해당 값을 1로 설정합니다.

 

5.1.8 분산 쿼리의 확장된 오류 메시지 확장

SP3의 추가 기능

분산 쿼리에 대해 SQL Server에서는 서버 오류 정보와 함께 공급자 오류 정보를 반환합니다. 연결된 서버 간의 쿼리로 인해 오류가 발생하면 SQL Server에서는 공급자가 IErrorRecords OLE DB 인터페이스를 지원하는지 여부를 확인합니다. 이 인터페이스가 지원되면 SQL Server에서는 GetErrorInfo 함수를 호출하여 공급자로부터 추가 오류 정보를 가져오고 이 정보를 오류 메시지의 일부로 사용자에게 반환합니다. IErrorRecords 인터페이스가 지원되지 않으면 다음과 같이 SQL Server 동작에는 변함이 없습니다. 즉, SQL Server가 일반 오류를 반환합니다.

예를 들어 sql_variant를 지원하지 않는 MSDASQL을 사용하는 서버에 대해 다음 쿼리를 실행합니다.

SELECT * FROM remote2k.dqtable.dbo.sqlvariantnotnull --Remote2k is a loopback server.

SP3 이전에는 SQL Server에서 다음 오류 메시지를 반환했습니다.

Server: Msg 7356, Level 16, State 1, Line 1

OLE DB provider 'msdasql' supplied inconsistent metadata for a column.
Metadata information was changed at execution time.

SP3 이상을 적용한 후에는 SQL Server에서 다음 오류 메시지를 반환합니다.

Server: Msg 7356, Level 16, State 1, Line 1

OLE DB provider 'msdasql' supplied inconsistent metadata for a column.
Metadata information was changed at execution time.

OLE DB error trace [Non-interface error:  Column 'sql_variant' (compile-time
ordinal 3) of object '"dqtable"."dbo"."sqlvariantnotnull"' was reported
to have a DBCOLUMNFLAGS_ISFIXEDLENGTH of 16 at compile time and 0 at run time].

 

5.1.9 새 함수 fn_get_sql의 SQL 문 반환

SP3의 추가 기능

SP3 이상의 버전에는 지정된 SQL 핸들에 대해 SQL 문의 텍스트를 반환하는 새로운 함수인 fn_get_sql이 포함되어 있습니다. 또한 이 함수를 지원하기 위해 세 개의 새로운 열(sql_handle, stmt_startstmt_end)이 sysprocesses 시스템 테이블에 추가되었습니다.

fn_get_sql은 SQL Server 2000 온라인 설명서의 최신 사본에 설명되어 있습니다. SQL Server 2000 온라인 설명서 최신 버전 설치에 대한 자세한 내용은 1.6 SQL Server 2000 온라인 설명서의 업데이트 사용 가능 단원을 참조하십시오. 이것은 fn_get_sql에 대한 참조 항목의 영문 사본입니다.

 

5.1.10 데이터베이스 간 소유권 체인

SP3의 추가 기능

이 서비스 팩에서는 데이터베이스 간 소유권 체인을 설정 및 해제하기 위한 새로운 옵션을 제공합니다.

Database Components SP4 설치 중에 이전 버전과의 호환성 검사 목록 대화 상자에 데이터베이스 간 소유권 체인을 구성하기 위한 옵션이 표시됩니다. 기본적으로 설치 프로그램은 모든 사용자 데이터베이스에 대해 데이터베이스 간 소유권 체인 기능을 해제합니다. 모든 데이터베이스에 대해 데이터베이스 간 소유권 체인 기능을 설정할 수 있습니다. 자세한 내용은 이전 버전과의 호환성 검사 목록 대화 상자를 참조하십시오.

참고   모든 데이터베이스에 대해 데이터베이스 간 소유권 체인을 사용하지 않는 것이 좋습니다.

설치 후에 다음 방법을 사용하여 인스턴스의 모든 데이터베이스에 대한 데이터베이스 간 소유권 체인 기능을 설정 및 해제할 수 있습니다.

  • sp_configure 시스템 저장 프로시저의 새로운 Cross DB Ownership Chaining 인수를 사용합니다.

  • 엔터프라이즈 관리자에서 SQL Server 속성 대화 상자의 보안 탭에 있는 데이터베이스 간 소유권 체인 허용 옵션을 사용합니다.

  • SQLServer.Configuration.ConfigValues DMO(Database Management Objects) 컬렉션을 사용합니다. SQLServer 개체에서 SQL Server 2000 SP3 이상 버전의 인스턴스를 참조할 때 이 컬렉션은 Cross DB Ownership Chaining이라는 ConfigValue 개체를 포함합니다.

해당 인스턴스에 대해 데이터베이스 간 소유권 체인이 해제되어 있으면 개별 데이터베이스에 대해 이 기능을 구성할 수 있습니다. 다음 방법을 사용하여 데이터베이스에 대한 데이터베이스 간 소유권 체인 기능을 설정 및 해제합니다.

  • sp_dboption 시스템 저장 프로시저의 새로운 db chaining 옵션을 사용합니다.

  • 엔터프라이즈 관리자에서 데이터베이스 속성 대화 상자의 옵션 탭에 있는 데이터베이스 간 소유권 체인 허용 옵션을 사용합니다.

  • DBOption2 DMO 개체의 DBChaining 속성을 사용합니다.

자세한 내용은 설치 프로그램을 실행할 때 이전 버전과의 호환성 검사 목록 페이지에서 도움말 단추를 클릭하거나 업데이트된 버전의 SQL Server 2000 온라인 설명서를 다운로드하거나 기술 자료 문서 810474를 참조하십시오.

 

5.1.11 추적 플래그1204의 기능 향상

SP3의 추가 기능

추적 플래그 1204는 교착 상태에 있는 잠금의 유형과 영향을 받은 현재 명령을 반환합니다. SP3 이상에서 이 추적 플래그가 설정되면 교착 상태 정보가 자동으로 오류 로그에 기록됩니다.

 

5.1.12 sp_changedbowner의 사용 권한 변경

SP3의 추가 기능

sysadmin 고정 서버 역할의 구성원만 sp_changedbowner 시스템 저장 프로시저를 실행할 수 있습니다.

 

5.1.13 디버깅 기능 변경

SP3의 추가 기능

Microsoft Visual Studio® 6.0 및 이전 버전을 사용하거나 SP3 이전의 SQL Server 쿼리 분석기를 사용하여 저장 프로시저를 디버깅하는 기능은 기본적으로 해제되어 있습니다. 응용 프로그램 디버깅(클라이언트 응용 프로그램을 디버깅하는 동안 SQL Server Transact-SQL 중단점에서 중지) 기능 또한 기본적으로 해제되어 있습니다. 디버깅 기능을 사용하려면 매개 변수 legacy_on을 제공하여 sp_sdidebug를 실행합니다. 디버깅 기능을 사용하지 않으려면 이 프로시저에 legacy_off를 제공합니다.

참고   프로덕션 서버에서는 sp_sdidebug 저장 프로시저를 실행하지 않는 것이 좋습니다.

자세한 내용은 Microsoft 기술 자료 문서 328151을 참조하십시오.

참고   온라인 설명서에는 클라이언트쪽 디버깅 구성 요소 sqldbreg.exe로 나와 있습니다. SP3에서 이 구성 요소 파일의 이름은 sqldbreg2.exe로 변경되었습니다.

 

5.1.14 클러스터된 서버에서 명명된 파이프를 사용할 수 없도록 설정할 수 없음

SP3의 추가 기능

서비스 팩을 적용한 후에는 장애 조치 클러스터에 연관된 데이터베이스 엔진 인스턴스에서 명명된 파이프 프로토콜을 사용할 수 없게 할 수 없습니다.

 

5.1.15 UDP 포트 1434 작업

SP3a의 추가 기능

네트워크 통신을 지원하도록 구성되지 않은 SQL Server 2000 데이터베이스 엔진 및 MSDE 2000 인스턴스는 SQL Server 2000 SP3a와 함께 시작하여 User Datagram Protocol(UDP) 포트 1434를 중지합니다. 네트워크 통신을 지원하도록 구성된 인스턴스는 UDP 1434를 사용합니다.

SP3a 이후 버전으로 업그레이드된 인스턴스는 공유 메모리 Net-Library 이외의 해당 인스턴스에 대한 모든 서버 Net-Library가 비활성화될 때마다 UDP 1434 사용을 중지합니다. 해당 인스턴스는 모든 서버 Net-Library를 활성화할 때마다 포트 1434를 사용하여 시작합니다. 서버 Net-Library 비활성화 또는 활성화 방법에 대한 자세한 내용은 SQL Server 2000 온라인 설명서에서 "SQL Server 네트워크 유틸리티" 항목을 참조하십시오.

컴퓨터에서 UDP 포트 1434를 사용하면 컴퓨터의 SQL Server 2000 및 MSDE 2000의 모든 인스턴스가 SP3a 이후 버전으로 업그레이드되고 네트워크 통신을 지원하지 않도록 구성할 때까지 중지되지 않습니다.

UDP 포트 1434가 열려 있거나 닫혀 있는지 여부는 공유 메모리 Net-Library의 상태와는 관계 없습니다. 공유 메모리 Net-Library는 로컬 연결에만 사용되며 네트워크를 사용하지 않습니다. 공유 메모리 Net-Library는 항상 활성 상태이므로 활성화 또는 비활성화할 수 없습니다.

SQL Server 2000 데이터베이스 엔진 인스턴스를 설치하거나 업그레이드할 때 모든 Net-Library 서버를 사용 가능하지 않도록 설정할 수 없습니다.

 

5.1.16 최대 네트워크 패킷 크기 변경

SP4의 추가 기능

SP4에서 sp_configure를 사용하여 설정되는 네트워크 패킷 크기 옵션의 최대값은 32767입니다. 이 값은 이전 최대값인 65536의 반 값인 32768보다 적습니다. 업그레이드하는 동안 32767보다 큰 기존 값은 자동으로 32767로 조정됩니다. 스크립트에서 sp_configure를 사용하여 32767보다 크지만 65536 이하로 값을 설정하려는 경우 해당 값도 32767로 설정됩니다. 네트워크 패킷 크기를 65536보다 큰 값으로 설정하면 오류가 발생합니다.

 

5.1.17 큰 IN 목록 또는 다수의 OR 절을 사용하여 쿼리 최적화

SP4의 추가 기능

SP4에서는 큰 IN 목록 또는 많은 OR 절이 있는 조건자를 포함한 쿼리에 영향을 주는 SQL Server 최적화 프로그램의 동작이 변경되었습니다. 특히 이 변경 내용은 SQL Server 2000 핫픽스 789에 처음 도입되었는데 다음 내용을 포함하는 쿼리 또는 다음 내용을 포함하는 동일한 식을 사용하여 다시 작성될 수 있는 쿼리에 영향을 줍니다.

  • IN 목록에 있는 10,000개 이상의 요소

  • 각각 100개 이상의 요소를 포함하는 두 개의 IN 목록

  • OR 절에서 10,000개 이상의 분리

  • 동등한 식에 10,000개 이상의 분리가 포함되도록 OR 절 및 IN 목록 조합

이러한 변경으로 인해 SQL Server가 이러한 형식의 명령문을 컴파일할 때 메모리를 적게 사용하므로 메모리 부족 오류가 발생하지 않습니다. 드물게 이러한 형식의 쿼리가 대용량의 메모리와 낮은 수준의 병렬 처리 시스템에서 실행될 때 최적화 프로그램에서 저성능의 쿼리 계획을 선택할 수도 있습니다. 최적화 프로그램 동작의 변경을 무시할 수 있도록 이 서비스 팩에 추적 플래그 9060이 제공됩니다. 기본적으로 추적 플래그 9060은 해제되어 있습니다. 추적 플래그를 설정하면 핫픽스 789 이전의 SP3 동작이 사용 가능하도록 설정됩니다. 추적 플래그가 설정되어 있을 때 오류 701(시스템 메모리 부족)이 발생할 경우 IN 목록의 값에 임시 테이블 또는 테이블 변수를 사용하여 쿼리를 다시 작성합니다. 숫자 범위의 경우 BETWEEN 절, 보다 큼(>) 보다 작음(<) 연산자를 사용합니다. 추적 플래그 사용 방법에 대한 자세한 내용은 SQL Server 온라인 설명서에서 "추적 플래그"를 참조하십시오.

 

5.1.18 향후 네트워크 프로토콜 지원

SP4의 추가 기능

Banyan VINES, Multiprotocol, AppleT!alk 및 NWLink IPX/SPX 네트워크 프로토콜이 SP4에서 지원됩니다. 그러나 SQL Server 2005 이후 릴리스에서는 지원되지 않습니다. 이에 따라 계획을 세우십시오.

 

5.1.19 WOW(Windows-on-Windows) 64 모드로 실행 중인 SQL Server의 인스턴스 모니터링

SP4의 추가 기능

Windows Server 2003 x64 SP1 이상 버전에서 WOW(Windows-on-Windows) 64 모드로 실행 중인 경우 기본 64비트 버전의 Windows 성능 모니터를 사용하면 SQL Server 2000 SP4 인스턴스를 모니터링하는 데 사용되는 SQL Server 성능 카운터에 액세스할 수 없습니다. 대신 32비트 버전의 Windows 성능 모니터를 사용해야 합니다. 32비트 버전은 다음 위치에 있습니다.

%systemdrive%\WINDOWS\SysWOW64\perfmon.exe

WOW 모드에서는 32비트 버전의 성능 모니터가 SQL Server 2000 SP4 인스턴스와 동일한 컴퓨터에서 실행되는 경우에만 SQL Server 성능 카운터를 볼 수 있습니다.

이 제한 사항은 64비트 Itanium 기반 시스템용 Windows Server 2003에는 적용되지 않습니다.

 

5.2 복제 기능 향상

이 단원에서는 SP4에 포함되어 있는 SQL Server 2000 복제 기능의 향상된 기능에 대해 설명합니다.

 

5.2.1 트랜잭션 복제 UPDATE 사용자 지정 저장 프로시저

SP1의 추가 기능

트랜잭션 복제 설치 중에 삽입, 삭제 및 업데이트 작업을 위한 사용자 지정 저장 프로시저가 구독 데이터베이스에서 만들어집니다. UPDATE 문의 영향을 받는 열 수에 관계없이 업데이트 사용자 지정 저장 프로시저는 구독 테이블의 모든 열을 업데이트합니다. 변경되지 않은 열은 업데이트 전과 동일한 값으로 재설정됩니다. 일반적으로 이러한 재설정 작업은 문제를 발생시키지 않습니다. 그러나 이러한 열이 인덱싱된 경우에는 이러한 재설정 작업에 많은 리소스가 소요될 수 있습니다.

트랜잭션 복제를 사용하고 있으며 구독 테이블에 여러 인덱스가 있고, 업데이트로 인해 소수의 열 값만 변경된 경우 인덱스를 유지 관리하는 데 필요한 오버헤드 때문에 구독자에 변경 내용을 적용할 때 성능이 제한될 수 있습니다. 예를 들어 보고 자료로 사용되는 구독 데이터베이스는 게시 데이터베이스보다 많은 인덱스를 포함할 수 있습니다. 런타임에 동적으로 UPDATE 문을 작성하면 성능이 향상될 수 있습니다. 이 경우 변경된 열만 업데이트되므로 최적의 UPDATE 문자열이 만들어집니다.

이 서비스 팩은 런타임에 동적으로 UPDATE 문을 작성하기 위해 구독자에서 사용할 수 있는 사용자 지정 저장 프로시저를 생성하는 새로운 저장 프로시저인 sp_scriptdynamicupdproc를 포함합니다. 그러나 런타임에 동적 UPDATE 문을 작성하기 위해서는 추가 처리가 요구됩니다.

sp_scriptdynamicupdproc는 SQL Server 2000 온라인 설명서의 최신 사본에 설명되어 있습니다. SQL Server 2000 온라인 설명서 최신 버전 설치에 대한 자세한 내용은 1.6 SQL Server 2000 온라인 설명서의 업데이트 사용 가능 단원을 참조하십시오. 이것은 sp_scriptdynamicupdproc에 대한 참조 항목의 영문 사본입니다.

 

5.2.2 고유 열의 트랜잭션 복제 UPDATE 문

SP1의 추가 기능

트랜잭션 복제에서 UPDATE 문은 대개 업데이트로서 복제됩니다. 그러나 이 업데이트로 인해 고유 인덱스, 클러스터된 인덱스 또는 고유 제약 조건으로 사용되는 식에 속하는 열이 변경되면 업데이트의 결과로 구독자에서 DELETE 문이 수행된 후 INSERT 문이 수행됩니다. 이 업데이트 유형이 여러 행에 영향을 줄 수 있으며 업데이트가 행 단위로 전달될 경우 고유성 위반이 발생할 수 있으므로 이러한 동작이 발생하는 것입니다.

업데이트가 하나의 행에만 영향을 주는 경우 고유성이 위반될 가능성이 없습니다. 따라서 하나의 행에만 영향을 주는 고유 열에 대한 업데이트가 UPDATE 문으로서 복제될 수 있도록 이 서비스 팩에 추적 플래그 8207이 추가되었습니다. 이러한 최적화 기능은 구독자에 사용자 정의 UPDATE 트리거를 설치하고 고유 열의 한 행에만 영향을 주는 업데이트에 대해 이러한 트리거 발생을 요구하는 응용 프로그램을 위해 특별히 추가된 것입니다.

추적 플래그 8207을 사용하려면 로그 판독기 에이전트가 시작되기 전에 명령 프롬프트(sqlservr.exe -T8207)에서 또는 DBCC TRACEON(8207, -1)을 사용하여 런타임에 이 플래그를 설정합니다.

중요   일반적으로 추적 플래그 8207은 읽기 전용 트랜잭션 복제에 사용됩니다. 구독자에서 기본 키 UPDATE가 발생할 수 있는 경우에는 업데이트 가능 구독에서 이 추적 플래그를 사용하지 마십시오.

5.2.3 동시 스냅샷 처리에서 제한 제거

SP1의 추가 기능

SQL Server 2000에서는 게시 테이블에 기본 키나 클러스터링 키가 아닌 고유 인덱스가 있는 경우 동시 스냅샷 처리가 권장되지 않았습니다. 동시 스냅샷이 생성되는 동안 클러스터링 키의 데이터가 수정되면 구독자에 동시 스냅샷을 적용할 때 키 중복 오류로 인해 복제가 실패할 수 있었습니다. 이 서비스 팩을 사용하면 동시 스냅샷 처리 기능을 제한 없이 사용할 수 있습니다.

 

5.2.4 트랜잭션 복제 스크립팅 사용자 지정 저장 프로시저

SP1의 추가 기능

nosync 구독(초기 스냅샷을 받지 않는 구독)을 설정할 때 INSERT, UPDATE 및 DELETE 문에 대한 사용자 지정 저장 프로시저를 직접 만들어야 합니다. 대개 이러한 문은 초기 스냅샷이 전달될 때 구독자에서 만들어집니다. 게시 수준에서 사용자 지정 저장 프로시저에 대한 스크립트를 생성하기 위해 새로운 저장 프로시저인 sp_scriptpublicationcustomprocs가 추가되었습니다. 이 새 기능을 사용하면 nosync 구독을 보다 쉽게 설정할 수 있습니다.

sp_scriptpublicationcustomprocs는 SQL Server 2000 온라인 설명서의 최신 사본에 설명되어 있습니다. SQL Server 2000 온라인 설명서 최신 버전 설치에 대한 자세한 내용은 1.6 SQL Server 2000 온라인 설명서의 업데이트 사용 가능 단원을 참조하십시오. 이것은 sp_scriptpublicationcustomprocs에 대한 참조 항목의 영문 사본입니다.

 

5.2.5 병합 복제 보존 기간에 따른 메타데이터 정리

SP1의 추가 기능

병합 복제 시스템 테이블에 많은 양의 메타데이터가 포함되어 있을 때 메타데이터를 정리하면 성능이 향상됩니다. SQL Server 2000 SP1 이전에는 sp_mergecleanupmetadata를 실행하여 메타데이터를 정리할 수 있었습니다. 그러나 SQL Server 2000 SP1 이상 버전에는 보존 기간에 따른 메타데이터 정리 기능이 제공됩니다. 즉, 다음 시스템 테이블에서 메타데이터가 자동으로 삭제될 수 있습니다.

  • MSmerge_contents

  • MSmerge_tombstone

  • MSmerge_genhistory

  • 이전 이미지 테이블(있는 경우)

참고   게시에서 @keep_partition_changes 동기화 최적화 옵션이 활성화되어 있으면 이전 이미지 테이블이 존재합니다.

보존 기간에 따른 메타데이터 정리 작업은 다음과 같이 실행됩니다.

  • –MetadataRetentionCleanup 병합 에이전트 매개 변수가 기본값인 1로 설정되면 병합 에이전트는 병합에 포함된 구독자와 게시자를 정리합니다.

  • -MetadataRetentionCleanup 매개 변수가 0으로 설정되면 자동 정리 작업이 실행되지 않습니다. 이 경우 sp_mergemetadataretentioncleanup을 실행하여 보존 기간에 따른 메타데이터 정리 기능을 수동으로 시작합니다. 이 저장 프로시저는 정리가 필요한 모든 게시자와 구독자에서 실행해야 합니다. 게시자와 구독자를 비슷한 시점에 정리하는 것이 좋지만 반드시 그럴 필요는 없습니다. 자세한 내용은 이 단원 뒷부분의 거짓 충돌 방지를 참조하십시오.

    참고   SQL Server 2000 SP1 이상 버전에 포함된 모든 병합 에이전트 프로필에 대해 -MetadataRetentionCleanup 매개 변수를 1로 설정합니다. 서버를 SP1 이상으로 업그레이드한 다음 병합 복제를 추가하면 이 매개 변수를 포함하도록 병합 에이전트 프로필이 자동으로 업데이트됩니다. 이미 병합 복제가 활성화된 서버를 SP1 이상으로 업그레이드하면 병합 에이전트 프로필이 자동으로 업데이트되지 않습니다. 따라서 sp_add_agent_parameter를 실행하여 프로필을 업데이트해야 합니다. 자세한 내용은 이 단원 뒷부분의 sp_add_agent_parameter의 추가 매개 변수를 참조하십시오.

    중요   게시에 대한 기본 보존 기간은 14일입니다. 아티클이 여러 게시에 속할 경우 보존 기간이 여러 개 있을 수 있습니다. 이러한 경우 가장 긴 보유 시간을 사용하여 정리가 발생할 수 있는 가장 이른 시간을 결정합니다. 데이터베이스에 게시가 여러 개 있고 이 게시 중 하나가 무한 게시 보유 기간(@retention=0)을 사용하는 경우에는 데이터베이스의 병합 메타데이터가 자동으로 정리되지 않습니다. 따라서 무한 게시 보존 기간을 사용할 때는 주의해야 합니다.

sp_add_agent_parameter의 추가 매개 변수

시스템 저장 프로시저 sp_add_agent_parameter에는 MetadataRetentionCleanup 매개 변수가 들어 있어 병합 에이전트 프로필에서 보존 기간에 따른 메타데이터 정리를 추가 또는 제거할 수 있습니다. 값 1은 프로필이 정리를 포함함을 나타내고 값 0은 정리를 포함하지 않음을 나타냅니다. 예를 들어 프로필에 보존 기간에 따른 메타데이터 정리를 추가하려면 다음 코드를 실행합니다.

EXEC sp_add_agent_parameter @profile_id=<my_profile_id>, @parameter_name='MetadataRetentionCleanup', @parameter_value=1
여러 버전의 SQL Server를 포함하는 토폴로지의 메타데이터 정리

병합 복제에 포함된 데이터베이스에서 보존 기간에 따른 자동 정리 작업이 수행되려면 데이터베이스와 병합 에이전트가 모두 SQL Server 2000 SP1 이상이 실행되는 서버에 있어야 합니다. 다음 예를 참조하십시오.

  • SQL Server 7.0 끌어오기 구독자는 SQL Server 2000 SP1 게시자에서 정리를 실행하지 않습니다.

  • SQL Server 2000 SP1 밀어넣기 병합 에이전트는 SP1 이전의 SQL Server 2000 구독자 데이터베이스에서 정리를 실행하지 않습니다.

  • SQL Server 2000 SP1 밀어넣기 병합 에이전트는 SQL Server 2000 이전 버전이 실행되는 SQL Server 2000 SP1 구독자를 포함하는 경우에도 게시자 데이터베이스에서 정리를 실행합니다.

일부 서버에서만 자동 정리가 수행되어도 거짓 충돌을 제외하고 별 문제는 나타나지 않으며 이러한 충돌도 자주 발생하지 않는 편입니다. SQL Server 2000 SP1 이전 버전을 포함하는 토폴로지의 경우 자동으로 정리되지 않는 모든 서버에서 sp_mergemetadatacleanup을 실행하여 성능상의 이점을 얻을 수 있습니다.

거짓 충돌 방지

보존 기간에 따른 메타데이터 정리 기능은 다른 노드에서 발생한 변경 내용을 수렴하지 않는 방식으로 자동으로 덮어쓰지 못하게 방지합니다. 그러나 다음 조건이 충족되면 거짓 충돌이 발생할 수 있습니다.

  • 메타데이터가 한쪽 노드에서는 정리되고 다른 쪽 노드에서는 정리되지 않은 경우

  • 정리된 노드에서 메타데이터가 삭제된 행에 대해 업데이트가 수행된 경우

예를 들어 메타데이터가 게시자에서는 정리되고 구독자에서는 정리되지 않은 상태에서 게시자에서 업데이트가 수행되면 데이터가 동기화된 상태인 것처럼 보여도 충돌이 발생합니다.

이러한 충돌을 방지하려면 관련 노드에서 거의 동시에 메타데이터를 정리해야 합니다. -MetadataRetentionCleanup이 1로 설정되면 게시자와 구독자 모두 병합이 시작되기 전에 자동으로 정리되므로 노드가 동시에 정리되는 효과를 얻을 수 있습니다. 충돌이 발생하면 병합 복제 충돌 뷰어를 사용하여 충돌을 확인하고 필요에 맞게 결과를 변경합니다.

하나의 아티클이 여러 게시에 속하거나 재게시가 수행될 경우 게시자와 구독자에서 특정 행에 대한 보존 기간이 다를 수 있습니다. 한쪽에서만 메타데이터가 정리되는 경우를 방지하려면 각 게시의 보존 기간을 비슷하게 조정하는 것이 좋습니다.

참고   시스템 테이블에 정리해야 할 메타데이터가 많이 있으면 병합 프로세스를 실행하는 데 시간이 오래 걸릴 수 있습니다. 정기적으로 메타데이터를 정리하면 이러한 문제를 방지할 수 있습니다.

 

5.2.6 병합 복제에 대한 백업 및 복원 문제

SP1의 추가 기능

백업에서 복원되는 게시 데이터베이스는 올바른 수렴 동작을 보장하기 위해 먼저 글로벌 구독(우선 순위 값이 할당된 구독)을 갖는 구독 데이터베이스와 동기화해야 합니다. 동기화를 수행하면 복원 작업으로 인해 게시 데이터베이스에서 유실된 변경 내용이 정확하게 다시 적용될 수 있습니다.

게시 데이터베이스를 익명 구독을 갖는 구독 데이터베이스와 동기화하면 안 됩니다. 익명 구독은 게시 데이터베이스에 변경 내용을 적용할 수 있을 만큼 충분한 메타데이터를 보유하지 않으므로 이러한 동기화로 인해 데이터가 수렴되지 못하는 결과를 가져올 수 있습니다.

병합 복제에 대해 백업 및 복원 작업을 계획할 때는 다음 사항을 추가로 고려하십시오.

  • 보유 기간을 넘지 않은 백업에서 구독 데이터베이스를 복원합니다.

백업이 구독자가 구독하는 모든 게시의 가장 짧은 보존 기간보다 오래되지 않은 경우에만 백업에서 구독 데이터베이스를 복원합니다. 예를 들어 구독자가 각각 보유 기간이 10일, 20일, 30일인 세 개의 게시를 구독하는 경우 데이터베이스 복원에 사용되는 백업은 10일보다 오래된 것이면 안 됩니다.

  • 백업을 생성하기 전에 동기화를 수행합니다.

백업을 수행하기 전에 구독자는 게시자와 동기화를 수행하도록 강력히 권장됩니다. 그렇지 않은 상태에서 구독자를 이 백업에서 복원하면 시스템이 데이터를 제대로 수렴하지 못할 수 있습니다. 백업 파일이 아무리 최신 파일이어도 보유 기간이 끝날 무렵에 게시자와 마지막으로 동기화를 수행할 수도 있는 것입니다. 예를 들어 보유 기간이 10일인 게시가 있을 수 있습니다. 8일 전에 마지막 동기화를 수행했으며 지금 백업을 수행했습니다. 백업을 4일 후에 적용한다면 마지막 동기화는 보유 기간이 넘어 버린 12일 전에 발생한 셈이 됩니다. 구독자가 백업 직전에 동기화를 수행했다면 구독 데이터베이스는 보유 기간을 초과하지 않게 됩니다.

  • 게시 보유 기간 값을 변경한 경우 구독자를 다시 초기화합니다.

게시 보존 기간 값을 변경해야 하는 경우 데이터가 제대로 수렴될 수 있도록 구독자를 수동으로 다시 초기화합니다. 보유 기간에 따른 메타데이터 정리 기능은 게시 보유 기간에 도달하면 병합 시스템 테이블에서 날짜가 지난 메타데이터를 삭제합니다.

보존 기간 내에 동기화되지 않은 구독이 만료되는 시기를 결정하기 위해 게시 보존 기간 값이 사용됩니다. 정리 후에 게시 보유 기간이 늘어나고 구독이 이미 메타데이터를 삭제한 게시자와의 병합을 시도하면 늘어난 보유 기간으로 인해 구독은 만료되지 않습니다. 또한 게시자는 구독자에게 변경 내용을 다운로드할 만큼의 충분한 메타데이터를 보유하지 않게 되며 이로 인해 데이터가 제대로 수렴되지 못할 수 있습니다.

  • 모든 게시자와 대체 동기화 파트너에 대해 동일한 게시 보존 기간 값을 사용합니다. 다른 보존 기간 값을 사용하면 데이터가 수렴되지 못할 수 있습니다.

 

5.2.7 다른 버전의 SQL Server에서 복제된 데이터베이스 복원

SP1의 추가 기능

백업이 만들어진 서버와 동일한 SQL Server 버전을 실행하는 서버 및 데이터베이스로 백업을 복원하면 복제 설정이 보존됩니다. 복제된 데이터베이스를 데이터베이스 백업에 사용한 SQL Server 버전과는 다른 버전으로 복원할 경우 다음 사항을 고려하십시오.

  • SQL Server 2000으로 만든 백업에서 Database Components SP4로 데이터베이스를 복원하며 복제 설정을 보존하려면 sp_vupgrade_replication을 실행해야 합니다. sp_vupgrade_replication을 실행하면 복제 메타데이터가 업그레이드됩니다. sp_vupgrade_replication을 실행하지 않으면 복제 메타데이터는 예측할 수 없는 상태가 될 수 있습니다.

  • SQL Server 7.0(릴리스 버전 또는 서비스 팩)으로 만든 백업에서 SQL Server 2000으로 데이터베이스를 복원하며 복제 설정을 보존하려면 서비스 팩을 설치하기 전에 백업을 다시 만들어야 합니다. SQL Server 7.0에서 만든 복제된 데이터베이스의 백업에서 직접 Database Components SP4로 데이터베이스를 복원할 수 있지만 복제 설정은 유지되지 않습니다.

 

5.2.8 로그 판독기 에이전트의 새로운 -MaxCmdsInTran 매개 변수

SP1의 추가 기능

SP1부터 로그 판독기 에이전트에 대해 새로운 명령 프롬프트 매개 변수인 -MaxCmdsInTran이 추가되었습니다. 많은 명령에 영향을 주는 트랜잭션(대량 업데이트 또는 삭제)의 경우, 배포 에이전트는 로그 판독기 에이전트가 배포 데이터베이스에 전체 트랜잭션을 쓸 때까지 기다렸다가 구독자로 트랜잭션 전파를 시작해야 합니다. 이로 인해 배포 에이전트 작동이 중단되며 두 에이전트 간의 병렬 처리 완성도가 떨어집니다.

로그 판독기 에이전트는 –MaxCmdsInTran을 사용하여 큰 트랜잭션을 보다 작은 청크로 나누는데 각 청크에는 -MaxCmdsInTran 입력과 같거나 적은 수의 명령이 포함되어 있습니다. 따라서 로그 판독기 에이전트가 같은 트랜잭션에 속하는 뒤쪽 청크로 작업하는 동안 배포 에이전트는 트랜잭션 앞쪽에 있는 청크의 처리를 시작할 수 있습니다.

이와 같이 로그 판독기 에이전트와 배포 에이전트 간에 병렬 처리 완성도가 높아지므로 전반적인 복제 처리량이 향상됩니다. 그러나 트랜잭션 청크는 구독자에서 개별 트랜잭션으로 커밋되므로 ACID(원자성, 일관성, 격리성 및 지속성) 속성 중 하나인 원자성이 파괴됩니다. 이러한 결과가 발생하는지 충분히 테스트해 보는 것이 좋지만 대부분의 환경에서는 큰 문제가 되지 않습니다.

–MaxCmdsInTran 매개 변수 정의

-MaxCmdsInTran 매개 변수 값에 대해 양의 정수(1 이상)를 지정합니다. 값 0을 지정하는 것은 이 매개 변수를 사용하지 않는 것과 같은 결과를 가져옵니다. 이 매개 변수는 트랜잭션이 아주 클 때만 성능을 향상시키므로 이 매개 변수 값으로 5000 이상을 지정하는 것이 일반적입니다. 다음 예를 참조하십시오.

logread.exe -MaxCmdsInTran 10000. 

이 매개 변수를 사용하려면 게시자는 SQL Server 2000 SP1 이상 버전을 실행해야 하며 로그 판독기 에이전트와 배포 데이터베이스를 SP3 이상으로 업그레이드해야 합니다. 그렇지 않으면 -MaxCmdsInTran은 무시됩니다.

 

5.2.9 클러스터된 비고유 인덱스에 대한 제한 사항

SP2의 추가 기능(트랜잭션 복제에만 적용)

트랜잭션 복제를 위해 테이블을 게시한 후에는 테이블에 클러스터된 비고유 인덱스를 만들 수 없습니다. 인덱스를 만들기 전에 먼저 해당 테이블을 포함하는 게시를 삭제해야 합니다.

 

5.2.10 스냅샷 에이전트의 새로운 -MaxNetworkOptimization 명령줄 인수

SP2의 추가 기능

정상적인 처리 중에 병합 복제는 구독자의 파티션에 속하지 않는 행을 삭제하도록 구독자에게 DELETE 명령을 보낼 수 있습니다. 이러한 유형의 DELETE 명령을 부적절한 삭제라고 합니다. 부적절한 삭제는 데이터 무결성이나 수렴에는 영향을 주지 않지만 불필요한 네트워크 트래픽을 발생시킬 수 있습니다.

부적절한 삭제로 인한 네트워크 트래픽을 줄이려면 병합 복제 게시에 새로운 스냅샷 에이전트 매개 변수
-MaxNetworkOptimization을 사용합니다. 이 매개 변수를 1로 설정하면 부적절한 삭제가 발생할 가능성이 최소화되므로 네트워크는 최적 상태가 됩니다.

참고   이 매개 변수를 1로 설정하는 것은 병합 복제의 동기화 최적화 옵션이 true로 설정되어 있을 때만 유용합니다(sp_addmergepublication@keep_partition_changes 매개 변수)

이 매개 변수를 1로 설정하면 메타데이터의 저장소가 커질 수 있으며 여러 수준의 조인 필터와 복잡한 하위 집합 필터가 있는 경우에 게시자의 성능이 저하될 수 있으므로 기본적으로 0으로 지정합니다. 복제 토폴로지를 신중하게 평가한 후에 부적절한 삭제로 인한 네트워크 트래픽이 허용 수준 이상으로 커질 경우에만 -MaxNetworkOptimization을 1로 설정해야 합니다.

다음과 같이 시스템 프로시저 sp_add_agent_parameter를 실행하여 스냅샷 에이전트 프로필에 이 매개 변수를 추가할 수 있습니다.

EXEC sp_add_agent_parameter 1, 'MaxNetworkOptimization', 1

 

5.2.11 병합 복제에서 사용하는 새 역할

SP3의 추가 기능

SP3 이상의 버전에서는 병합 복제에 사용할 새 역할을 자동으로 만듭니다. 새 역할의 이름은 MSmerge-<publication ID> 형식으로 되어 있습니다. 게시자에서 각 병합 복제 게시에 대해 만들어진 역할은 게시자의 병합 복제에 대한 액세스를 제어하는 PAL(게시 액세스 목록)로 사용됩니다. 이 역할이 삭제된 경우 SP3 이상의 버전에 포함되어 있는 새로운 저장 프로시저인 sp_createmergepalrole을 실행하면 역할을 다시 만들 수 있습니다. 이 저장 프로시저는 게시 데이터베이스의 게시자에서 실행되어 역할을 다시 만듭니다.

sp_createmergepalrole은 SQL Server 2000 온라인 설명서의 최신 사본에 설명되어 있습니다. SQL Server 2000 온라인 설명서 최신 버전 설치에 대한 자세한 내용은 1.9 SQL Server 2000 온라인 설명서에서 업데이트 사용 가능 단원을 참조하십시오. 이것은 sp_createmergepalrole에 대한 참조 항목의 영문 사본입니다.

 

5.2.12 비 sysadmin 사용자가 만든 구독에 대한 새로운 요구 사항

SP3의 추가 기능

sysadmin 고정 서버 역할의 구성원이 아닌 사용자가 구독을 만든 경우 다음 중 하나를 수행해야 합니다.

  • 복제 에이전트와 관련된 SQL Server 에이전트 작업 단계가 충분한 권한으로 실행될 수 있도록 로그인 및 암호를 사용하여 SQL Server 에이전트 프록시 계정을 구성합니다. 자세한 내용은 SQL Server 온라인 설명서에서 "xp_sqlagent_proxy_account"를 참조하십시오.

  • 에이전트를 실행하기 전에 작업 단계 소유자를 sysadmin 고정 서버 역할의 구성원인 사용자로 변경합니다.

참고   원격 에이전트 활성화 기능을 사용하려면 항상 작업 단계를 sysadmin 고정 서버 역할에 속하는 사용자 계정의 컨텍스트에서 실행해야 합니다.

 

5.2.13 저장 프로시저에 대한 사용 권한 변경

SP3의 추가 기능

복제 토폴로지를 구현, 관리 및 모니터링하는 데 사용되는 많은 저장 프로시저에 대한 사용 권한이 변경되었습니다. 저장 프로시저를 실행하는 데 필요한 사용 권한은 주로 강화되는 방식으로 변경되었습니다. 새 사용 권한에 대한 자세한 내용은 업데이트된 SQL Server 온라인 설명서 버전에서 복제 저장 프로시저에 대한 Transact-SQL 참조 문서를 참조하십시오. 업데이트된 SQL Server 온라인 설명서에 대한 자세한 내용은 1.6 SQL Server 2000 온라인 설명서의 업데이트 사용 가능 단원을 참조하십시오.

 

5.2.14 sp_addmergearticle 및 sp_changemergearticle에 대한 새 매개 변수

SP3의 추가 기능

sp_addmergearticlesp_changemergearticle에 매개 변수 @published_in_tran_pub가 새로 추가되었습니다. 이 매개 변수를 사용하여 병합 복제의 아티클도 트랜잭션 게시에 게시되도록 지정할 수 있습니다. @published_in_tran_pubnvarchar(5)이며 기본값은 FALSE입니다. TRUE는 아티클도 트랜잭션 게시에 게시되도록 지정합니다.

참고   sp_changemergearticle에서 이 매개 변수를 변경하면 스냅샷이 무효화되며 구독자를 다시 초기화해야 합니다.

 

5.2.15 게시 및 배포 구성 마법사에 대한 새 페이지

SP3의 추가 기능

게시 및 배포 구성 마법사에는 배포자 암호 페이지가 새로 추가되었습니다. 하나 이상의 게시자 서버를 선택하여 원격 배포자로 사용하고 이러한 게시자 중 하나 이상이 암호를 요구할 경우 이 페이지에 암호를 입력해야 합니다. 게시자와 원격 배포자 사이의 연결은 연결된 서버와 원격 서버가 혼합된 형태입니다. 연결에는 distributor_admin 로그인을 사용합니다. 기본적으로 게시자는 원격 배포자에서 트러스트되지 않은 상태로 구성되므로 암호가 필요합니다.

참고   SQL Server 2000 온라인 설명서의 최신 버전을 다운로드하여 설치한 경우 새 페이지에 대한 도움말 단추를 클릭하면 이 정보를 볼 수 있습니다.

 

5.2.16 Windows 동기화 관리자 지원 변경

SP3의 추가 기능

SQL Server를 사용하면 SQL Server 엔터프라이즈 관리자, SQL-DMO 및 복제 저장 프로시저를 사용하여 만든 기존의 구독을 Windows 동기화 관리자에서 사용할 수 있도록 할 수 있습니다. 또한 Windows 동기화 관리자를 사용하여 새 구독을 만들 수도 있습니다. 서비스 팩을 적용한 후에 구독을 동기화하면 Windows 동기화 관리자가 동기화에 관여하는 서버에 연결하는 데 필요한 암호를 입력하라는 메시지를 표시합니다.

 

5.2.17 복제 데이터베이스 첨부 또는 복구에 대한 요구 사항 변경

SP3의 추가 기능

특정 조건 집합에서 복제는 게시된 데이터베이스를 첨부 또는 복원하는 과정에서 잘못 동작할 수 있습니다. 해당 조건은 다음과 같습니다.

  • SP3 이상 버전이 적용된 경우

  • 데이터베이스를 첨부하는 사용자가 sysadmin 고정 서버 역할의 구성원이 아닌 경우

  • 데이터베이스 간에 변경할 수 없는 경우

이러한 조건 모두에 해당될 경우 첨부되거나 복원된 데이터베이스에서 sp_changedbowner 저장 프로시저를 실행해야 합니다. sa 기본 제공 관리자 로그인에 소유권을 할당하십시오. 이렇게 하면 복제 기능을 제대로 수행할 수 있습니다.

참고  sp_changedbowner를 실행하려면 sysadmin 고정 서버 역할의 구성원이어야 합니다.

데이터베이스 간 소유권 체인에 대한 자세한 내용은 5.1.10 데이터베이스 간 소유권 체인 단원을 참조하십시오.

 

5.2.18 복제 ActiveX 컨트롤의 시스템 지정 변경

SP4의 추가 기능

복제 ActiveX® 컨트롤(sqlinitx.dll, sqldistx.dll, sqlmergx.dll 및 replerrx.dll)은 더 이상 스크립팅 및 초기화 사용에 안전하다고 할 수 없습니다. 컨트롤의 보안 및 기능 동작은 SP3 이후로 변경되지 않았지만 보안 지정은 보안 표준에 맞도록 변경되었습니다. 이러한 변경 사항은 웹 페이지에서 포함 복제 ActiveX 컨트롤을 호출하는 응용 프로그램에 영향을 줄 수 있습니다.

 

5.2.19 병합 게시에서 아티클의 새 매개 변수

SP4의 추가 기능

sp_addmergearticle을 호출할 때 새 매개 변수, @compensate_for_errors를 지정할 수 있습니다. 동기화하는 중에 제약 조건 위반 같은 오류가 발생되는 경우 매개 변수는 보상 작업이 수행될지 여부를 지정합니다. TRUE(기본값)로 설정되면 동기화하는 동안 노드에 적용될 수 없는 변경으로 인해 다른 모든 노드에서 변경을 취소하는 보상 작업이 수행됩니다. 이러한 동작이 바람직할 경우도 있지만 문제가 될 수도 있습니다. 예를 들어 잘못 구성된 구독자가 오류를 생성하여 게시자와 다른 모든 구독자에서 변경이 취소될 수도 있습니다.

FALSE 값을 지정하면 이러한 보상 작업을 사용할 수 없게 되지만 오류는 여전히 기록되고 이후 병합에서는 계속해서 이 변경을 적용하려고 합니다. 영향을 받은 행의 데이터가 수렴되지 않은 것처럼 보일 수도 있지만 문제를 해결하자마자 변경이 적용되고 데이터도 수렴됩니다.

참고   아티클의 원본 테이블이 이미 다른 위치에 게시된 경우 두 아티클의 @compensate_for_errors 값이 동일해야 합니다.

 

5.2.20 트랜잭션 게시에서 ID 열을 복제할 때 사용되는 새 스키마 옵션

SP4의 추가 기능

이전 릴리스에서는 트랜잭션 게시의 ID 열이 ID 속성 집합 없이 int 같은 기본 데이터 형식으로 복제되었습니다. 이러한 방법은 구독자에서 삽입을 허용하지 않는 응용 프로그램에 적합합니다. SQL Server 2000 SP4에는 ID 열로 ID 열을 복제하는 데 사용되는 트랜잭션 게시에 대한 새 스키마 옵션(0x4)이 제공됩니다. 이것은 양방향 복제를 비롯하여 웜 대기 서버로 구독자를 사용하는 등 여러 가지 경우에 유용합니다. 이러한 경우에 삽입은 구독자에서 실행할 수 있고 삽입에 따라 ID 열이 증가됩니다.

ID 열이 ID 열로서 복제되도록 지정하려면

  1. 게시자에서 테이블을 만들 때 ID 열에 NOT FOR REPLICATION 옵션을 지정합니다. 이렇게 하면 복제 에이전트의 삽입이 아니라 사용자가 삽입하는 경우에만 ID 열이 증가됩니다. 자세한 내용은 SQL Server 온라인 설명서에서 "CREATE TABLE"을 참조하십시오.

  2. ID 열이 있는 아티클을 추가할 때 sp_addarticle@schema_option 매개 변수에 대한 옵션 0x4를 설정합니다. 이러한 매개 변수에 대한 자세한 내용은 SQL Server 온라인 설명서에서 "sp_addarticle"을 참조하십시오.

  3. 구독자를 초기화한 후에 ID 열이 있는 각 테이블에 DBCC CHECKIDENT를 실행합니다. 이렇게 하면 구독자에서 ID 열에 삽입할 시작 값을 지정할 수 있으므로 삽입된 값이 게시자에서 삽입된 값과 달라집니다. 예를 들어, 구독자의 삽입이 1,000,000에서 시작되도록 지정할 수 있습니다.
    USE Northwind GO DBCC CHECKIDENT ('Employees', RESEED, 1000000) GO

자세한 내용은 SQL Server 온라인 설명서에서 DBCC CHECKIDENT를 참조하십시오.

5.2.21 비SQL Server 구독자는 WOW(indows-on-Windows) 64 모드에서 실행 중인 배포자를 지원하지 않음

SP4의 추가 기능

X64 또는 호환 프로세서가 설치된 Windows 2003 SP1 시스템에서 WoW(Windows-on-Windows) 64 모드로 실행 중인 SQL Server 2000(32비트)의 배포자 인스턴스에는 SQL Server 이외의 구독자가 있을 수 없습니다. WoW(Windows-on-Windows) 64 모드의 실행이 SQL Server 2000 SP4에서 지원될지라도 배포자에서 SQL Server 이외의 구독자로 연결하는 데 사용되는 드라이버나 공급자에서는 이 모드가 지원되지 않습니다.

 

5.3 SQL Server 에이전트 및 공유 도구 향상

이 단원에서는 SP4에 포함되어 있는 SQL Server 에이전트 기능 및 공유 도구의 향상된 기능에 대해 설명합니다.

 

5.3.1 SQL Server 에이전트 로그 계정 정보

SP2의 추가 기능

SQL Server 에이전트 작업 기록에는 각 작업 단계가 실행되는 Windows 계정이 기록됩니다. 이 정보는 관리자가 복제 및 DTS(데이터 변환 서비스) 작업을 위해 정의된 예약 작업을 포함하여 여러 예약 작업에 발생하는 보안 문제를 진단하는 데 도움을 줍니다.

 

5.3.2 마스터/대상 서버 구성 변경

SP3의 추가 기능

다중 서버 관리는 여러 SQL Server 인스턴스의 관리 작업을 자동화하는 프로세스입니다. 둘 이상의 서버를 관리하며 유지 관리 작업을 중앙에서 수행하려는 경우 다중 서버 관리 기능을 사용합니다.

SP3 이상에서 SQL Server 에이전트 프록시 계정을 사용해야 하는 경우가 아니면 SQL Server 에이전트 서비스 계정이 Windows 관리자일 필요가 없습니다. SQL Server 에이전트 프록시 계정에 대한 자세한 내용은 5.6.3 SQL Server 에이전트 프록시 계정 기능 향상 단원을 참조하십시오. SQL Server 에이전트 서비스 계정은 sysadmin 고정 서버 역할의 구성원이어야 합니다.

다중 서버 관리 구성은 최소 한 대씩의 마스터 서버와 대상 서버로 이루어져 있어야 합니다. 마스터 서버는 대상 서버에서 이벤트를 받고 작업을 분산합니다. 마스터 서버에서는 대상 서버에서 작업 실행에 필요한 작업 정의의 주요 복사본을 저장합니다. 대상 서버는 마스터 서버에 주기적으로 연결하여 실행할 작업 목록을 업데이트합니다. 새로운 작업이 있으면 대상 서버에서 그 작업을 다운로드해서 마스터 서버와의 연결을 해제합니다. 대상 서버에서 작업을 완료한 다음 마스터 서버에 다시 연결하고 작업 상태를 보고합니다.

SP4를 적용하기 전에 SQL Server 2000 마스터/대상 서버 구성을 업그레이드하기 위한 여러 단계를 완료해야 합니다. SP4에 추가된 여러 가지 변경 사항은 SQL Server 7.0 대상 서버 또는 SP3을 실행하지 않는 서버와 호환되지 않습니다. SQL Server 2000의 원래 기능에서 변경된 사항이 바로 여기에 해당합니다.

마스터/대상 서버 구성을 업그레이드하려면

  1. 마스터 서버에 새로운 MSX(마스터 서버) 계정을 만듭니다. 이것은 업그레이드를 위해 TSX(대상 서버) 서버를 준비하는 과정입니다. 이 작업을 수행하려면 다음 명령을 실행합니다.
    --Option A: Windows authentication EXEC sp_grantlogin 'DOMAIN\user' GO USE msdb GO EXEC sp_adduser 'DOMAIN\user', 'DOMAIN\user', 'TargetServersRole' GO --Option B: SQL Server authentication – see explanation below for --details. EXEC sp_addlogin <MSXAccount>, <MSXAccountPassword>, 'msdb' GO USE msdb GO EXEC sp_adduser <MSXAccount>, <MSXAccount>, 'TargetServersRole' GO

    여기서 <MSXAccount>는 선택한 SQL 로그인 이름을 나타내고 <MSXAccountPassword>는 관련된 암호를 나타냅니다.

    참고   이 값은 작은 따옴표로 묶어야 합니다.

    MSX 계정을 선택할 때는 다음 옵션이 제공됩니다.

    • Windows 인증. 암호를 저장할 필요가 없으며 로컬 관리자 권한 없이 SQL Server 및 SQL Server 에이전트를 구성할 수 있으므로 이 옵션이 가장 안전합니다.

    • SQL Server 인증. SQL Server는 사용자 이름과 암호를 LSA(로컬 보안 권한) 비밀로 저장하며 액세스가 로컬 Windows 관리자로 제한되므로 이 옵션을 사용하려면 SQL Server 에이전트 서비스 계정에 로컬 Window 관리자 권한이 있어야 합니다. 모든 TSX 서버에 대해 하나의 계정을 만들거나 각 TSX 서버에 대해 하나의 계정을 만들 수 있습니다.

    SQL Server 에이전트 검색 계정(<computer_name>_msx_probe_login)은 지정하지 마십시오. SP3 이상으로 업그레이드하는 중에 SQL Server에서는 TSX 서버에 더 이상 필요하지 않은 이전 검색 계정을 제거합니다.

  2. 한 번에 하나씩 TSX 서버를 SP4로 업그레이드합니다. 이 서비스 팩을 적용하기 전에 3단계에서 적절한 업그레이드 타이밍을 확인해 보십시오.

  3. 작동 중단 시간을 최소화하려면 SP4 업데이트가 끝난 직후에 각 TSX 서버에서 확장된 저장 프로시저 xp_sqlagent_msx_account를 실행합니다.

    참고  xp_sqlagent_msx_account를 실행한 후에 각 서버에서 SQL 에이전트를 중지했다가 다시 시작해야 합니다.

    xp_sqlagent_msx_account에 대한 자세한 내용은 5.3.3 SQL Server 에이전트의 새로운 확장 저장 프로시저 단원을 참조하십시오.

  4. 마스터 서버에 SP4를 적용합니다. TSX 서버에서 더 이상 사용하지 않으므로 SP4 설치 프로그램은 이전 _msx_probe 계정을 제거합니다. SQL 에이전트 작업을 소유하는 계정은 제거되지 않으므로 해당 작업의 소유자를 다른 사용자로 변경하고 이러한 계정을 수동으로 제거해야 합니다. SQL 에이전트 작업을 소유하는 이전 _msx_probe 계정을 계속 사용하려면 _msx_probe 계정의 암호를 변경해야 할 수 있습니다.

 

5.3.3 SQL Server 에이전트의 새로운 확장 저장 프로시저

SP3의 추가 기능

SP3a에는 SQL Server 에이전트 TSX 서버에서 MSX 서버로부터 지침을 다운로드하는 데 사용하는 계정을 구성할 수 있는 새로운 확장 저장 프로시저(xp_sqlagent_msx_account)가 포함되어 있습니다. 이 계정을 MSX 계정 또는 마스터 서버 계정이라고도 합니다.

xp_sqlagent_msx_account은 SQL Server 2000 온라인 설명서의 최신 사본에 설명되어 있습니다. SQL Server 2000 온라인 설명서 최신 버전 설치에 대한 자세한 내용은 1.6 SQL Server 2000 온라인 설명서에서 업데이트 사용 가능 단원을 참조하십시오. 이것은 xp_sqlagent_msx_account에 대한 참조 항목의 영문 사본입니다.

 

5.3.4 SQL Server 에이전트 사용 권한 확인

SP3의 추가 기능

SQL Server에서는 에이전트 작업 소유자에게 각 작업의 출력 로그 파일을 추가하거나 덮어쓸 수 있는 권한이 있는지 확인합니다. 이 작업은 다음의 세 가지 방식으로 진행됩니다.

  • 작업 소유자가 sysadmin 고정 서버 역할의 구성원인 경우 작업 출력 로그 파일을 서버에 쓸 수 있습니다.

  • 작업 소유자가 Windows 사용자인 경우 SQL Server에서는 사용자가 서버의 선택된 작업 출력 로그 파일 위치에 쓸 수 있는 권한이 있는지를 테스트합니다.

  • 작업 소유자가 SQL Server 사용자인 경우 SQL Server에서는 서버의 선택된 작업 출력 로그 파일 위치에 쓸 수 있는 권한이 SQL Server 에이전트 프록시 계정에 있는지를 테스트합니다. 프록시 계정이 설정되지 않았으면 로그는 기록되지 않습니다.

모든 경우에 작업은 SQL Server 에이전트 자격 증명을 사용하여 기록되지만 현재 SQL Server에서는 서버의 선택된 작업 출력 로그 파일 위치에 쓸 수 있는 권한이 사용자에게 있는지를 테스트합니다. 로그 파일에 쓸 수 없는 경우 작업 기록에 오류가 나타나지만 작업 단계는 실패하지 않습니다.

 

5.3.5 SQL Agent Mail MAPI 프로필

SP3의 추가 기능

SQL Server 2000 32비트 버전에서는 전자 메일 경고를 보내기 위해 확장된 MAPI 전자 메일 프로필을 사용하도록 SQL 에이전트 메일을 구성할 수 있습니다. Microsoft Outlook과 같은 확장된 MAPI 전자 메일 응용 프로그램을 사용하면 확장된 MAPI 프로필을 만들 수 있습니다. SQL Server 2000 64비트 버전에서 SQL 에이전트 메일은 전자 메일 경고를 보내기 위해 간단한 MAPI 프로필만 사용할 수 있습니다. SQL Server 2000의 32비트 버전에서는 간단한 MAPI 프로필을 사용하지 마십시오.

 

5.3.6 뷰 디자이너 도움말 항목을 사용할 수 없음

SP4의 추가 기능

SQL Server 엔터프라이즈 관리자에서 도움말 항목 "뷰 속성"을 뷰 디자인뷰 만들기에서 볼 수 없습니다. Microsoft 웹 사이트에서 업데이트된 항목을 볼 수 있습니다.

 

5.4 SQL Server 연결 구성 요소 기능 향상

이 단원에서는 SP4에 포함되어 있는 SQL Sever 2000 연결 구성 요소의 향상된 기능에 대해 설명합니다.

 

5.4.1 QLogic 가상 인터페이스 아키텍처 지원

SP3의 추가 기능

SQL Server에서는 QLogic VIA(가상 인터페이스 아키텍처) SAN(System Area Network) 구현을 지원합니다. QLogic VIA를 통한 SQL Server 연결 지원을 사용하려면 클라이언트 및 서버 컴퓨터에서 모두 해당 Windows system32\drivers\etc 폴더의 Vihosts 파일에 IP 주소 확인 기능을 제공해야 합니다.

Vihosts 파일 형식은 다음과 같습니다.

<서버 컴퓨터의 VI IP 주소> <SERVER_COMPUTERNAME>

<클라이언트 컴퓨터의 VI IP 주소> <SERVER_COMPUTERNAME>

다음 예를 참조하십시오.

139.4.130.1  SQLCOMPUTER

139.4.130.2  SQLCLIENT

해당 QLogic VIA 네트워크 카드의 IP 주소와 실제 컴퓨터 이름을 사용합니다. 그렇지 않으면 명명된 인스턴스에 대한 연결이나 TCP 또는 명명된 파이프 같은 다른 IP 프로토콜을 통한 연결이 이루어질 수 없습니다. Giganet VIA 연결을 위해서는 Vihosts 파일이 필요하지 않습니다.

참고   클라이언트 네트워크 유틸리티를 사용하여 클라이언트 컴퓨터의 올바른 VIA 공급업체를 식별해야 합니다. 공급업체 드롭다운 상자에서 적절한 값을 선택합니다. 또한 서버 네트워크 유틸리티를 통해 서버 컴퓨터에서도 해당 작업을 완료해야 합니다.

 

5.5 메타데이터 서비스 기능 향상

이 단원에서는 Database Components SP4에 포함되어 있는 SQL Sever 2000 메타데이터 서비스의 향상된 기능에 대해 설명합니다.

 

5.5.1 메타데이터 브라우저에서 유니코드로 내보내기

SP1의 추가 기능

메타데이터 브라우저는 XML 기반 메타데이터를 유니코드로 내보냅니다. SQL Server 2000 SP1 이전에 이 브라우저는 영어 이외의 문자를 지원하지 않는 ANSI 코드로 데이터를 내보냈습니다. 사용자는 이 기능 변화를 느낄 수 없습니다. 이번 SP4 릴리스에서는 내보낸 데이터가 항상 유니코드로 표시됩니다. 레지스트리 키 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Repository\Engine\XMLExport의 값을 0으로 설정하여 계속 ANSI 코드로 내보낼 수도 있습니다. 이 레지스트리 키에 대해 설정할 수 있는 값은 아래와 같습니다.

  • NOOBJID=1

  • NOHEADER=2

  • INDENTATION=4

  • UNICODE=8

  • LOGUNMAPPEDTAGS=16

  • EXPORTBASE=32

각 플래그에 대한 자세한 내용은 SQL Server 온라인 설명서에서 "IExport::Export 메서드"를 참조하십시오.

 

5.5.2 스크립팅 지원 사용 불가

SP3의 추가 기능

정보 모델의 스크립트 지원을 사용할 수 없게 되었습니다. SP3a 이상을 설치한 후에 응용 프로그램에서 스크립트가 정의된 속성이나 메서드에 액세스하면 다음 오류가 발생합니다.

EREP_SCRIPTS_NOTENABLED

스크립트 지원을 사용하려면

스크립트를 계속 실행해야 하는 경우 다음 절차에 따라 스크립트 지원을 활성화하는 레지스트리 설정을 만들 수 있습니다.

  1. 레지스트리 편집기를 열고 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft로 이동합니다.

  2. 레지스트리 키 Repository가 없으면 만든 후에 경로가 Repository\Engine이 되도록 하위 키 Engine을 만듭니다.

  3. Engine 레지스트리 키에서 AllowScripting이라는 새 DWORD 값을 추가한 후 이 값을 1로 설정합니다.

나중에 스크립팅을 비활성화려면 이 레지스트리 키 값을 0으로 설정합니다.

중요   보안상의 이유로 sa 로그인의 암호를 반드시 지정해야 합니다.

 

5.5.3 리포지토리 정보 액세스를 위한 새로운 RepositoryUser 역할

SP3의 추가 기능

SQL Server의 msdb 데이터베이스에는 메타데이터 서비스 리포지토리 엔진에 사용되는 정보를 저장하는 테이블, 저장 프로시저 및 뷰 집합이 포함되어 있습니다. SP3에는 리포지토리 정보를 액세스하고 업데이트하는 데 사용할 RepositoryUser라는 이름의 새로운 전용 역할이 추가되었습니다. 이 역할은 이러한 개체에 대해 작성, 읽기, 업데이트, 삭제 및 실행 권한을 갖습니다. public 역할은 더 이상 이러한 개체에 대해 사용 권한을 갖지 않습니다.

이러한 변경 내용은 앞으로 리포지토리 엔진으로 만들 추가 개체뿐 아니라 기존의 리포지토리 개체에도 적용됩니다. public 역할을 통해 리포지토리에 액세스하는 사용자 및 응용 프로그램은 RepositoryUser 역할에 추가되어야 합니다.

 

5.6 데이터 변환 서비스 기능 향상

이 단원에서는 SP4에 포함되어 있는 SQL Sever 2000 데이터 변환 서비스의 향상된 기능에 대해 설명합니다.

 

5.6.1 DTS 마법사에서 더 이상 문자열 열을 255자로 제한하지 않음

SP2의 추가 기능

데이터를 텍스트 파일로 내보낼 때 DTS 가져오기/내보내기 마법사는 문자열 형식의 데이터를 포함하는 열에 8000자 이내의 문자만 쓰도록 패키지를 구성합니다.

 

5.6.2 SQL Server 에이전트에서 실행된 DTS 패키지에 대해 보안 컨텍스트 기록

SP2의 추가 기능

SQL Server 에이전트에서는 작업의 각 단계가 실행되는 보안 컨텍스트를 기록합니다. SP3 이상의 버전에서는 이러한 보안 컨테스트가 작업 기록 대화 상자에 표시됩니다. 작업의 특정 단계에서 DTS 패키지를 실행하면 SQL Server 에이전트는 패키지가 실행되는 사용자 계정을 기록합니다. 관리자는 이 정보를 활용하여 서버에서 DTS 패키지 실행이 예약될 때 발생하는 사용 권한 및 인증 문제를 진단하는 데 도움을 얻을 수 있습니다.

 

5.6.3 SQL Server 에이전트 프록시 계정 기능 향상

SP2의 추가 기능

SP2 전에는 SQL Server 에이전트 프록시 계정이 서버가 실행되는 계정(xp_cmdshell에서 실행되는 작업의 경우) 또는 에이전트가 실행되는 계정(에이전트 작업의 경우)에 대한 사용자 Temp 폴더에 대해 액세스 권한을 가져야만 서버에 저장된 DTS 패키지를 해당 프록시 계정의 자격 증명으로 실행할 수 있었습니다. 따라서 사용자는 C:\Temp와 같이 시작 및 프록시 계정 둘 다에서 액세스할 수 있는 폴더를 가리키도록 SQL Server 또는 SQL 에이전트 시작 계정에 대한 TEMP 환경 변수를 조정해야 했습니다. SP2 이상의 버전에서는 사용자 Temp 폴더를 사용할 수 없는 경우 시스템 Temp 폴더를 사용하도록 DTS 기능이 향상되었으므로 이러한 조정 작업이 그다지 필요하지 않게 되었습니다.

 

5.6.4 기본적으로 비활성화된 메타데이터 서비스로 저장 기능

SP3의 추가 기능

기본적으로 SP3 이상의 버전에서는 메타데이터 서비스로 DTS 패키지를 저장하는 옵션이 비활성화되어 있습니다. 즉, DTS 패키지 저장 대화 상자의 위치 드롭다운 목록에 메타데이터 서비스 옵션이 나타나지 않습니다. 또한 DTS 가져오기/내보내기 마법사의 패키지 저장, 예약 및 복제 페이지에서도 이 옵션이 비활성화되어 있습니다.

패키지를 메타데이터 서비스에 저장하려면

  • SQL Server 엔터프라이즈 관리자에서 데이터 변환 서비스 노드를 마우스 오른쪽 단추로 클릭한 후 속성을 클릭하고 메타데이터 서비스로 저장 가능을 클릭합니다.

    참고   이 속성을 수정하려면 관리자 권한으로 로그온해야 합니다.

메타데이터 서비스에 패키지를 저장하는 옵션이 비활성화되면 메타데이터 서비스에서 기존 패키지를 로드하고 편집한 후 저장 옵션을 사용하여 메타데이터 서비스에 저장할 수 있습니다. 그러나 다른 이름으로 저장 옵션에서는 메타데이터 서비스를 사용할 수 없습니다. 예를 들어 패키지를 다른 이름을 사용하여 메타데이터 서비스에 다시 저장할 수 없습니다.

 

5.7 XML 기능 향상

다음 항목에서는 SP4에서 XML 및 SQLXML의 향상된 기능에 대해 설명합니다.

 

5.7.1 XPath 식의 유효성 검사 기능 향상

SP3에서 처음 제공되고 SP4에서 업데이트됨.

SP4를 적용하면 OPENXML이 업데이트되어 MSXML 2.6과 이전 버전이 호환 가능하도록 하는 사용자 지정 XML 구문 분석 기술을 사용할 수 있습니다.

SP3 전에는 OPENXML에 사용되는 XML 파서의 버전을 사용할 경우 XPath 식에 조건자를 입력한 다음 XPath 구문에서 현재 컨텍스트 노드를 식별하는 특수 문자 약어를 입력할 수 있었습니다((.)로 표시). 이러한 형태는 XPath 구문 사양을 위반하는 것이므로 이 문자 뒤에 위치 경로 식이 나와야 합니다.

새 버전의 OPENXML 동작을 사용할 경우 현재 컨텍스트 노드 약어 특수 문자 바로 뒤에 조건자가 나올 수 없습니다. SP3 이상의 버전으로 업그레이드한 후에는 잘못된 구문을 사용하는 SQLXML 쿼리(주석이 붙은 매핑 스키마에 대한 XPath 쿼리 및 SQLXML 쿼리의 결과를 변환하기 위해 작성된 XSLT 스타일시트의 XPath 쿼리)의 XPath 식이 실패합니다.

이러한 오류를 방지하려면 구문이 잘못된 식을 식별하여 수정해야 합니다. 예를 들어, 다음 xsl:if 요소에서 테스트 특성 값으로 지정된 XPath 식의 구문은 올바르지 않습니다. 이유는 지정자,[@ResourceTypeID='2']가 현재 컨텍스트 노드를 식별하는 특수 문자 약어 바로 뒤에 나오기 때문입니다.

이전에는 오류를 발생시키지 않았던 다음 문이 SP3 이상의 버전을 설치한 후에는 실패합니다.

<xsl:if test=".[@ResourceTypeID='2']">

오류를 방지하려면 XPath 식을 다음과 같이 수정해야 합니다.

<xsl:if test="@ResourceTypeID='2'">

5.8 가상 백업 장치 API 기능 향상

다음 항목은 SQL Server 2000 가상 백업 장치 API에 적용됩니다.

 

5.8.1 단일 스냅샷에 여러 데이터베이스 캡처

SP2의 추가 기능

ISV에서는 가상 백업 장치 API를 사용하여 SQL Server 2000을 자체 제품에 통합할 수 있습니다. 이 API는 최고의 안정성과 성능을 제공하도록 설계되었습니다. 또한 모든 수준의 핫 백업 및 스냅샷 백업 기능을 포함하여 SQL Server 2000의 백업 및 복원 기능을 완전하게 지원합니다.

SP1이하 버전에는 둘 이상의 데이터베이스를 한 번에 고정시키고 백업하는 방법이 없었습니다. SP2 이상은 서버쪽에서 VDC_PrepareToFreeze 명령을 통해 단일 스냅샷에 여러 데이터베이스를 고정 및 캡처할 수 있도록 지원합니다.

SP4의 가상 백업 장치 인터페이스 사양에 VDC_PrepareTo Freeze 명령에 대한 업데이트된 정보가 나와 있습니다. 업데이트된 가상 장치 인터페이스 헤더 파일(Vdi.h) 버전은 SP4 설치 폴더의 \Devtools\Include에 있습니다.

업데이트된 사양은 Microsoft SQL Server 다운로드 웹 사이트의 Microsoft 다운로드 센터에서 다운로드할 수 있습니다.

 

5.9 오류 보고

SP3의 추가 기능

Microsoft SQL Server의 오류 보고 기능은 기본적으로 비활성화되어 있습니다. SQL Server 설치 프로그램 또는 Analysis Services 설치 프로그램을 통해 설치하는 동안이나 엔터프라이즈 관리자 서버 속성 대화 상자 또는 분석 관리자 서버 속성 대화 상자를 통해 설치한 다음에 오류 보고 기능을 활성화할 수 있습니다. SQL Server 설치 프로그램을 실행하는 동안 오류 보고 기능을 활성화하면 SQL Server 데이터베이스 엔진 및 SQL Server Agent 에이전트에 대해 오류 보고 기능을 사용할 수 있습니다. Analysis Services 설치 프로그램을 실행하는 동안 오류 보고 기능을 활성화하면 Analysis Services에 대해 오류 보고 기능을 사용할 수 있습니다. SQL Server 및 Analysis Services 둘 다에 대해 오류 보고 기능을 사용하려면 SQL Server 설치 프로그램이 실행되는 동안 SQL Server에 대한 오류 보고 기능을 활성화하고 Analysis Services 설치 프로그램이 실행되는 동안 Analysis Services에 대한 오류 보고 기능을 활성화해야 합니다.

이 기능을 활성화하면 SQL Server 데이터베이스 엔진, SQL Server 에이전트 또는 SQL Server Analysis Services에서 치명적 오류가 발생하는 경우 Microsoft에 자동으로 보고서를 보내도록 SQL Server가 구성됩니다. Microsoft는 오류 보고서를 SQL Server 기능의 향상을 위해 사용하며 모든 정보는 기밀로 처리합니다.

오류 정보는 보안 연결(HTTPS)을 통해 Microsoft로 보내지며 액세스가 제한된 곳에 보관됩니다. 또는 사용자 회사의 오류 보고 서버로 오류 정보를 보낼 수도 있습니다. 회사 오류 보고 서버 설정에 대한 자세한 내용은 Microsoft 웹 사이트를 참조하십시오.

오류 보고서에는 다음 정보가 포함됩니다.

  • 문제 발생 시 SQL Server의 상태

  • 운영 체제 버전 및 컴퓨터 하드웨어 정보

  • 라이센스를 확인하는 데 사용할 수 있는 디지털 제품 ID

  • 컴퓨터의 네트워크 IP 주소

  • 오류가 발생한 프로세스의 메모리 또는 파일 정보

Microsoft에서는 사용자의 파일, 이름, 주소, 전자 메일 주소 또는 기타 형태의 개인 정보를 의도적으로 수집하지 않습니다. 그러나 오류 보고서에는 오류를 발생시킨 프로세스의 메모리나 파일에 있는 고객별 정보가 포함될 수 있습니다. 이런 정보는 사용자의 신분을 확인하는 데 사용될 가능성은 있지만 Microsoft에서 의도적으로 사용하지는 않습니다.

Microsoft 오류 보고 데이터 수집 정책에 대한 자세한 내용은 Microsoft 웹 사이트를 참조하십시오.

오류 보고 기능이 활성화된 상태에서 치명적인 오류가 발생하면 특정 오류에 대한 기술 자료 문서를 가리키는 Microsoft의 응답을 Windows 이벤트 로그에서 확인할 수 있습니다. 응답은 다음 예제와 유사합니다.

Source = MSSQLServerOlapServicesDW EventID = 1010 data = http://support.microsoft.com/support/misc/kblookup.asp?id=Q123456 &iBucketTable=1&iBucket=39980&Cab=21474432.cab&LCID=1033 &OS=5.1.2600.2.00010100.0.0

SQL Server 데이터베이스 엔진 및 SQL Server 에이전트에 대한 오류 보고 기능을 비활성화하려면 엔터프라이즈 관리자의 SQL Server 속성(일반 탭)으로 가서 오류 보고 기능 사용 확인란의 선택을 취소합니다 Analysis Services에 대한 오류 보고 기능을 비활성화하려면 Analysis Manager의 서버 속성으로 가서 오류 보고 기능 사용 확인란의 선택을 취소합니다. SQL Server(데이터베이스 엔진 및 SQL Server 에이전트) 및 Analysis Services에 대한 오류 보고 기능이 모두 활성화되어 있으면 SQL Server 및 Analysis Services에 대한 오류 보고 기능을 개별적으로 비활성화해야 합니다.

 

5.10 서비스 기능 향상

SP4의 추가 기능

SQL Server 2000 SP4에는 새로운 서비스 기능이 추가되어 Windows XP 및 Windows Server 2003에서 실행되는 SQL Server 2000의 SP4 이후 버전에 적용한 핫픽스를 제거할 수 있습니다. SQL Server 2000 SP3에서도 이와 동일한 기능을 사용할 수 있었지만 추가로 핫픽스를 적용한 후에만 사용할 수 있었습니다.

 

5.11 English Query 기능 향상

SP1의 추가 기능

Microsoft에서는 English Query 응용 프로그램의 보안을 보다 향상시켜 주는 기능을 출시했습니다. 이러한 향상 기능은 이 서비스 팩과 함께 설치되지는 않지만 English Query를 사용하는 경우에는 이 서비스 팩을 적용하는 것이 좋습니다. 보안 향상 기능은 SP4 CD-ROM의 \EQHotfix 폴더에 있습니다. English Query 기능 향상에 대한 자세한 내용은 기술 자료 문서 297105를 참조하십시오.

 

5.12 C 언어용 DB-Library 및 Embedded SQL

SP1에서 처음 제공되고 SP4에서 업데이트됨

C 언어용 DB-Library 및 Embedded SQL API는 SQL Server 2000에서 계속 지원되지만 앞으로 출시되는 SQL Server 버전에는 이러한 API를 사용하는 응용 프로그램을 프로그래밍하는 데 필요한 파일이 포함되지 않을 예정입니다. 차기 버전의 SQL Server에서도 C 언어용 DB-Library 및 Embedded SQL을 사용하여 작성한 기존의 응용 프로그램에서 계속 연결할 수 있지만 그 이후에는 이 지원이 제공되지 않게 됩니다. 새 응용 프로그램을 작성할 경우 DB-Library 또는 Embedded SQL을 사용하지 마십시오. 기존 응용 프로그램을 수정할 때 이러한 기술에 대한 종속성을 제거하십시오. C 언어용 DB-Library 또는 Embedded SQL 대신 .NET Framework의 System.Data.SQLClient 네임스페이스 또는 ADO, OLE DB 또는 ODBC 같은 API를 사용하여 SQL Server의 데이터에 액세스합니다. 이러한 기술에 대한 자세한 내용은 SQL Server 온라인 설명서 또는 .NET Framework SDK를 참조하십시오.


select * from sysxlogins

도움말에 없는 시스템 테이블이다.
MS SQL은 왜이리 숨어있는게 많은거냐 -_-

+ Recent posts