과정 20764-C: Administering a SQL Database Infrastructure

이 5일간의 강사 지도식 과정은 SQL Server 데이터베이스 관리 및 유지 관리하는 학생들에게 SQL Server 데이터베이스 인프라 관리 지식 및 기술을 제공합니다. 또한 SQL Server 데이터베이스에서 콘텐츠를 제공하는 애플리케이션을 개발하는 개인에게 유용합니다.

대상 그룹 프로필

이 과정의 주요 대상 그룹은 SQL Server 데이터베이스를 관리하고 유지 관리하는 개인입니다. 이러한 개인은 주요 업무 분야로써 데이터베이스 관리 및 유지 관리 수행을 하거나 데이터베이스가 주요 업무에서 중요한 역할을 하는 환경에서 작업합니다.

이 과정의 두 번째 대상 그룹은 SQL Server 데이터베이스에서 콘텐츠를 제공하는 애플리케이션을 개발하는 개인입니다.

직무: 데이터베이스 관리자

획득한 기술

  • 사용자 인증 및 권한 부여
  • 서버 및 데이터베이스 역할 할당
  • 사용자에게 리소스 액세스 권한 부여

필수 조건

실무 경험 이외에 이 교육에 참가하는 학생들은 다음 기술적 지식을 갖추어야 합니다.

  • Microsoft Windows 운영 체제 및 해당 핵심 기능 기초 지식.
  • Transact-SQL 실무 지식.
  • 관계형 데이터베이스 실무 지식.
  • 상당한 데이터베이스 디자인 경험.

과정 개요

모듈 1: SQL Server 보안

Microsoft SQL Server 데이터베이스 내 데이터 보호는 필수이며 문제 및 SQL Server 보안 기능 실무 지식이 필요합니다.

이 모듈에서는 SQL Server 보안 모델, 로그인, 사용자, 부분적으로 포함된 데이터베이스 및 크로스 서버 권한 부여를 설명합니다.

단원

  • SQL Server로 연결 인증
  • 데이터베이스 연결을 위한 로그인 권한 부여
  • 서버 간 권한 부여
  • 부분적으로 포함된 데이터베이스

랩 : 사용자 인증

  • 로그인 생성
  • 데이터베이스 사용자 생성
  • 애플리케이션 로그인 문제 수정
  • 복원된 데이터베이스 보안 구성

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • SQL Server 기본 개념.
  • SQL Server 연결 인증.
  • 데이터베이스 사용자 로그인 권한 부여.
  • 부분적으로 포함된 데이터베이스.
  • 서버 간 권한 부여.

모듈 2: 서버 및 데이터베이스 역할 할당

역할을 사용하면 사용자 권한 관리가 간소화됩니다. 역할을 사용하면 사용자별로 권한을 할당하는 대신 각 사용자 작업 기능을 기반으로 인증된 사용자의 시스템 리소스 액세스를 제어할 수 있고 역할에 권한을 부여하여 사용자를 역할의 구성원으로 만들 수 있습니다. Microsoft SQL Server에는 서버 수준 및 데이터베이스 수준에서 정의된 보안 역할 지원을 포함합니다.

단원

  • 서버 역할로 작업
  • 고정 데이터베이스 역할로 작업
  • 사용자 정의 데이터베이스 역할 할당

랩 : 서버 및 데이터베이스 역할 할당

  • 서버 역할 할당
  • 고정 데이터베이스 역할 할당
  • 사용자 정의 데이터베이스 역할 할당
  • 보안 확인

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • 서버 수준 보안 관리를 위한 서버 역할 설명 및 사용.
  • 고정 데이터베이스 역할 설명 및 사용.
  • 사용자 지정 데이터베이스 역할 및 애플리케이션 역할을 사용하여 데이터베이스 수준 보안 관리.

모듈 3: 사용자에게 리소스 액세스 권한 부여

이전 모듈에서는 고정 서버 역할, 사용자 정의 서버 역할, 고정 데이터베이스 역할 및 애플리케이션 역할을 사용하여 Microsoft SQL Server 구성 방식 및 서버 및 데이터베이스 수준에서 사용 권한 집합 할당 방법을 알아보았습니다. 사용자에게 SQL Server 리소스 액세스 권한을 부여하는 마지막 단계는 서버 및 데이터베이스 객체에 액세스하는 사용자 및 역할 권한 부여입니다.

