SQL Server/SQL Server Tip 662

향상된 가용성 기능 (미러링)

Microsoft SQL Server 2005/2008 향상된 가용성 기능 (미러링) 1. MIRRORING 1.1 미러링 개요. 데이터베이스 미러링은 SQL Server 데이터베이스 엔진의 서로 다른 서버 인스턴스에 있어야 하는 두 개의 단일 데이터베이스 복사본을 유지 관리하는 것을 일컫는다. 일반적으로 두 서버는 서로 다른 위치의 컴퓨터에 있으며 한 서버는 클라이언트에 데이터베이스를 제공하는(주 서버) 다른 서버는 세션의 구성 및 상태에 따라 상시 또는 웜 대기 서버(미러 서버) 역할을 한다. 데이터베이스의 미러링 세션을 동기화하면 데이터베이스 미러링은 커밋된 트랜잭션에서 데이터 손실 없이 신속한 장애 조치(Failover)를 지원하는 상시 대기 서버를 제공한다. 세션이 동기화되지 않은 경우에는 미러..

SQL Server Agent 테이블

SQL Server Agent 테이블 출처 :ms-help://MS.SQLCC.v10/MS.SQLSVR.v10.ko/s10de_6tsql/html/6cb39bfd-079e-4be4-9c42-2fa234c65ce1.htm syssubsystems 각 경고에 대해 한 행을 포함합니다. syscategories SQL Server Management Studio에서 작업, 경고 및 연산자를 구성하는 데 사용되는 범주를 포함합니다. sysdownloadlist 모든 대상 서버의 다운로드 명령대기열을 포함합니다. sysjobactivity 현재 SQL Server 에이전트 작업 활동 및 상태에 대한 정보를 포함합니다. sysjobhistory SQL Server 에이전트의 예약된 작업 실행에 대한 정보를 포함합니..

초보자를 위한 복제 4탄 – 스크립트 생성 방법 및 재구성

초보자를 위한 복제 4탄 – 스크립트 생성 방법 및 재구성 안녕하세요 SQLER 강성욱 입니다. GUI로 구성된 복제를이용하여 복제 생성 스크립트를 만들어 보겠습니다. 1) 스크립트를 생성할 복제 대상이 있어야 합니다 . (지난 포스팅까지 따라하셧으면 복제가 세팅 되어 있으리라 생각합니다 ^^) 우선 배포서버에서 복제 - 마우스 오른쪽 - 스크립트 생성 클릭 2) 구성 요소 생성 또는 선택을 클릭합니다. (복제 삭제 또는 해제시에는 두번쨰 라디오버튼 선택) 스크립트를 새쿼리창으로 생성할지 파일러 저장할지 등 선택합니다. 선택하는 순간 바로 스크립트 생성 시작됩니다. (여기서는 새 쿼리 창으로 선택하였습니다.) 3) 스크립트 생성중 4) 배포 스크립트 생성이 완료 되었습니다. 보안정책에 의하여 비밀번호는 ..

초보자를 위한 복제3탄 – 구독 설정

초보자를 위한 복제 3탄 – 구독 설정 안녕하세요 SQLER 강성욱 입니다. 지난 포스팅에 게시설정을 완료 하였습니다. 그럼 구독자를 추가해 보도록 하겠습니다. 1) 구독자를 추가합니다. 구독서버 ( 여기서는 THIRD 입니다) 에서 실행합니다 SSMS - 복제 - 마우스 오른쪽 클릭 - 새로 만들기 - 구독 선택 2) 구독 마법사를 시작합니다. 3) 게시 서버를 선택합니다. 게시서버가 다른 서버에 위치하기 때문에 SQL Server게시자 찾기를 선택하여 게시자 서버를 연결합니다. 4) 게시자 서버이름을 입력하고 ID, PWD를 입력하여 연결합니다. 5) 구독 할 게시를 선택합니다. 여기서는 지난 포스팅때 만들었던 TestA게시를 선택합니다. 6) 배포 에이전트의 위치를 선택합니다. 배포서버가 SECON..

초보자를 위한 복제2탄 – 게시자 설정

초보자를 위한 복제 2탄 – 게시자 설정 안녕하세요 SQLER 강성욱 입니다. 지난 포스팅에 배포설정을 완료 하였습니다. 그럼 게시자를 추가해 보도록 하겠습니다. 1) 게시 서버에서 게시자를 추가 합니다. SSMS - 개체탐색기 - 복제 - 마우스 오른쪽 클릭 - 새로 만들기 - 게시 2) 게시 마법사를 시작합니다. 3) 배포자가 다른 서버에 있기 있문에 (Second) 두번째 메뉴를 선택하고 추가를 클릭합니다. 4) 배포자가 있는 서버의 이름을 입력하고 로그인 ID, PWD를 입려하여 연결합니다. 5) 배포자가 Second로 되었습니다. 6) 게시서버가 배포서버와 연결에 필요한 암호를 입력합니다. 7) 게시하려는 DB를 선태합니다. (여기서는 배포 포스팅때 미리 만들어둔 게시DB를 사용합니다.) 8) ..

