更改关系数据库服务器或端口
在备份/恢复过程中,您可以使用新的 Oracle 数据库实例重新配置 Essbase 。本主题介绍如何更改关系数据库服务器或端口。
更改关系数据库服务器
- 停止当前运行的 Essbase 实例。
cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin ./stop.sh - 创建新的数据库
<export_user_name>用户并运行‘expdp’命令以进行方案备份。仅导出 RCUPrefix_essbase 方案。例如:
alter session set container="containername"; create user <export_user_name> identified by <password>; grant create session, create table to <export_user_name>; create or replace directory dmpdir to <export_user_name>; grant DATAPUMP_EXP_FULL_DATABASE to <export_user_name>; grant DATAPUMP_IMP_FULL_DATABASE to <export_user_name>; grant user <export_user_name> default tablespace users; alter user <export_user_name> quota unlimited on users; exit;expdp <export_user_name>/<password>@<pdbname> dumpfile=<RCUPrefix>.dmp logfile=<RCUPrefix>.log schema=<RCUPrefix>_ESSBASE directory=dmpdir - 强烈建议备份应用程序目录。如果您已经有备份,或者您的应用程序目录有许多大型应用程序,则可以跳过此步骤。
例如:
cd user_projects/applications/essbase/ tar -cvfz ~/Backup/Apps.tar.gz app/* - 针对新的 Oracle 数据库配置新的 Essbase 实例。您将有机会输入域根目录和应用程序目录路径 - 具有以下选项:
- 如果您希望重用‘ user_projects ’作为主实例,并且由于旧实例已在使用它,请在启动 Configuration Tool 之前将旧 user_projects 重命名为其他内容。
- 或者为新配置的域根目录和应用程序目录路径输入新的 'user_projects_XXX'。
注意:
在新实例启动并运行之前,不要尝试删除任何内容。例如(在域详细信息配置页面上,在其中选择域和应用程序位置):- 域名
essbase_domain - 域根
Oracle/21.4.2/Middleware/Oracle_Home/user_projects/domains - 应用程序目录
/Middleware/Oracle_Home/user_projects/applications/essbase - WebLogic 管理员帐户
...
- 完成针对新 Oracle 数据库配置新的 Essbase 实例。确保使用新的方案名称。
- 完成配置工具后,再次停止 Essbase (请参阅步骤 1)。
- 为新的 Oracle 数据库创建一个类似的 'expuser' 用户,并运行 'impdp' 命令从步骤 3 中从备份中获取的转储文件恢复数据。仅使用重新映射选项导入 RCUPrefix_essbase 方案(如果新方案具有新名称)。
例如:
alter session set container="containername"; create user <export_user_name> identified by <password>; grant create session , create table to <export_user_name>; create or replace directory dmpdir to <export_user_name>; grant DATAPUMP_EXP_FULL_DATABASE to <export_user_name>; grant DATAPUMP_IMP_FULL_DATABASE to <export_user_name>; grant user <export_user_name> default tablespace users; alter user <export_user_name> quota unlimited on users; exit;impdp expuser/<password>@<pdbname> dumpfile=<schema_name>.dmp logfile=<schema_name>.log REMAP_SCHEMA=[OLD_SCHEMA]_ESSBASE:[NEW_SCHEMA]_ESSBASE directory=dmpdir partition_options=merge table_exists_action=replace - 从备份还原应用程序目录或将其从上一个实例移动。
cd user_projects/applications/essbase/ tar xvf ~/Backup/Apps.tar - 为新实例启动 Essbase 并确保所有内容都已成功运行。由于您尚未删除任何内容,因此,如有必要,始终可以返回到先前的优秀实例。一旦一切顺利,你就可以继续前进,清理你不需要的东西。
cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin ./start.sh - 请注意,在完成新配置后,需要在 WebLogic 中手动将旧托管服务器的所有设置添加到新创建的托管服务器。
仅更改数据库服务器端口
- 停止 Essbase 服务器。
cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin./stop.sh - 将数据库服务器上的 tnsnames.ora 和 listener.ora 文件中的数据库端口更改为所需的端口,例如 1524。
- 重新启动监听程序并重新启动数据库。在 SQL 开发人员中检查连接。
- 在 Essbase 服务器上的以下位置,执行以下操作:
在 jps-config.xml 中,将端口更改为此属性中的新端口。cd <ORACLE_HOME>/user_projects/domains/essbase_domain/config/fmwconfig
在 jps-config-jse.xml 中,对引用数据库端口的属性进行类似的更改。<property name="jdbc.url" value="jdbc:oracle:thin:@(description=(address=(host=DBhost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBname)(server=dedicated)))"/><property name="jdbc.url" value="jdbc:oracle:thin:@(description=(address=(host=DBhost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBname)(server=dedicated)))"/> - 在以下位置,执行以下操作:
将数据库端口更改为以下文件中的新端口号cd <ORACLE_HOME>/user_projects/domains/essbase_domain/config/jdbcessbase_datasource-jdbc.xml
<url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>LocalSvcTblDataSource-jdbc.xml
<url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>opss-audit-jdbc.xml
<url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>opss-auditview-jdbc.xml
<url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>opss-datasource-jdbc.xml
<url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>WLSSchemaDataSource-jdbc.xml
<url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url> - 在以下位置,执行以下操作:
将以下文件中的数据库端口更改为新的端口号。cd <ORACLE_HOME>/user_projects/domains/essbase_domain/init-infostartup-plan-unsub.xml:
<jvm:value>'OCI;SERVICE=DBHost:1524/DBPDBName'</jvm:value>startup-plan.xml:
<jvm:value>'OCI;SERVICE=DBHost:1524/DBPDBName'</jvm:value> - 重新启动 Essbase。
cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin ./start.sh