이 모듈에서는 객체 권한 관리 방법을 알아봅니다. 데이터베이스 객체 액세스 권한 외에도 SQL Server는 저장된 프로시저 및 함수 등 코드 실행을 허용하는 사용자를 결정하는 능력을 제공합니다. 많은 경우 이러한 권한과 데이터베이스 객체 권한은 개별 객체 수준이 아니라 스키마 수준에서 매우 잘 구성됩니다. 스키마 기반 권한 부여를 통해 보안 아키텍처를 단순화 할 수 있습니다. 이 모듈의 마지막 단원에서 스키마 수준의 권한 부여를 살펴봅니다.

단원

  • 객체에 사용자 액세스 권한 부여
  • 사용자에게 코드 실행 권한 부여
  • 스키마 수준에서 권한 구성

랩 : 사용자에게 리소스 액세스 권한 부여

  • 객체에 대한 권한 부여, 거부 및 취소
  • 코드에 EXECUTE 권한 부여
  • 스키마 수준에서 권한 부여

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • 객체에 사용자 액세스 권한 부여.
  • 사용자에게 코드 실행 권한 부여.
  • 스키마 수준에서 권한 구성.

모듈 4: 암호화 및 감사로 데이터 보호

Microsoft SQL Server 시스템의 보안 구성 시 조직의 데이터 보호 규정 준수 요구 사항을 충족해야 합니다. 조직은 종종 산업별 규정 준수 정책을 준수해야 하며 모든 데이터 액세스 감사는 의무입니다. 이 요구 사항을 해결하기 위해 SQL Server는 다양한 감사 구현 옵션을 제공합니다.

다른 일반적인 준수 요구 사항은 데이터 암호화를 통해 데이터 파일 액세스가 손상된 경우 무단으로 액세스하지 못하게 보호합니다. SQL Server는 TDE(투명한 데이터 암호화)를 제공하여 이 요구 사항을 지원합니다. 데이터베이스에 관리 액세스 권한이 있는 사용자의 정보 유출 위험을 줄이기 위해 신용 카드 번호 또는 국가 ID 번호 등 민감 데이터가 포함된 열을 Always Encrypted 기능을 사용하여 암호화할 수 있습니다.

이 모듈에서는 사용 가능한 SQL Server내 감사 옵션, SQL Server 감사 기능 사용 및 관리 및 암호화 구현 방법을 설명합니다.

단원

  • SQL Server의 데이터 액세스 감사 옵션
  • SQL Server 감사 구현
  • SQL Server 감사 관리
  • 암호화로 데이터 보호

랩 : 감사 및 암호화 사용

  • SQL Server 감사로 작업
  • Always Encrypted로 열 암호화
  • TDE을 사용한 데이터베이스 암호화

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • 데이터 엑세스 감사용 옵션 설명.
  • SQL Server 감사 구현.
  • SQL Server 감사 관리.
  • SQL Server에서 데이터 암호화 방법 설명 및 구현.
  • 암호화 구현

모듈 5: 복구 모델 및 백업 전략

데이터베이스 관리자 역할의 가장 중요한 측면 중 하나는 조직 데이터에 장애가 발생하면 데이터를 복구할 수 있도록 안정적으로 백업하는 것입니다. 컴퓨팅 업계는 수십 년 간 안정적인 백업 전략의 필요성을 알고 있었으며 오랫동안 논의했지만 데이터 손실에 대한 안타까운 이야기는 여전히 흔합니다. 또 다른 문제는 시행 중인 전략이 설계대로 작동하더라도 여전히 자조직의 운영 요구 사항을 자주 충족시키지 못합니다.

이 모듈에서는 사용 가능한 백업 모델 및 데이터베이스 일관성 유지 시 트랜잭션 로그 역할에 따른 조직의 요구에 맞는 전략 생성 방법을 학습합니다.

단원

  • 백업 전략 이해
  • SQL Server 트랜잭션 로그
  • 백업 전략 계획

랩 : SQL Server 복구 모델 이해

  • 백업 전략 계획
  • 데이터베이스 복구 모델 구성

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • 다양한 백업 전략 설명.
  • 데이터베이스 트랜잭션 로그 작동 방식 설명.
  • SQL Server 백업 전략 계획.

모듈 6: SQL Server 데이터베이스 백업

이전 모듈에서는 SQL Server 시스템용 백업 전략 계획 방법을 학습했습니다. 전체 및 차등 데이터베이스 백업, 트랜잭션 로그 백업 및 부분 백업을 포함한 SQL Server 백업 수행 방법을 학습합니다.

이 모듈에서는 다양한 백업 전략 적용 방법을 학습합니다.