초보자를 위한 복제 1탄 - GUI 로 복제 구성, 배포 설정

초보자를 위한 복제 1탄 - GUI 로 복제 구성, 배포 설정 안녕하세요 SQLER 강성욱 입니다. 지난 번에 스크립트를 이용한 복제를 기고하였는데 너무 두서 없는거 같아서 다시 한번 순서를 정하여 기고 합니다. 그럼 오늘 제 1탄 GUI로 복제 구성을 올립니다. 우선 주의사항으로는 1) 복제 대상 데이블은 PK가 있어야 합니다. 2) 복제 구성 순서는 배포설정 -> 게시자 설정 -> 구독 설정 순으로 진행되어야 합니다. 복제 구성은 중앙 게시자 방식 입니다. 복제 순서에 따라 스샷을 만들어 보았습니다, 순서대로 따라하시면 될듯합니다. 미흡한 자료이지만 관심있게 봐주시길 부탁 드립니다. 혹시나 자료에 대해서 잘못된 부분이나 추가사항 또는 주의사항등은 리플로 달아주시면 이글을 보시는 다른분들께도 많은 도움..

VMware를 활용한 SQL 테스트 환경 구축하기 (2)IP 세팅

VMware를 활용한 SQL 테스트 환경 구축하기 (2)IP 세팅 안녕하세요 SQLER 강성욱 입니다. 가정에서 VM을 이용한 테스트 환경 구축하기 -1탄- 에서는 VM을 이용하여 서버를 세팅하는 법을 다루었습니다. 로컬PC에서 VM 을 세팅한후 로컬(메인PC?)에서 SSMS를 실행하여 VM의 SQL서버에 접속을 시도 합니다. 연결이 잘 되나요?? 네.. 잘 됩니다. 그럼 이제 노트북이나 그밖의 PC등에서 SSMS를 실행하여 접속을 시도해 봅니다. 연결이 잘 되나요? 네...잘 안됩니다. 왜 그럴까요? 지금 VM에 세팅되어 있는 IP는 VM의 NAT 세팅이므로 별도의 내부 네트워크로 형성되어 있습니다. 우리가 외부에서 접속하려면 공인 IP를 부여 받아야 겟죠. 2탄에서는 IP설정에 대해서 알아보도록 하겠..

VMware를 활용한 SQL 테스트 환경 구축하기 (1)서버 세팅

VMware를 활용한 SQL 테스트 환경 구축하기 (1)서버 세팅 안녕하세요 SQLER 강성욱 입니다. 지난 복제에 관한 글을 쓰면서 테스트 환경이 너무 미흡했다는 생각이 들어서 새롭게 테스트 환경을 구축하였습니다. 기존의 테스트 환경은 1대의 로컬서버에 인스턴스 이용하여 여러대의 DB를 구동하는 방법을 사용하였는데 이는 현업에서의 환경와 차이가 있을 듯 하여 VM을 이용하여 가상화 환경을 구축하여 테스트를 해볼까 하여 테스트 환경 구축과정을 공유해 볼까 합니다. (VM 세팅법은 검색 하시면 더 좋은 자료가 사실 많아요.ㅠㅠ) 테스트 환경 O/S : WIN 7 ProK 64bit CPU : INTEL CORE2 DUO E6750 2.66G RAM : S/S DDR2 1G * 3 HDD : 넉넉할수록 좋음..

SQL Server PIVOT

SQL Server PIVOT /* 2000 시절에는행열바꿈을위해서case 구문을이용하여컬럼을구분하여야했지만2005, 2008 부터는PIVOT 함수로 코드가간단해지면서개발자로하여금많은개발단축시간을가져왔다. */ USE tempdb; IF OBJECT_ID('dbo.PIVOTtest', 'U') IS NOT NULL DROP TABLE dbo.Orders; CREATE TABLE dbo.PIVOTtest ( orderid INT NOT NULL, orderdate DATE NOT NULL, empid INT NOT NULL, custid VARCHAR(5) NOT NULL, qty INT NOT NULL, CONSTRAINT PK_Orders PRIMARY KEY(orderid) ); INSERT INTO..

SQL Server 2008 테이블 INSERT 하기

SQL Server 2008 테이블 INSERT 하기 -- 우선테이블생성부터. USE tempdb; IF OBJECT_ID('dbo.Test', 'U') IS NOT NULL DROP TABLE dbo.Test; CREATE TABLE dbo.Test( orderid INT NOT NULL, orderdate DATE NOT NULL, empid INT NOT NULL, custid VARCHAR(5) NOT NULL, qty INT NOT NULL, CONSTRAINT PK_Orders PRIMARY KEY(orderid) ); -- 기존SQL 2000 , 2005 에서는테이블을생성후데이터를입력할때마다INSERT 구문을붙어줘야했다. INSERT INTO dbo.TEST (orderid, orderdat..