다음을 통해 공유


마이그레이션 도구 구성

 

적용 대상: Project Server 2010

마지막으로 수정된 항목: 2015-03-09

이 문서에서는 Microsoft Office Project Server 2003 데이터를 Microsoft Office Project Server 2007로 마이그레이션하도록 마이그레이션 도구에서 사용하는 초기화(.ini) 파일을 구성하는 방법을 설명합니다. 또한 Project Server 2003 데이터베이스에서 마이그레이션 구성 파일에 포함할 특정 상태의 프로젝트를 검색하는 데 사용할 몇 가지 SQL 쿼리를 제공합니다.

이 문서의 내용

  • 마이그레이션 구성 파일 개요

  • 마이그레이션 구성 매개 변수

  • 마이그레이션 구성 파일의 예

  • Project Server 2003 데이터베이스에서 프로젝트 쿼리

마이그레이션 구성 파일 개요

일반적으로 다음 명령줄과 유사한 명령줄을 사용하여 마이그레이션 도구를 호출합니다.

D:\Program Files\Microsoft Office\OFFICE12>P12MigrationTool.exe -c d:\migration\ProjectServer2007Migrate.ini

마이그레이션 도구를 실행하기 전에 먼저 텍스트 편집기에서 마이그레이션 구성 파일을 수동으로 편집해야 합니다. 이 파일은 업그레이드 로그 파일의 위치, 마이그레이션할 프로젝트, Office Project Server 2007 데이터베이스가 포함될 Microsoft SQL Server를 실행하는 컴퓨터의 위치 등을 지정하는 매개 변수를 구성합니다.

ProjectServer2007Migrate.ini.sample이라는 예제 마이그레이션 구성 파일이 마이그레이션 도구와 동일한 디렉터리에 설치됩니다. 이 예제 파일을 올바른 구성 매개 변수로 업데이트한 다음 마이그레이션 도구를 실행할 때 이 예제 파일을 가리킬 수 있습니다. 예제 파일에는 각 매개 변수에 대해 사용할 수 있는 구성 옵션을 설명하는 내용이 포함되어 있습니다.

다음 섹션에서는 마이그레이션 구성 파일에 대해 좀 더 자세히 설명합니다.

마이그레이션 구성 매개 변수

다음은 마이그레이션 구성 파일에서 구성할 수 있는 매개 변수입니다.

매개 변수 설명

[General]

일반 구성 섹션입니다. 이 섹션의 매개 변수는 아래에 나열되어 있습니다.

BatchName=

마이그레이션 도구를 여러 번 실행할 수 있습니다(예: 프로젝트를 일괄적으로 마이그레이션하는 경우). 따라서 마이그레이션 도구를 실행할 때마다 고유한 이름을 지정합니다. 마이그레이션 도구를 실행할 때마다 생성되는 로그 파일은 지정된 BatchName 매개 변수에 따라 이름이 정해집니다. 고유한 이름을 지정하지 않을 경우 생성되는 로그 파일이 이전 로그 파일을 덮어씁니다.

LogFileNamePrefix=

마이그레이션 로그 파일의 접두사를 식별합니다. 로그 파일 이름은 LogFileNamePrefix와 마이그레이션의 시작 시기를 지정하는 타임스탬프가 결합되어 지정됩니다. 예를 들어 로그 파일 이름이 batch1-20060314-1542.log인 경우 다음 사항을 알 수 있습니다.

  • LogFileNamePrefix=batch1

  • 이 로그에 해당하는 마이그레이션 실행은 2006년 3월 14일 오후 3시 42분에 시작되었습니다.

접두사를 로그 파일 이름에 적용할 수 있는 기능은 점진적 마이그레이션 방법과 같이 여러 번 마이그레이션하는 경우에 유용할 수 있습니다.

LogFilePath=

마이그레이션 도구에 의해 생성된 로그 파일의 경로를 식별합니다. 마이그레이션 도구는 로그 파일에 자세한 정보를 기록합니다. 로그 파일은 마이그레이션 도구와 관련된 문제 해결에 필요한 가장 주요한 정보입니다. 마이그레이션 도구가 로그 파일에 기록을 할 수 없는 경우에는 실행이 중지되므로 마이그레이션 실행에 관한 자세한 내용은 항상 로그 파일을 참조할 수 있습니다.

MigrateAll=

Save: Project Server 2003의 모든 프로젝트가 Office Project Server 2007로 마이그레이션되지만 게시되지는 않습니다.

