データベースアプリケーションユーザーの設定
データベースインストールユーザーは、データベーススキーマを作成して必要なデータを読み込むのに使用します。データベースアプリケーションユーザーは Windchill からトランザクションを実行します。
インストール時にデータベースアプリケーションユーザーを作成しておらず、使用する予定がない場合は、このセクションの手順をスキップできます。ただし、一部のモジュールは、インストールプロセス中にデータベースアプリケーションユーザーが作成されたかどうかに関係なく、データベースアプリケーションユーザーを必要とします。このようなシナリオでは、このセクションの手順を完了する必要があります。
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_アプリケーションユーザー名> がデータベース接続として使用されていることを確認します。
Windchill ソリューションのインストール時にデータベースアプリケーションユーザーを作成しなかった場合は、PTC Solution Installer (PSI) によるソリューションのインストールが終了した後で、データベース固有のスクリプトとデータベースクライアントを使用して、データベースアプリケーションユーザーを作成できます。データベースクライアントを Windchill サーバーにインストールするか、スクリプトをコピーしてデータベースサーバーから実行する必要があります。データベースアプリケーションユーザーを手動で作成するには、次の手順に従います。
Oracle
1. Windchill シェルを開きます。
2. ディレクトリを <Windchill>\db\sql (または sql3) に変更します。スクリプトは両方のフォルダにあり、Windchill のシングルバイトまたはマルチバイト設定に依存しません。
3. Sqlplus ユーティリティを使用して、データベース管理者ユーザーとして Windchill データベースにログインします。
|
次のスクリプトを実行するユーザーには、<Windchill>\db\sql (または sql3) フォルダへの読み取り/書き込み権限が必要です。
|
4. create_wc_app_user.sql ファイルを実行してアプリケーションユーザー、データベース役割、ログイン後のトリガを作成します。
|
WindchillAppUser_<リリースバージョン> および WindchillAppRole_<リリースバージョン> など、名前に Windchill メンテナンスリリースバージョンを追加することによって、アプリケーションユーザーと役割を作成することをお勧めします。これは、名前とターゲットの 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_アプリケーションユーザー名> がデータベース接続として使用されていることを確認します。
SQL Server and Azure SQL Database
|
SQL および Azure SQL データベースをインストールする前に、SQL コマンドラインツールがインストールされていることを確認してください。
|
1. Windchill シェルを開き、ディレクトリを $WT_HOME\db\sqlServer に変更します。
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_<リリースバージョン> および WindchillAppRole_<リリースバージョン> など、名前に 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_インストールユーザー名>
◦ Windchill アプリケーションデータベースロール名: <Windchill_アプリケーションデータベースロール>
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 サーバーを起動します。