현재 데이터가 입력되고 있는 테스트 db가 있다. 이 db의 데이터가 운영 db에 (운영db는 아직 생성안됨) 카피되어야 한다.

 

1) 데이터 입력기간중 운영db 세팅을 할 것이므로
    이때는 테스트 db 백업한거를 바탕으로 운영 db를 생성한다.

 

2) 테스트 db에 데이터 다 쌓은후 운영 db에 다시 넣어줘야 하는데
   이때는 테스트 db 내용 그대로 운영 db에 ( 운영 db에 입력된 데이터 무시 ) 복사해줄 예정이다.


상기 1) 2) 작업 시뮬레이션을 위해 일단 내 로컬을 운영db라 생각하고 테스트를 진행해보았다.

 

< 환경은 SqlServer 2008 R2 >

 

 

 

 

백업

 

sqlserver_backup_recovery_00.jpg

 

 

sqlserver_backup_recovery_01.jpg

 


  * 복사전용 백업 : "2005 버젼부터 지원, 다른 백업과 달리 복원 체인에 영향을 주지 않는다. 즉 기존 차등 백업이나 트랜잭션 로그 백업순서에 영향을 미치지 않는다. 이 방법은 현재 db를 테스트 목적으로 다른곳으로 옮기고자 할때 유용하게 사용할수 있다" (책 - SQLServer 운영과 튜닝)  --> 즉 정말 문제시 복구를 위한 백업이 아니라, 카피한다던가 하는 목적일때 요 옵션을 쓰면 되겠군

  * 백업세트 만료 기한 : 

     요게 뭔지는 이 글 최하단의 참고정보쪽을 보세요~

 

복원

 

sqlserver_backup_recovery_02.jpg

 

* 복원할때 아예 없던 db를 백업본을 통해 생성을 할수도 있다. 
  이때는 이름짓고 싶은 db명을 써주면 된다. ( 정말 그럴까?;; 난 기존 db명 그대로 만들었는데 별 문제는 없었음 )

 

* 이미 db는 있는 상태에서 다시 카피할때에는 이미 있는 db에 세션이 붙어있을땐 위의 메시지를 볼 수 있다.

  이 경우에는 이렇게 대처한다.

 

  - exec sp_who

  -  kill 58   (58은 죽이고 싶은 spid 의 예시값)

 

sqlserver_backup_recovery_03.jpg

 

