데이터베이스 응용 프로그램 사용자 구성
데이터베이스 설치 사용자는 데이터베이스 스키마를 작성하고 필요한 데이터를 로드하는 데 사용됩니다. 데이터베이스 응용 프로그램 사용자는 Windchill에서 트랜잭션을 실행합니다.
설치하는 동안 데이터베이스 응용 프로그램 사용자를 작성하지 않았으며 사용할 의도가 없는 경우에는 이 단원의 단계를 생략해도 됩니다. 하지만 Windchill Business Reporting과 같은 특정 모듈에는 데이터베이스 응용 프로그램 사용자가 필요합니다(설치 중 사용자를 작성하지 않은 경우에도 필요). 이러한 시나리오에서는 다음 절차를 완료해야 합니다.
PTC Solution Installer를 사용하여 Windchill 솔루션을 설치할 때 데이터베이스 응용 프로그램 사용자를 작성한 경우 구성을 완료하려면 다음 단계를 수행하십시오.
1. Windchill 셸에서 다음 명령을 실행하여 Windchilldb.properties 파일을 적절한 값으로 수정합니다.
◦ xconfmanager -s wt.pom.dbUser=<WINDCHILL_APP_USER_NAME> -t "db/db.properties" -p
◦ xconfmanager -s wt.pom.dbPassword=<WINDCHILL_APP_USER_PASSWORD> -t "db/db.properties" -p
◦ xconfmanager -s wt.pom.dbSchemaUser=<WINDCHILL_INSTALL_USERNAME> -t "db/db.properties" -p
2. Windchill 및 관련 서비스를 시작합니다. 메서드 서버 출력에서 데이터베이스 연결에 <WINDCHILL_APP_USER_NAME>이라는 데이터베이스 응용 프로그램 사용자 이름이 사용되었는지 확인합니다.
Windchill 솔루션을 설치할 때 데이터베이스 응용 프로그램 사용자를 작성하지 않은 경우, PSI(PTC Solution Installer)가 솔루션 설치를 완료한 후 데이터베이스 관련 스크립트와 데이터베이스 클라이언트를 사용하여 데이터베이스 응용 프로그램 사용자를 작성할 수 있습니다. 데이터베이스 클라이언트가 Windchill 서버에 설치되어 있거나 데이터베이스 서버에서 스크립트를 복사하여 실행해야 합니다. 다음 단계에 따라 수동으로 데이터베이스 응용 프로그램 사용자를 작성합니다.
Oracle
1. Windchill 셸을 엽니다.
2. 디렉터리를 <Windchill>\db\sql(또는 sql3)로 변경합니다. 스크립트는 이 두 폴더 모두에 있으며 싱글바이트 또는 멀티바이트 Windchill 구성에 종속되지 않습니다.
3. Sqlplus 유틸리티를 사용하여 데이터베이스 관리 사용자로 Windchill 데이터베이스에 로그인합니다.
|
다음 스크립트를 실행하려면 <Windchill>\db\sql(또는 sql3) 폴더에 대한 읽기/쓰기 권한이 있어야 합니다.
|
4. create_wc_app_user.sql 파일을 실행하여 응용 프로그램 사용자, 데이터베이스 역할 및 로그인 후 트리거를 작성합니다.
|
이름에 Windchill 유지보수 릴리즈 버전을 추가하여 응용 프로그램 사용자 및 역할을 작성하는 것이 좋습니다(예: WindchillAppUser_release_version, WindchillAppRole_release_version). 이렇게 하면 이름을 고유하게 식별하고 대상 Windchill 버전과의 상호 연관성을 쉽게 파악할 수 있습니다.
|
다음은 스크립트 실행 출력의 예입니다.
Windchill Install database User Name: <WINDCHILL_INSTALL_USERNAME>
Windchill Application database Role Name: <WINDCHILL_APP_DATABASE_ROLE>
Windchill Application database User Name: <WINDCHILL_APP_USERNAME>
Windchill Application database User Password: <WINDCHILL_APP_USER_PASSWORD>
Default Tablespace Name: USERS
Temporary Tablespace Name: TEMP
5. 해당 사용자로 데이터베이스에 로그온하여 응용 프로그램 사용자와 역할이 제대로 작성되었는지 확인합니다.
6. Windchill 셸에서 다음 명령을 실행하여 Windchilldb.properties 파일을 적절한 값으로 수정합니다.
◦ xconfmanager -s wt.pom.dbUser=<WINDCHILL_APP_USER_NAME> -t "db/db.properties" -p
◦ xconfmanager -s wt.pom.dbPassword=<WINDCHILL_APP_USER_PASSWORD> -t "db/db.properties" -p
◦ xconfmanager -s wt.pom.dbSchemaUser=<WINDCHILL_INSTALL_USERNAME> -t "db/db.properties" -p
7. Windchill 및 관련 서비스를 시작합니다. 메서드 서버 출력에서 데이터베이스 연결에 <WINDCHILL_APP_USER_NAME>이라는 데이터베이스 응용 프로그램 사용자 이름이 사용되었는지 확인합니다.
SQL Server and Azure SQL Database
|
SQL 및 Azure SQL 데이터베이스를 설치하기 전에 SQL 명령줄 도구가 설치되어 있는지 확인합니다.
|
1. $WT_HOME\db\sqlServer 셸을 열고 디렉터리를 Windchill로 변경합니다.
2. 응용 프로그램 사용자 및 데이터베이스 역할을 작성하려면 다음 배치 파일을 실행합니다.
Windows: <WT_HOME>\Windchill\db\sqlServer>create_wc_app_user.bat
Linux: <WT_HOME>/Windchill/db/sqlServer>create_wc_app_user.sh
D:\ptc\Windchill\db\sqlServer> create_wc_app_user.bat
이 스크립트를 실행하는 사용자에게 $WT_HOME\db\sqlServer 폴더에 대한 읽기/쓰기 권한이 있어야 합니다.
|
WindchillAppUser_release_version 및 WindchillAppRole_release_version와 같이 이름에 Windchill MOR 버전을 추가하여 앱 사용자 및 역할을 작성하는 것이 좋습니다. 이 방법을 사용하면 고유 이름을 식별하고 대상 Windchill 버전과 연관시킬 수 있습니다.
|
스크립트 실행 출력의 예:
SQL Server Host Name: <DB HOST Name>
SQL Server Instance Name (for Named Instance only):
SQL Server Admin User name (default is sa):
Password for user sa:
Windchill Install Database User Name: <WINDCHILL_INSTALL_USERNAME>
Default database name for user s:
Windchill Application Database Role Name: <WINDCHILL_APP_DATABASE_ROLE>
Windchill Application Database User Name: <WINDCHILL_APP_USER_NAME>
Windchill Application Database User Password: <WINDCHILL_APP_USER_PASSWORD>
해당 사용자로 데이터베이스에 로그온하여 응용 프로그램 사용자와 역할이 정확하게 작성되었는지 확인합니다.
3. Windchill 셸에서 다음 명령을 실행하여 Windchill db.properties 파일을 적절한 값으로 수정합니다.
xconfmanager -s wt.pom.dbUser=<WINDCHILL_APP_USER_NAME> -t "db/db.properties" -p
xconfmanager -s wt.pom.dbPassword=<WINDCHILL_APP_USER_PASSWORD> -t "db/db.properties" -p
xconfmanager -s wt.pom.dbSchemaUser=<WINDCHILL_INSTALL_USERNAME> -t "db/db.properties" –p
4. Windchill 및 관련 서비스를 시작합니다.
메서드 서버 출력에서 데이터베이스 연결에 데이터베이스 응용 프로그램 사용자 이름 <WINDCHILL_APP_USER_NAME>이 사용되었는지 확인합니다.
SQL Server Windchill 데이터베이스 응용 프로그램 사용자를 위한 보기 정의 제공
SQL Server Windchill 데이터베이스 응용 프로그램 사용자를 사용하는 시스템의 경우 이 데이터베이스 역할에 "보기 정의" 권한을 부여해야 합니다. SQL Server Management Studio 응용 프로그램에서 또는 다음과 같이 SQLCMD를 사용하여 대상 데이터베이스 역할의 등록 정보 대화 상자에서 이 권한을 부여할 수 있습니다.
sqlcmd -S <SQLSERVER_INSTANCE> -U sa -{ <SA_Password> -d <Windchill_DB> -Q
"GRANT VIEW DEFINITION ON SCHEMA::[WINDCHILL_SCHEMA_USER] TO [WINDCHILL_APP_DB_ROLE]"
예:
D:\sqlcmd -S host01 -U user1 -P pass1 -d test1 -Q "GRANT VIEW DEFINITION ON
SCHEMA::[test1] TO [test1_role]"
데이터베이스 응용 프로그램 사용자를 사용하여 구성한 경우 Windchill 컴포넌트 또는 기능 추가
데이터베이스 응용 프로그램 사용자를 사용하여 Windchill 설치를 구성했으며 새 Windchill 기능 또는 컴포넌트를 추가하려는 경우 이로 인해 스키마가 변경되면 다음 단계를 따라야 합니다.
1. 데이터베이스 설치 사용자를 사용하여 Windchill을 구성합니다.
◦ Windchill 서버를 중지합니다.
◦ Windchill 셸에서 다음 문을 실행하여 Windchill 데이터베이스 설치 사용자가 반영되도록 Windchill 데이터베이스 등록 정보를 업데이트합니다.
xconfmanager -s wt.pom.dbUser=< WINDCHILL_INSTALL_USERNAME > -t "db/db.properties" -p
xconfmanager -s wt.pom.dbPassword=<WINDCHILL_INSTALL_PASSWORD> -t "db/db.properties" -p
◦ Windchill 서버를 시작합니다.
2. 새 기능 또는 컴포넌트를 Windchill 설치에 추가합니다.
3. Oracle 데이터베이스에만 해당: 새로 작성한 데이터베이스 객체에 대한 액세스 권한을 부여합니다.
◦ Sqlplus를 사용하여 데이터베이스 관리 사용자로 데이터베이스에 로그인한 후 <WT_HOME>/db/sql/update_wc_app_role_privs.sql 스크립트를 실행하여 새 스키마 객체에 대한 권한을 부여합니다.
4. 메시지가 표시되면 다음 값을 제공합니다.
◦ Windchill 데이터베이스 설치 사용자 이름: <WINDCHILL_INSTALL_USERNAME>
◦ Windchill 응용 프로그램 데이터베이스 역할 이름: <WINDCHILL_APP_DATABASE_ROLE>
5. 데이터베이스 응용 프로그램 사용자를 사용하여 Windchill을 구성합니다.
a. Windchill 서버를 중지합니다.
b. Windchill 셸에서 다음 문을 실행하여 Windchill 데이터베이스 설치 사용자가 반영되도록 Windchill 데이터베이스 등록 정보를 업데이트합니다.
xconfmanager -s wt.pom.dbUser=< WINDCHILL_APP_USER_NAME> -t "db/db.properties"
?pxconfmanager -s wt.pom.dbPassword=<WINDCHILL_APP_USER_PASSWORD> -t
"db/db.properties" -p
c. Windchill 서버를 시작합니다.