목록2019/02 (12)
쿼리문이 느릴 때 인덱스를 만들어 빠르게 하는 방법과 쿼리문을 수정해 기존 인덱스를 효율적으로 사용하는 방법이 있다. 전자는 인덱스 재구성하는 것은 많은 리소스를 소모하기 때문에 자원낭비입니다. 그래서 후자를 통해 해결하는 것이 전문가의 자세입니다. 쿼리문 작성 팁 1) 열 변경하지 않기 -- 인덱스 만들기 CREATE NONCLUSTERED INDEX NCL_OrderDate_DueDate_ShipDate ON dbo.SalesOrderHeader(OrderDate, DueDate, ShipDate) --문제의 쿼리 SELECT SalesOrderID, Status, SalesOrderNumber, AccountNumber, CreditCardApprovalCode, TotalDue FROM dbo.S..
고가용성? 오랫동안 정상적으로 서비스를 지속하는 것 -> SQL Server가 오랫동안 정지하지 않고 임무를 수행하는 것 고가용성에 영향을 주는것들 1) 하드웨어 결함으로 인한 서버 정지 2) 소프트웨어 결함(버그) 3) 전쟁과 자연재해(DR - Disasters Recovery) 고가용성을 위한 방안 - 이중화 문제가 발생하여 서버가 정지했더라도 서비스는 정지하지 않습니다. 물론 짧은 순간 다운타임이 있을 수 있지만, 오랜 시간 장애 상태를 경험하는 것에 비하면 거의 문제가 되지 않습니다. AlwaysOn 가용성 그룹(Availability Groups) SQL Server가 고가용성을 제공하기 위해 Windows 장애 조치 클러스터링을 이용하는 방법 보조서버를 스냅숏 없이는 읽을 수 없는 것과 하나의..
Windows Server에 장애 조치 클러스터링(Failover Clustering) 기능 추가 장애 조치 클러스터링 기능은 기본적으로 활성화되지 않은 기능입니다. 그래서 [서버 관리자]에서 [역할 및 기능 추가]마법사를 사용해서 기능을 활성화해야 합니다. 1) [서버 관리자] - [관리] - [역할 및 기능 추가]를 클릭합니다. 2) 마법사가 실행되면 [다음]을 클릭합니다. 3) [역할 기반 또는 기능 기반 설치]를 선택하고, [다음]을 클릭합ㄴ다. 4) [서버 풀에서 서버 선택]을 선택하고, 서버 정보를 확인하고, [다음]을 클릭합니다. 5) 현재 역할을 선택하는 것이 아니기 때문에 [다음]을 클릭합니다. 6) [장애조치 클러스터링] 기능을 선택 후 [설치]를 클릭합니다. 7) [기능추가]가 완료되..
고가용성? 오랫동안 정상적으로 서비스를 지속하는 것 -> SQL Server가 오랫동안 정지하지 않고 임무를 수행하는 것 고가용성에 영향을 주는것들 1) 하드웨어 결함으로 인한 서버 정지 2) 소프트웨어 결함(버그) 3) 전쟁과 자연재해(DR - Disasters Recovery) 고가용성을 위한 방안 - 이중화 문제가 발생하여 서버가 정지했더라도 서비스는 정지하지 않습니다. 물론 짧은 순간 다운타임이 있을 수 있지만, 오랜 시간 장애 상태를 경험하는 것에 비하면 거의 문제가 되지 않습니다. 미러링(Mirroring) 데이터베이스를 거울로 비추듯 똑같은 복제본을 유지하는 기능 (실시간 동기화) 미러링을 구성하는 서버의 역할 주서버 원본 데이터베이스를 가지고 클라이언트에게 정상적으로 서비스를 제공하는 서버..
고가용성? 오랫동안 정상적으로 서비스를 지속하는 것 -> SQL Server가 오랫동안 정지하지 않고 임무를 수행하는 것 고가용성에 영향을 주는것들 1) 하드웨어 결함으로 인한 서버 정지 2) 소프트웨어 결함(버그) 3) 전쟁과 자연재해(DR - Disasters Recovery) 고가용성을 위한 방안 - 이중화 문제가 발생하여 서버가 정지했더라도 서비스는 정지하지 않습니다. 물론 짧은 순간 다운타임이 있을 수 있지만, 오랜 시간 장애 상태를 경험하는 것에 비하면 거의 문제가 되지 않습니다. 로그 전달(Log Shipping) 주 서버가 정기적으로 백업한 트랜잭션 로그를 보조 서버에 정기적으로 복사하고, 이를 복원해서 주 서버와 보조 서버가 같은 데이터베이스를 유지하는 방법으로 장점은 주 서버에 대한 부..
고가용성? 오랫동안 정상적으로 서비스를 지속하는 것 -> SQL Server가 오랫동안 정지하지 않고 임무를 수행하는 것 고가용성에 영향을 주는것들 1) 하드웨어 결함으로 인한 서버 정지 2) 소프트웨어 결함(버그) 3) 전쟁과 자연재해(DR - Disasters Recovery) 고가용성을 위한 방안 - 이중화 문제가 발생하여 서버가 정지했더라도 서비스는 정지하지 않습니다. 물론 짧은 순간 다운타임이 있을 수 있지만, 오랜 시간 장애 상태를 경험하는 것에 비하면 거의 문제가 되지 않습니다. 복제(Replications) 원본 데이터베이스의 데이터를 다른 데이터베이스로 복사한 후, 이를 동기화시켜 사용할 수 있게(대부분 읽기전용으로 사용)하는 것 복제를 위한 서버의 역할 게시자 다른서버에 동기화될 데이터..
Windows 계정관리 Windows Server 관리자의 기본값은 Administrator 인데 외부에서 침입시 기본 관리자의 ID를 통해 공격할 수 있으므로 보안을 위해 Group으로 설정하는 것이 좋습니다.(권장) 관리자 권한 등록 1) [시작]-[Administrative Tools]을 클릭합니다. 2) [Computer Management] 아이콘을 더블 클릭합니다. 3) 우측메뉴에 [Local Users and Groups] 왼쪽 삼각형을 클릭하고 [Group] 폴더를 클릭합니다. 그리고 우측에 [Administors]를 찾아 우클릭 후 [Add to Group...] 메뉴를 선택합니다. 4) [Add]를 클릭하여 관리자 등록하고 싶은 윈도우 계정을 등록합니다.
데이터 전송? SQL Server 데이터를 다른 서버로 복사하거나 다른 서버에서 SQL Server로 복사하는 과정 -> 다른 서버는 SQL Server일 수 있고, 다른 데이터베이스 관리 시스템일 수도 있고, 데이터베이스가 아닌 엑셀이나 텍스트 파일일 수도 있습니다. 가져오기 :: 엑셀 데이터 -> SQL Server 1) 아래 엑셀파일을 SQL Server로 전송해보겠습니다. (첫번째 행은 속성이름을 지정해도 되고 안해도 가능) 2) 테이블을 만들 데이터베이스를 선택해 우클릭한 후 [태스크] - [데이터가져오기]를 클릭합니다. 3) 마법사가 실행되면 [다음]을 클릭합니다. 4) 원본데이터는 엑셀파일이므로 Microsoft Excel을 선택하고 파일경로를 지정합니다. 그리고 다음을 클릭합니다. (첫행을..