갑자기 WSS 로 구축한 Teamsite 가 안열린다 – DB 에 연결할 수 없다네…
그래서 이래저래 원인을 찾던중 WSS 에 사용하는 원격 SQL DB 가 MDF 파일 자체에 문제가 생긴듯…
Management Studio 로 새로 연결을 끊고 다시 연결을 할려니 재 연결이 안되네… 헐 -_-;;
그래서 또 구글링을 하다가 찾음…..
출처 : http://dorajistyle.pe.kr/technology.php/2006/11/17/db_mssql_2005_dbesmemnes
정상적으로 종료가 되었을때만 사용
이건 관리툴에서 단순 연결/해제 를 하는 것과 동일한 기능인듯 하다
1. 로그와 데이터 모두 살아있을 때 복구법 : sp_attach_db ‘DB명’, ‘경로파일명.mdf’ , ‘경로파일명_log.ldf’
2. 데이터 파일만 살아있을 때 복구법 : sp_attach_single_file_db ‘DB명’, ‘경로파일명.mdf’
3. 데이터 파일만 남기고 삭제하고 싶을때 : sp_detach_db
ldf파일만 손상을 입고 mdf파일은 손상을 입지 않았을때
– 원래 DB와 동일 이름의 DB를 생성한다. (mdf 파일명과 크기도 같게..)
– 생성한 DB를 긴급 모드로 변경한다.
alter database dbname set emergency;
(다시 살릴때) alter database dbname set online;
– SQL 서버를 멈춘다.
– 생성한 DB의 mdf,ldf파일을 삭제하고 복구할 mdf파일들을 복사해온다.(로그파일 제외)
– SQL 서버를 재시동한다.
– 오브젝트와 데이터들이 관리자에게 접근가능하지만, 여전히 백업도 안되고 온라인상태가 되지도 않는다.
– 스크립트 생성 마법사로 모든데이터 오브젝트를 스크립트로 만든다.(스크림팅 오브젝트 권한,의존 오브젝트들,인덱스들 포함;파일로 내보낸다.)
이 부분은 실제 DataRow 를 제외한 테이블 및 기타 객체자체만 스크립트로 생성
– 새로운 두번째 DB를 생성한다.
– 새로운 DB에서 모든 오브젝트가 생성되 때까지 여러번 스크립트를 실행한다.
생성된 스크립트를 쿼리창에서 실행해서 새 DB 에 객체를 추가하는 부분
– 데이터 불러오기(가져오기) 마법사로 모든 살아있는 테이블을 새로운 DB에 넣는다.
기존 DB 에서 -> 새 DB 로 실제 테이블(객체) 내의 데이트를 선택하여 넣는 과정
실제 이 과정에서 오류가 발생했다…
sql_variant 타입의 컬럼을 가진 테이블은 가져오기(내보내기) 로 복사할수 없다(?) 는 식의 오류가 발생한다.
그래서 sql_variant 타입을 가진 테이블을 제외하고 모두 가져오기(내보내기) 를 한 다음
제외한 테이블은 스크립트로 별도로 백업 받아서 수동으로 복원을 시켰다.
이때, 조심해야 할것은 백업과정에 따라 생성된 스크립트 인코딩을 고려해서 해야할 듯하다.
이번경우 인코딩 때문에 한글에 문제가 있어서 메모장에 복사한 후 한글을 제대로 보이게끔 해서 복원을 하였음
– 새로운 DB를 백업하고, 긴급모드에 들어가있는 DB에 복원한다.
이 과정은 정확히 무슨 의미인지?
데이터 이동이 끝난 경우 미리 백업을 해놓으라는??아무튼 백업은 했는데.. 복원 할려니 안되더라…
그래서 기존 긴급모드에 있는 DB 의 연결을 해제하고
새 DB 를 기존 WSS 에서 사용하는 DB 명으로 변경을 하였음
2008-10-28
여기까지만 하고 WSS 사이트를 다시 살려서 돌려봤더니…
설정이나 기타 첨부파일등은 정상적으로 다운 로드 및 ListView 가 된다…
하지만, 업로드시 경로를 찾을 수 없다는 오류가 나고… 하지만 실제 파일은 존재하고…
기존 업로드된 파일은 수정이 안된다…
그래서… 더 살펴보기로 했다…
기존 DB 설정이랑 수동으로 만든 설정이 틀리다…
기존 DB 는 Sharepoint Admin 에서 만들어서 그런지 문자셋 설정이나 기타 설정이 안 맞는 하고
보안(로그인) 설정 및 기타 여러 설정을 확인해 가며 수정하는 중이다…
0 Comments