* 복원된 db를 보라. 어라? 사용권한에 pssuser 사용자가 그대로 생겨버렸네?? 
   그렇다. db 카피때 그대로 따라온다. 

 

  현 db에는 pssuser 이미 있건 없건 이건 아래 두 캡쳐화면 같은 걸 초래한다.

 

  암튼... 일단 pssuser라는 login 이 없다면 일단 만들도록 한다.

  ( 참고로 이 과정에서 백업과 복제쪽의 pssuser 패스워드가 달라도 문제가 생길수는 있는거 같다. 난 동일하므로 문제는 없었다. 그런 문제가 있거나 내용이 궁금하면 참고 : http://www.cjstory.net/?p=64 )

 

  이후 pssuser로 로긴해봤자  pssdb 의 내용을 보지 못할것이다.

  해당 login 우클릭해서 pssdb 에 매핑하려하면 바로 아래와 같은 창이 나온다. 

  메시지 : 현재 데이터베이스에 사용자, 그룹 또는 역할 'pssuser'이(가) 이미 있습니다. (.Net SqlClient Data Provider)

  하나 더 밑의 창은 언제 나온것인지 기억이 안남.

 

이 깔끔하지 않은 sqlserver의 애매한 구조가 맘에 안드는데 어쨌든 문제는 해결해야 한다. 방법은?

 

sqlserver_backup_recovery_04.jpg

 

 

sqlserver_backup_recovery_05.jpg

 

 

login 'pssuser' 와  db 사용자 'pssuser' 의 끊어진 상태를 연결해주어야 한다고 한다.

그런 끊어진 관계가 뭐가 있는지는 아래 명령어로 확인하라는데... 난 보이지 않았다. (나의 실수일수도 있다)

exec sp_change_users_login 'Report'


 

그리고 끊어진 것을 있는 것은 아래와 같이 하였다.
 

 

 

USE pssdb

GO

exec sp_change_users_login 'Update_One' , 'pssuser', 'pssuser'

go

use pssdb

go

alter user pssuser with login = pssuser

go

 

* 'Update_One' 이라는건 한건을 업데이트 한다는... 해당 sp의 파라미터 값이므로 그대로 쓰면 된다.

 


* 복제후 IDENTITY 컬럼의 최종값이 유지되는지 테스트 결과 성공함.

 

 

 

경력의 많은 기간동안 작업하는 내 PC / 놋북에서 운영db에 클라이언트 툴등을 통해 편하게 접속/이용할수 있었다 ( 같은 망 또는 VPN 등으로 ) 

허나 지금은 그렇지 않고 아예 방문을 해서 해야하기 때문에... 실제 수행시 시행착오를 최소화하기 위해 시뮬레이션을 자세히 밟고, 기록도 남겨본다.

회사에서 내가 쓸 노트북이 있으면 좋을텐데 그렇지도 못하여... 서버 세팅 방문때 다른 사람 쓰는걸 빌려가야 하는데... 훔... 거참 곤란, 귀찮을듯... 일정 잡는거 자체부터 그렇겠네....

 

 


 

 

※ 관련하여 참고할만한 정보

기존 내 게시물 : SQLServer2008 - 설치, Create User, DB 등 초기세팅

현재 데이터베이스에 사용자 그룹 또는 역할 'test' 이미 있습니다 

( http://blog.naver.com/saint7710/10149071782 )

http://support.microsoft.com/kb/314546/ko

 

백업 세트에 기존 'xxxxx' 데이터베이스가 아닌 데이터베이스의 백업이 있습니다
( http://blog.naver.com/mindkhj/100110099519 )

http://www.cjstory.net/?p=64

 

 

http://support.microsoft.com/kb/274188  : 비밀번호 변경에 대한 얘기도 있음


백업세트 만료기한 관련

  - http://bloglee.egloos.com/4750912

  - http://msdn.microsoft.com/ko-kr/library/ms188697.aspx

 

책 : SQLServer 운영과 튜닝

 

번호 제목 글쓴이 날짜 조회 수
41 [명령 프롬프트] Microsoft SQL Server 서비스를 시작, 중지 또는 일시 중지 황제낙엽 2021.09.08 558
40 SQL Server 데이터베이스 기본 위치 변경하기 file 황제낙엽 2021.09.07 901
39 SQL Server 와 SQL Server Management Studio(SSMS) 설치 황제낙엽 2021.08.24 2766
38 Windows 방화벽에서 SQL Server 포트 허용하기 황제낙엽 2020.02.13 931
37 DB 성능 최적화 14가지 지키기 (쿼리 성능 향상) 황제낙엽 2019.05.29 595
36 특정 컬럼에 대해 그룹핑하여 각 그룹별 ROWNUM 붙이기 그리고 left join 황제낙엽 2019.05.28 485
35 조회용 검색 쿼리 황제낙엽 2019.05.28 531
34 ROWNUM 붙이기 황제낙엽 2019.05.28 495
33 SQL Server 서비스 시작 황제낙엽 2017.06.01 467
32 서버 컴퓨터 이름 변경과 함께 SQL Server 이름 변경 하기 file 황제낙엽 2016.07.19 13402
31 SQL Server 2014의 라이선스의 변화 file 황제낙엽 2016.06.29 462
30 Downgrade from SQL Server Enterprise Edition to Standard Edition file 황제낙엽 2016.06.23 1070
29 SQL Server 를 Developer (Enterprise) 에서 Standard 로 교체하기(Downgrade) 황제낙엽 2016.06.23 576
28 Identify database features restricted to a specific edition of SQL Server 2008 file 황제낙엽 2016.06.18 33428
27 SQL Server 에디션 다운그레이드와 제한된 기능 확인 file 황제낙엽 2016.06.18 596
26 SQL Server 2008 R2 제거 file 황제낙엽 2016.06.15 4193
25 SQL Server 2016 설치를 위한 하드웨어 및 소프트웨어 요구 사항 황제낙엽 2016.06.14 1027
24 MS-SQL Server 2008 SA계정 활성화. (SQL Server 인증 연결) file 황제낙엽 2016.06.14 614
23 혼합 인증 켜기(SQL Server 및 Windows 인증 모드) file 황제낙엽 2016.06.14 554
22 MS SQL Server Environment (SQL Server 2008 개요) file 황제낙엽 2016.06.14 572