데이터베이스 응용 프로그램 사용자 구성
데이터베이스 설치 사용자는 데이터베이스 스키마를 작성하고 필요한 데이터를 로드하는 데 사용됩니다. 데이터베이스 응용 프로그램 사용자는 Windchill에서 트랜잭션을 실행합니다.
설치하는 동안 데이터베이스 응용 프로그램 사용자를 작성하지 않았으며 사용할 의도가 없는 경우에는 이 단원의 단계를 생략해도 됩니다. 하지만 Windchill Business Reporting과 같은 특정 모듈에는 데이터베이스 응용 프로그램 사용자가 필요합니다(설치 중 사용자를 작성하지 않은 경우에도 필요). 이러한 시나리오에서는 다음 절차를 완료해야 합니다.
PTC Solution Installer를 사용하여 Windchill 솔루션을 설치할 때 데이터베이스 응용 프로그램 사용자를 작성한 경우 구성을 완료하려면 다음 단계를 수행하십시오.
1. 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
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_10M0XX, WindchillAppRole_10M0XX). 이렇게 하면 이름을 고유하게 식별하고 대상 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 셸에서 다음 명령을 실행하여 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
7. Windchill 및 관련 서비스를 시작합니다. 메소드 서버 출력에서 데이터베이스 연결에 <WINDCHILL_APP_USER_NAME>이라는 데이터베이스 응용 프로그램 사용자 이름이 사용되었는지 확인합니다.
SQL Server
• Cognos에 대한 데이터베이스 작성
1. 데이터베이스 폴더를 마우스 오른쪽 버튼으로 클릭하고 새 데이터베이스를 선택합니다.
a. 새 데이터베이스 대화 상자의 일반 탭에 대상 데이터베이스의 의미 있는 이름을 입력합니다.
b. 옵션 탭을 클릭하고 데이터 정렬 드롭다운 목록을 클릭하고 적절한 데이터 정렬을 선택합니다.
a. Cognos는 해당 데이터베이스를 SQL_Collation으로 구성해야 합니다.
▪ SQL Server 2008 R2: SQL_Latin1_General_CP1_CI_AS
▪ SQL Server 2012: Latin1_General_100_CI_AS
c. 확인을 클릭하여 데이터베이스를 작성합니다.
d. 데이터베이스 폴더를 마우스 오른쪽 버튼으로 클릭하고 새로 고침을 선택하여 새로 작성된 데이터베이스를 봅니다.
2. SSMS(SQL Server Management Studio)에서 새 질의 창을 열고 다음 문을 사용자 'sa'로 실행하고, <DBNAME> 변수를 새로 작성된 데이터베이스 이름 (대/소문자 구분)으로 대체합니다.
use [master]goALTER DATABASE [<DBNAME>] SET READ_COMMITTED_SNAPSHOT ONONgo
3. SSMS에서 다른 새 질의 창을 관리 사용자 'sa'로 열고, 변수 <DBNAME>을 새로 작성된 데이터베이스로 대체한 후 다음 코드 세그먼트를 실행하여 이 새 데이터베이스에서 로그인, 사용자 및 스키마를 작성합니다.
USE [master]
GOCREATE LOGIN [<DBNAME>] WITH PASSWORD=N’<DBNAME>’, DEFAULT_DATABASE=[<DBNAME>],CHECK_EXPIRATION=OFF,CHECK_POLICY=OFFGOUSE [<DBNAME>]GOCREATE USER [<DBNAME>] FOR LOGIN [<DBNAME>]GOEXEC sp_addrolemember N’db_owner’, N’<DBNAME>’GOCREATE SCHEMA [<DBNAME>] AUTHORIZATION [<DBNAME>]GOALTER USER [<DBNAME>] WITH DEFAULT_SCHEMA=[<DBNAME>]GO
|
이 경우 간단하게 하기 위해 데이터베이스 사용자 이름 및 암호를 데이터베이스 이름과 동일하게 설정합니다.
|
4. Windchill 셸에서 다음 명령을 실행하여 Windchill db.properties 파일을 적절한 값으로 수정합니다.
|
작성된 Cognos 데이터베이스 사용자 이름은 <DBNAME> 대신 다음 명령을 실행하는 동안 사용해야 합니다.
|
◦ xconfmanager -s wt.pom.dbUser=<DBNAME> -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
5. Windchill 및 관련 서비스를 시작합니다. 메소드 서버 출력에서 데이터베이스 연결에 Windchill Business Reporting 데이터베이스 사용자 이름 <DBNAME>이 사용되었는지 확인합니다.
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" -pxconfmanager -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을 구성합니다.
◦ Windchill 서버를 중지합니다.
◦ 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
◦ Windchill 서버를 시작합니다.