단원

  • 데이터베이스 및 트랜잭션 로그 백업
  • 데이터베이스 백업 관리
  • 고급 데이터베이스 옵션

랩 : 데이터베이스 백업

  • 데이터베이스 백업
  • 데이터베이스, 차등 및 트랜잭션 로그 백업 수행
  • 부분 백업 수행

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • SQL Server 데이터베이스 및 트랜잭션 로그 백업 수행.
  • 데이터베이스 백업 관리.
  • 고급 백업 옵션 설명.

모듈 7: SQL Server 2016 데이터베이스 복구

이전 모듈에서는 Microsoft SQL Server 2016 데이터베이스 백업 생성 방법을 학습했습니다. 백업 전략에는 다양한 유형의 백업이 포함되므로 효율적으로 복원할 수 있는 것이 중요합니다.

긴급 상황에서 데이터베이스를 복원하는 경우가 종종 있습니다. 그러나 데이터베이스를 요구한 상태로 성공적으로 복구를 진행하는 방법에 대한 명확한 계획이 있어야 합니다. 복구 프로세스를 잘 계획하고 이해하면 상황이 악화하는 것을 피할 수 있습니다.

일부 데이터베이스 복원은 시스템 장애와 관련이 있습니다. 이러면 시스템을 장애 전 상태로 최대한 가깝게 되돌려지길 원할 것입니다. 일부 장애는 인적 오류와 관련이 있음에도 오류 이전 시점으로 시스템을 복구하기 원할 것입니다. SQL Server 2016의 지정 시간 복구 기능을 사용하여 이를 해낼 수 있습니다.

일반적으로 사용자 데이터베이스는 훨씬 크기 때문에 시스템 데이터베이스보다는 시스템 장애의 영향을 받을 가능성이 높습니다. 그러나 시스템 데이터베이스는 장애의 영향을 받을 수 있음으로 복구 시 특별히 주의해야 합니다. 특히, 모든 시스템 데이터베이스에 대해 동일한 프로세스를 사용할 수 없으므로 각 시스템 데이터베이스 복구 방법을 이해해야 합니다.

이 모듈에서는 사용자 및 시스템 데이터베이스 복구 방법 및 지정 시간 복구 구현 방법을 알아봅니다.

단원

  • 복구 프로세스 이해
  • 데이터베이스 복구
  • 고급 복구 시나리오
  • 지정 시간 복구

랩 : SQL Server 데이터베이스 복구

  • 데이터베이스 백업 복구
  • 데이터베이스, 차등 및 트랜잭션 로그 백업 복구
  • 증분 복구 수행

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • 복구 프로세스 설명.
  • 데이터베이스 복구.
  • 고급 복구 작업 수행.
  • 지정 시간 복구 수행.

모듈 8: SQL Server 관리 자동화

Microsoft SQL Server에서 제공하는 도구를 사용하면 다른 데이터베이스 엔진 대비 관리가 쉽습니다. 그러나 작업 수행이 쉬운 경우에도 작업을 여러 번 반복하는 것은 일반적입니다. 효율적인 데이터베이스 관리자는 반복 작업 자동화 방법을 학습합니다. 이를 통해 관리자가 필요한 시기에 작업 수행을 잊어버린 상황을 피할 수 있습니다. 더 중요한 것은 작업 자동화는 작업이 실행될 때마다 작업이 일관되게 수행되도록 하는 데 도움을 줍니다.

이 모듈에서는 SQL Server 에이전트를 사용한 작업 자동화, 작업용 보안 컨텍스트 구성 및 다중 서버 작업 구현 방법을 설명합니다.

단원

  • SQL Server 관리 자동화
  • SQL Server 에이전트로 작업
  • SQL Server 에이전트 작업 관리
  • 다중 서버 관리

랩 : SQL Server 관리 자동화

  • SQL Server 에이전트 작업 생성
  • 작업 테스트
  • 작업 예약
  • 마스터 및 대상 서버 구성

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • SQL Server 관리 자동화 방법 설명.
  • 작업, 작업 단계 유형 및 스케줄 구성.
  • SQL Server 에이전트 작업 관리.
  • 마스터 및 대상 서버 구성.

모듈 9: SQL Server 에이전트용 보안 구성

