安装和升级 > Windchill 安装和配置 > 高级配置 > 配置数据库应用程序用户
  
配置数据库应用程序用户
数据库安装用户用于创建数据库架构并加载所需的数据。数据库应用程序用户可执行 Windchill 中的事务处理。
如果在安装期间不创建数据库应用程序用户,并且不打算使用该用户,则可跳过本部分中的这些步骤。然而,即使在安装过程中并未创建数据库应用程序用户,某些模块 (如 Windchill Business Reporting) 仍需要该用户。在此类情景中,您必须完成这些步骤。
如果在用“PTC 解决方案安装程序”安装 Windchill 解决方案之后创建数据库应用程序用户,则可执行下列步骤来完成配置:
1. 在 Windchill shell 中,执行下列命令来修改具有相应值的 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 解决方案之后没有创建数据库应用程序用户,则可以在“PTC 解决方案安装程序 (PSI)”完成安装解决方案之后,使用数据库特定脚本和数据库客户端来创建一个数据库应用程序用户。必须将数据库客户端安装在 Windchill 服务器上,或从数据库服务器中复制并执行脚本。使用下列步骤手动创建数据库应用程序用户:
Oracle
1. 打开 Windchill shell。
2. 将目录更改为 <Windchill>\db\sql (或 sql3)。该脚本位于两个文件夹中,并且不依赖于单字节或多字节的 Windchill 配置。
3. 使用 Sqlplus 应用程序,以数据库管理用户身份登录到 Windchill 数据库。
* 
执行下列脚本的用户必须有 <Windchill>\db\sql (或 sql3) 文件夹的读取/写入权限。
4. 执行 create_wc_app_user.sql 文件可创建应用程序用户、数据库角色和之后的登录触发器。
* 
PTC 建议通过将 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 shell 中,执行下列命令来修改具有相应值的 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
1. 打开 Windchill shell。
2. 将目录更改为 <Windchill>\db\sqlserver。
3. 执行批处理文件 D:\ptc\Windchill\db\sqlServer> create_wc_app_user.bat 可创建应用程序用户和数据库角色。
* 
执行下列脚本的用户必须有 <Windchill>\db\sqlserver 文件夹的读取/写入权限。
* 
PTC 建议通过将 Windchill 维护版本附加上诸如 WindchillAppUser_10M0XX、WindchillAppRole_10M0XX 的名称来创建应用程序用户。这有助于唯一地标识名称,并使其与目标 Windchill 版本相关联。
以下是脚本执行输出的示例:
SQL Server 主机名:<DB_HOST_NAME> SQL Server 安装名称 (仅限已命名的安装):<DB_INSTANCE_NAME> SQL Server 管理员用户名 (默认为 sa):用户 sa 的密码:manager <SA_PASSWORD> Windchill 安装数据库用户名:<WC_INSTALL_USERNAME> 用户 <WC_INSTALL_USERNAME> 的默认数据库名称:<DEFAULT_DB> Windchill 应用程序数据库角色名:<WC_APP_DATABASE_ROLE> Windchill 应用程序数据库用户名:<WC_APP_USERNAME> Windchill 应用程序数据库用户密码:<WC_APP_USER_PASSWORD>
SQL Server 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 Database User Name:

Default database name for user s:

Windchill Application Database Role Name:

Windchill Application Database User Name:

Windchill Application Database User Password:

4. 通过以该用户的身份登录到数据库中的方式,来验证是否已经正确创建应用程序用户和角色。
5. 在 Windchill shell 中,执行下列命令来修改具有相应值的 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
6. 启动 Windchill 及其相关服务。从方法服务器输出中,验证已将数据库应用程序用户名称 <WINDCHILL_APP_USER_NAME> 用于数据库连接。
对于 SQL Server Windchill 数据库应用程序用户授予查看定义
对于使用 SQL 服务器 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 shell 中执行以下语句来更新 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 shell 执行以下语句来更新 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 服务器。