2011-01-20 2 views
0

카시니를 사용하여 동일한 웹 사이트에서 2 개의 웹 응용 프로그램 복사본을 실행하고 싶었습니다. 무리하다고 생각하지 않았습니다. 포트 80을 사용 하나, 81 그래서 나는 다음과 같은 한 다른 사용 포트 :동일한 컴퓨터에서 ASP.NET MVC 웹 사이트의 복사본을 만드십시오 - 격변?

  1. 정지 카시니 및 SQL Express를
  2. 복사하고 사이트의 루트 폴더에 붙여 넣기를 (그리고 이름을 변경)
  3. 오픈 카시니 탐색기 포트 81에서 새 사이트를 설정하고 복사 된 위치를 지정하십시오.
  4. SQL Server가 동일한 별칭을 가진 두 데이터베이스를 연결할 수 없기 때문에 연결 문자열에 "Database = NewAlias"가 사용되도록 복사 된 사이트의 web.config가 변경되었습니다.
  5. 시작 카시니 및 SQL Express를 다시

나는 NEW 사이트입니다 나오면 제일 먼저로 탐색 :

실제 파일 을 열 수 없습니다

"C : \ site1 \ App_Data \ db_log.ldf ". 운영 체제 오류 32 : " 프로세스가 다른 프로세스에서 을 (를) 사용 중이므로 파일에 액세스 할 수 없습니다.)". 이미 있기 때문에 'C : \ site2 \ App_Data \ db_log.LDF'파일을 만들 수 없습니다. 경로 또는 파일 이름을 변경하고 작업을 다시 시도하십시오. 데이터베이스를 열 수 없습니다. "NewAlias"가 로그인 요청했습니다. 로그인에 실패했습니다. 사용자 ' 'NT AUTHORITY \ SYSTEM '에 대한 로그인에 실패했습니다. 파일 활성화 실패. 실제 파일 이름 "C : \ site1 \ App_Data \ db_log.ldf"는 일 수 있습니다. OLD 위치 (Web.config의 새 위치에 대한 정확한 MDB 경로를 지정하는 경우에도)에서 MDF 파일을 열려고하지만 NEW 위치에 로그를 만들려고

그것. 그런 다음 위로 가기 위해 OLD 위치에서 ldf에 액세스 할 수 없거나 로그인 할 수 없다는 힌트가 표시됩니다.

진정으로 직관적 인 오류가 발생하면 Microsoft와 팀이 다시 한 번 잘되었습니다. 누구든지 도와 줄 수 있습니까?

+0

LOL - 내가 추가해야 진정으로 빛나는 뭔가. 위의 오류에서 찾을 수없는 mdf 및 ldf를 삭제하려고하면 SQL Express에 의해 잠겨 있기 때문에 위선적으로 실행되지 않습니다. P – Jimbo

+1

"Database = xxx"별칭을 생략하면 위의 코드가 올바르게 작동합니다. 연결 문자열. 슬프게도 그 연결에 대해 백업 명령을 실행할 수 없다는 것을 의미합니다 (stackoverflow가 '느린 박수'이모티콘을 가졌 으면 좋겠다). – Jimbo

답변

0

저는 파일을 통해 라이브 데이터베이스를 복사 할 수 있다고 생각하지 않습니다. 먼저 분리 한 다음 복사하면 파일을 새 데이터베이스로 마운트하여 파일을 다시 부착 할 수 있습니다 (sp_detach_db).

sp_detach_db OldDb 

그런 다음 새 데이터베이스로 (sp_attach_db과) 다음 다시 연결, DB를 파일을 폴더를 복사합니다.

sp_attach_db NewDb, "C:\copy of site\App_Data\db_data.mdf", "C:\site1\App_Data\db_log.ldf" 
+0

이와 같은 상황에 대한 또 다른 매우 유용한 명령이 아래 답변으로 추가되었습니다! – Jimbo

0

것은 이런 종류의 일을 (그리고 막연 오류 메시지에 의해 회피하는 위의 시나리오에서했던가) 복사 된 MDF 파일을 사용하고 있지만, 그 여전히 연결되어 있다는 것입니다 때 종종 발생하는 또 다른 큰 문제 원래의 LDF (로그 파일).당신은 파일이 연결된 인스턴스에 사용되는있는 목록을 얻으려면이 명령을 실행할 수 있습니다 : 당신은에서

name fileid filename filegroup size maxsize growth usage 
========================================================= 
db 1 C:\site2\App_Data\db.mdf PRIMARY 24192 KB Unlimited 1024 KB data only 
db_log 2 C:\site1\App_Data\db_log.ldf  78080 KB 2147483648 KB 10% log only  

볼 수 있습니다 : 응답 당신이 뭔가를 줄 것이다

sp_helpfile 

출력 로그 파일이 분명히 문제가 발생할 것입니다 기존의 데이터베이스와 공유되고, 그래서 다음과 같이 복사 된 로그 파일을 가리 키도록 변경 수 :

ALTER DATABASE NewAlias MODIFY FILE (NAME = db_log, FILENAME='c:\site2\App_Data\db_log.ldf')