Publish: Project Server 2003의 모든 프로젝트가 Office Project Server 2007로 마이그레이션되며 Project Server 2003에 게시된 프로젝트가 Office Project Server 2007에 자동으로 게시됩니다.

MigrateAll 매개 변수를 무시하려면 세미콜론을 사용하여 MigrateAll 줄을 주석으로 처리합니다. 그렇게 하면 마이그레이션 도구를 실행해도 프로젝트가 마이그레이션되지 않습니다.

참고

최상의 마이그레이션 도구 실행 방법을 따라 비 프로젝트 데이터(Enterprise Global 서식 파일, Enterprise 자원, Project Web Access 데이터)를 마이그레이션한 후에 프로젝트를 마이그레이션하도록 선택한 경우에는 MigrateAll 매개 변수를 주석 처리합니다. 또한 [Project Names to Save and Publish][Project Names to Publish] 섹션에 프로젝트가 지정되지 않도록 확인해야 합니다.

중요

MigrateAll= 설정은 [Project Names to Save and Publish] 또는 [Project Names to Publish] 섹션에 프로젝트 이름이 지정된 경우 무시됩니다.

FixUpSecurityCategories=

FixUpSecurityCategoriesYes로 설정하면 프로젝트가 마이그레이션된 후 자동으로 보안 종류에 추가됩니다. No로 설정하면 프로젝트가 마이그레이션된 후에 어떠한 보안 종류에도 추가되지 않습니다. 일반적으로 Office Project Server 2007의 종류가 Project Server 2003의 종류와 많이 다를 경우 프로젝트를 보안 종류에 수동으로 추가하려면 이 정책을 No로 설정합니다.

StopProjectMigrationIfStatusUpdatesPending=

기본적으로 StopProjectMigrationIfStatusUpdatesPending 값은 Yes입니다. Yes로 설정되면 보류 중인 업데이트가 있는 프로젝트는 마이그레이션되지 않습니다. 이 설정을 No로 지정하면 보류 중인 업데이트가 있는 프로젝트도 모두 마이그레이션됩니다. No 옵션은 보류 중인 업데이트가 있어도 고객이 프로젝트를 마이그레이션하려는 경우에 유용합니다. 마이그레이션해야 할 오래된 프로젝트가 있지만 이러한 프로젝트에 대해 보류 중인 업데이트를 처리할 활성 프로젝트 관리자가 없는 경우를 예로 들 수 있습니다.

NeverPublishMasterProjects=

기본적으로 NeverPublishMasterProjects의 값은 Yes로 설정됩니다. 이렇게 설정하면 마스터 프로젝트가 실수로 게시되는 일이 없습니다. 이 설정은 Project Server 2003에서 마스터 프로젝트 게시 안 함 옵션을 설정한 고객에게 유용합니다.

마이그레이션 후에 마스터 프로젝트를 게시하려면 NeverPublishMasterProjectsNo로 설정합니다. 이 설정을 지정한 경우에도 [Project Names to Save and Publish] 섹션에서 마스터 프로젝트를 수동으로 포함해야 합니다.

참고

Office Project Server 2007에서 마스터 프로젝트를 게시하면 사용 가능한 시간이 두 번 계산되지 않습니다.

[Project Names to Save]

마이그레이션 후에 저장할 프로젝트의 이름을 입력합니다. 이 섹션에서 지정한 프로젝트는 게시되지 않습니다.

참고

MSP_PROJECTS 테이블의 PROJ_NAME 열에 저장된 이름처럼 완전한 이름을 지정해야 합니다.

[Project Names to Save and Publish]

마이그레이션 후에 저장하고 게시할 프로젝트의 이름을 입력합니다.

참고

Project Server 2003에 게시된 프로젝트(확장명: .PUBLISHED)만 Office Project Server 2007에 게시할 수 있습니다. 버전이 있는 프로젝트를 지정하면 저장만 되고 게시되지는 않습니다.

참고

MSP_PROJECTS 테이블의 PROJ_NAME 열에 저장된 이름처럼 프로젝트의 완전한 이름을 지정해야 합니다.

참고

마스터 프로젝트를 지정하고 neverPublishMasterProjects=false로 설정하면 하위 프로젝트(이미 마이그레이션되었거나 해당 마이그레이션 실행 시 함께 마이그레이션되는 경우)도 자동으로 게시됩니다. Project Server 2010에서 마스터 프로젝트를 게시하면 사용 가능한 시간이 두 번 계산되지 않습니다.

[Excluded Project Names]