이 과정의 다른 모듈에서는 “최소 권한” 원칙에 따라 사용자에게 부여된 권한을 최소화해야 할 필요성을 보여줍니다. 즉 사용자는 본인들의 작업을 수행하는 데 필요한 권한만 있으면 됩니다. SQL Server 에이전트 사용 권한 부여에도 동일한 논리가 적용됩니다. SQL Server 에이전트 계정 컨텍스트에서 모든 작업을 실행하고 관리 계정으로 계정을 구성하기 쉽지만 이로 인해 부적절한 보안 환경을 초래할 수 있습니다. SQL Server 에이전트에서 실행되는 작업에 대해 최소 권한 보안 환경을 생성하는 방법을 이해하는 것은 중요합니다.

단원

  • SQL Server 에이전트 보안 이해
  • 자격 증명 구성
  • 프록시 계정 구성

랩 : SQL Server 에이전트용 보안 구성

  • SQL Server 에이전트 문제 분석
  • 자격 증명 구성
  • 프록시 계정 구성
  • 작업 보안 컨텍스트 구성 및 테스트

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • SQL Server 에이전트 보안 설명.
  • 자격 증명 구성.
  • 프록시 계정 구성.

모듈 10: 경고 및 알림을 사용한 SQL Server 모니터링

사전 예방적인 방식으로 Microsoft SQL Server를 관리할 때 한 가지 중요한 측면은 서버에서 문제와 이벤트가 발생했을 때 이를 확실히 인식하는 것입니다. SQL Server는 문제에 대한 충분한 정보를 기록합니다. 경고 및 알림을 사용하여 이러한 문제가 발생할 때 자동으로 알리도록 구성할 수 있습니다. SQL Server 데이터베이스 관리자가 이메일 메시지를 통해 관심 이벤트 세부 정보를 받는 것이 가장 일반적인 방법입니다. 이 모듈에서는 SQL Server 인스턴스에 대한 데이터베이스 메일, 경고 및 알림 구성과 Microsoft Azure SQL 데이터베이스에 대한 경고 구성을 다룹니다.

단원

  • SQL Server 오류 모니터링
  • 데이터베이스 메일 구성
  • 연산자, 경고 및 알림
  • Azure SQL 데이터베이스내 경고

랩 : 경고 및 알림을 사용한 SQL Server 모니터링

  • 데이터베이스 메일 구성
  • 연산자 구성
  • 경고 및 알림 구성
  • 경고 및 알림 테스트

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • SQL Server 오류 모니터.
  • 데이터베이스 메일 구성.
  • 연산자, 경고 및 알림 구성.
  • Azure SQL 데이터베이스내 경고 작업.

모듈 11: PowerShell을 사용한 SQL Server 관리 소개

이 모듈에서는 Microsoft SQL Server에서 Windows PowerShell 사용 방법을 살펴봅니다. 기업은 IT 인프라 유지 관리 효율성 및 안정성을 지속해서 높여야 하므로 PowerShell을 사용하고 작업 수행을 위한 스크립트 생성을 통해 효율성과 안정성을 향상할 수 있습니다. PowerShell 스크립트를 여러 서버에 여러 번 테스트하고 적용할 수 있어 조직의 시간과 돈이 절약됩니다.

단원

  • Windows PowerShell로 시작
  • PowerShell을 사용한 SQL Server 구성
  • PowerShell을 사용한 SQL Server 관리 및 유지 관리
  • PowerShell을 사용한 Azure SQL 데이터베이스 관리

랩 : PowerShell을 사용한 SQL Server 관리

  • PowerShell로시작
  • PowerShell을 사용한 SQL Server 설정 변경

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • PowerShell 이점 및 기본 개념 설명.
  • PowerShell을 사용한 SQL Server 구성.
  • PowerShell을 사용한 SQL Server 관리 및 유지 관리.
  • PowerShell을 사용한 Azure SQL 데이터베이스 관리.

모듈 12: 확장 이벤트로 SQL Server 액세스 추적

성능 메트릭을 모니터링하면 데이터베이스 솔루션의 전체 성능을 평가할 수 있는 좋은 방법을 제공합니다. 그러나 문제를 해결하고 워크로드 성능 최적화 방법을 식별하기 위해 Microsoft SQL Server 인스턴스 내에서 발생하는 활동에 대해 자세한 분석을 수행해야 하는 경우가 있습니다.

SQL Server 확장 이벤트는 Microsoft SQL Server 데이터베이스 엔진에 내장된 유연한 경량 이벤트 처리 시스템입니다. 이 모듈에서는 확장 이벤트의 아키텍처 개념, 문제 해결 전략 및 시나리오 사용에 중점을 둡니다.

단원

  • 확장 이벤트 핵심 개념
  • 확장 이벤트로 작업