마이그레이션 중에 명시적으로 제외할 프로젝트를 지정합니다. 일반적으로 이 옵션은 프로젝트 전부가 아니라 대부분을 마이그레이션하려는 경우에 MigrateAll 설정과 함께 사용합니다.

참고

MSP_PROJECTS 테이블의 PROJ_NAME 열에 저장된 이름처럼 프로젝트의 완전한 이름을 지정해야 합니다.

[Project Server 2007]

Office Project Server 2007 구성 섹션입니다. 이 섹션의 매개 변수는 아래에 나열되어 있습니다.

Project2007PWAServer=

Microsoft Project Web App URL을 입력합니다(예: Project2007PWAServer=http://Project2007PWAServer/pwa).

Project2007SQLServer=

Office Project Server 2007 데이터베이스를 호스팅하는 SQL Server의 인스턴스 이름을 입력합니다.

중요

기본적으로 Project Server 2003 데이터베이스도 Office Project Server 2007 인스턴스와 동일한 SQL Server 인스턴스의 일부여야 합니다. 그렇게 하려면 Office Project Server 2007 데이터베이스를 호스팅하는 SQL Server의 인스턴스로 Project Server 2003 데이터베이스를 백업하고 복원해야 합니다. 이로 인해 사용자가 많은 제한을 받는 경우 [Project Server 2003] 섹션의 Project2003LinkedSQLServer 속성을 참조하십시오.

DraftDB =

Office Project Server 2007 임시 데이터베이스의 이름을 입력합니다.

PublishedDB =

Office Project Server 2007의 게시된 데이터베이스 이름을 입력합니다.

[Project Server 2003]

Project Server 2003 구성 섹션입니다. 이 섹션의 매개 변수는 아래에 나열되어 있습니다.

Project2003ProjectTablesDB =

Project Server 2003 데이터베이스를 단일 데이터베이스 구성(분할 데이터베이스 구성과 반대)으로 설정한 경우 이 구성 설정과 그 다음에 나오는 Project2003WebTablesDB= 설정에 데이터베이스 이름을 입력합니다.

참고

마이그레이션 도구는 SQL Server Analysis Services 큐브 테이블을 마이그레이션하지 않습니다. 마이그레이션 후에 큐브를 다시 작성해야 합니다.

Project2003WebTablesDB=

Project Server 2003 데이터베이스가 분할 데이터베이스 구성에 있는 경우 웹 테이블 데이터베이스의 이름을 입력합니다. 위에서 설명한 대로 Project Server 2003이 단일 데이터베이스 구성에 속하는 경우 이 설정과 Project2003ProjectTablesDB= 설정에 데이터베이스 이름을 입력합니다.

Project2003LinkedSQLServer=SQLServerName

기본적으로 이 설정은 사용되지 않고 Project2003LinkedSQLServer= 설정은 주석 처리됩니다. 이 매개 변수를 지정하지 않으면 마이그레이션 도구는 Project 2003 데이터베이스가 Office Project Server 2007 SQL Server를 호스팅하는 컴퓨터에 있다고 간주합니다. Project 2003 데이터베이스가 있는 SQL Server 컴퓨터가 Office Project Server 2007 데이터베이스를 호스팅하는 컴퓨터에 있을 수 없는 경우 이 설정을 사용하여 Project Server 2003 데이터베이스가 있는 컴퓨터를 지정할 수 있습니다. 그러나 이 설정을 적용하려면 Project Server 2003 데이터베이스를 Office Project Server 2007 SQL Server에 연결된 서버로 추가해야 합니다. SQL 연결 서버의 연결을 구성하려면 마이그레이션 전 작업 문서 SQL Server에서 연결된 서버 구성을 참조하십시오.

마이그레이션 구성 파일의 예

다음은 구성된 마이그레이션 구성 파일의 예입니다.

[General]
LogFilePath=C:\ProjectServer2007Migration
LogFileNamePrefix=Batch1 
MigrateAll=Publish
FixUpSecurityCategories=yes
StopProjectMigrationIfStatusUpdatesPending=yes
NeverPublishMasterProjects=yes
[Project Names to Save]
Project1.published
Project2.Target
[Project Names to Save and Publish]
Project3.Published
Project4.Published
[Excluded Project Names]
Project5.Published 
Project6.Target 
[Project Server 2007]
Project2007PWAServer=http://Project2007pwaserver/pwa
Project2007SQLServer=Project2007sqlserver
DraftDB=Project2007ProjectServerDraft
PublishedDB=Project2007ProjectServerPublished
[Project Server 2003]
Project2003ProjectTablesDB=Project2003ProjDB
Project2003WebTablesDB=Project2003WebDB
;Project2003LinkedSQLServer=LinkedSQLServerName

참고

마이그레이션 도구와 함께 설치되는 마이그레이션 구성 파일에는 사용 가능한 구성 옵션을 설명하는 내용이 포함되어 있습니다. 이 설명은 파일을 제대로 구성할 수 있도록 도와 줍니다. 파일을 구성한 후에도 설명을 그대로 유지할 수 있습니다.

Project Server 2003 데이터베이스에서 프로젝트 쿼리

이 섹션에서 보여 주는 SQL Server 스크립트는 Project Server 2003 데이터베이스에서 마이그레이션 구성 파일의 다음 섹션 중 하나에 포함해야 할 프로젝트를 검색하는 데 매우 유용합니다.

  • [Project Names to Save]

  • [Project Names to Save and Publish]

  • [Excluded Project Names]

  • 필요한 경우 쿼리에서 반환된 프로젝트 이름을 마이그레이션 구성 파일의 해당 섹션으로 복사할 수 있습니다.

아직 시작하지 않은 프로젝트

SELECT p.PROJ_NAME FROM dbo.MSP_PROJECTS p

INNER JOIN dbo.MSP_TASKS t ON (t.PROJ_ID = p.PROJ_ID AND t.TASK_UID = 0)

WHERE p.PROJ_TYPE = 0 AND t.TASK_PCT_COMP = 0 AND t.TASK_PCT_WORK_COMP = 0

완료된 프로젝트

SELECT p.PROJ_NAME FROM dbo.MSP_PROJECTS p

INNER JOIN dbo.MSP_TASKS t ON (t.PROJ_ID = p.PROJ_ID AND t.TASK_UID = 0)

WHERE p.PROJ_TYPE = 0 AND t.TASK_PCT_COMP = 100 AND t.TASK_PCT_WORK_COMP = 100

아직 완료되지 않은 프로젝트

SELECT p.PROJ_NAME FROM dbo.MSP_PROJECTS p

INNER JOIN dbo.MSP_TASKS t ON (t.PROJ_ID = p.PROJ_ID AND t.TASK_UID = 0)

WHERE p.PROJ_TYPE = 0 AND (t.TASK_PCT_COMP != 100 OR t.TASK_PCT_WORK_COMP != 100)

진행 중인 프로젝트

SELECT p.PROJ_NAME FROM dbo.MSP_PROJECTS p

INNER JOIN dbo.MSP_TASKS t ON (t.PROJ_ID = p.PROJ_ID AND t.TASK_UID = 0)

WHERE p.PROJ_TYPE = 0 AND (t.TASK_PCT_COMP > 0 OR (t.TASK_STOP_DATE > t.TASK_START_DATE AND t.TASK_DUR > 0))

프로젝트 개요 코드 'Project Status'가 'Opportunity'와 같은 프로젝트

다음 쿼리에서 쿼리할 개요 코드와 값을 이 예에 사용된 "Project Status" 및 "Opportunity" 값으로 바꿉니다.

SELECT p1.PROJ_NAME

FROM dbo.MSP_FIELD_ATTRIBUTES fa

INNER JOIN dbo.MSP_ATTRIBUTE_STRINGS ats ON (fa.PROJ_ID = ats.PROJ_ID AND fa.AS_ID = ats.AS_ID AND fa.ATTRIB_ID = 206)

INNER JOIN dbo.MSP_PROJECTS p ON (p.PROJ_ID = fa.PROJ_ID AND p.PROJ_TYPE = 2)

INNER JOIN dbo.MSP_OUTLINE_CODES oc ON (p.PROJ_ID = oc.PROJ_ID AND oc.OC_FIELD_ID = fa.ATTRIB_FIELD_ID)

INNER JOIN dbo.MSP_CODE_FIELDS cf ON (cf.CODE_FIELD_ID = oc.OC_FIELD_ID AND cf.CODE_UID = oc.CODE_UID)

INNER JOIN dbo.MSP_PROJECTS p1 ON (p1.PROJ_ID = cf.PROJ_ID)

WHERE ats.AS_VALUE like '%Project Status%' AND oc.OC_CACHED_FULL_NAME like 'Opportunity'

프로젝트 서식 파일

SELECT p.PROJ_NAME FROM dbo.MSP_PROJECTS p WHERE PROJ_TYPE = 1