랩 : 확장 이벤트

  • System_Health 확장 이벤트 세션 사용
  • 확장 이벤트를 사용한 페이지 분할 추적

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • 확장 이벤트 핵심 개념 설명.
  • 확장 이벤트 세션 생성 및 쿼리.

모듈 13: SQL Server 모니터링

Microsoft SQL Server 데이터베이스 엔진은 관리상 주의 없이 장기간 실행할 수 있습니다. 그러나 데이터베이스 서버에서 발생하는 활동을 정기적으로 모니터링하면 잠재적인 문제가 발생하기 전에 처리할 수 있습니다. SQL Server는 현재 활동을 모니터링하고 이전 활동의 세부 정보를 기록하는 데 사용 가능한 많은 도구를 제공합니다. 각 도구의 기능과 사용법에 능숙해야 합니다. 모니터링 도구가 제공할 수 있는 출력량이 엄청나기 때문에 출력 분석 기술을 학습해야 합니다.

단원

  • 활동 모니터링
  • 성능 데이터 캡처 및 관리
  • 수집된 성능 데이터 분석
  • SQL Server 유틸리티

랩 : SQL Server 모니터링

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • 현재 활동 모니터.
  • 성능 데이터 캡처 및 관리.
  • 수집된 성능 데이터 분석.
  • SQL Server 유틸리티 구성.

모듈 14: SQL Server 문제 해결

Microsoft SQL Server를 사용하는 데이터베이스 관리자는 특히 SQL Server 데이터베이스에 의존하는 업무상 중요한 애플리케이션의 사용자가 작업할 수 없는 문제가 발생한 경우 중요한 문제 해결사 역할을 수행해야 합니다. 전반적으로 문제를 해결하기 위한 확실한 방법론이 있고 SQL Server 시스템 사용 시 발생할 수 있는 가장 일반적인 문제를 잘 아는 것이 중요합니다.

단원

  • SQL Server 문제 해결 방법론
  • 서비스 관련 문제 해결
  • 연결 및 로그인 문제 해결

랩 : 일반적인 문제 해결

  • SQL 로그인 문제 해결
  • 서비스 문제 해결
  • Windows 로그인 문제 해결
  • 작업 실행 문제 해결
  • 성능 문제 해결

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • SQL Server용 문제 해결 방법론 설명.
  • 서비스 관련 문제 해결.
  • 로그인 및 연결 문제 해결.

모듈 15: 데이터 가져오기 및 내보내기

Microsoft SQL Server 시스템에 있는 많은 양의 데이터를 애플리케이션 프로그램을 실행하는 사용자가 직접 입력하지만 종종 다른 위치에 있는 데이터를 SQL Server로 이동 또는 SQL Server에서 다른 위치로 이동해야 하는 경우가 있습니다.

SQL Server는 데이터 송신 및 수신에 사용할 수 있는 도구 집합을 제공합니다. BCP (대량 복사 프로그램) 유틸리티 및 SQL Server Integration Services 등 해당 도구의 일부는 데이터베이스 엔진 외부에 있습니다. BULK INSERT 문 및 OPENROWSET 함수 등 다른 도구는 데이터베이스 엔진에서 구현됩니다. SQL Server를 사용하면 사용자 데이터베이스와 관련된 모든 테이블, 뷰 및 인스턴스 객체를 단일 배포 단위로 패키징하는 데이터 계층 애플리케이션을 생성할 수 있습니다.

이 모듈에서는 SQL Server 데이터 가져오기 및 내보내기 가능한 도구 및 기술을 살펴봅니다.

단원

  • SQL Server에서 데이터 전송 및 수신
  • 테이블 데이터 가져오기 및 내보내기
  • Bcp 및 BULK INSERT를 사용하여 데이터 가져오기
  • 데이터 계층 애플리케이션 배포 및 업그레이드

랩 : 데이터 가져오기 및 내보내기

  • 가져오기 마법사를 사용한 Excel 데이터 가져오기
  • Bcp를 사용한 분리된 텍스트 파일 가져오기
  • BULK INSERT를 사용한 분리된 텍스트 파일 가져오기
  • 데이터 추출을 위한 SSIS 패키지 생성 및 테스트
  • 데이터 계층 애플리케이션 배포

본 모듈을 마친 후에는 다음을 수행할 수 있습니다.

  • 데이터 전송을 위한 도구 및 기술 설명.
  • 테이블 데이터 가져오기 및 내보내기.
  • Bcp 및 BULK INSERT를 사용하여 데이터 가져오기.
  • 데이터 계층 애플리케이션을 사용하여 데이터베이스 애플리케이션 가져오기 및 내보내기.