Upgrade the APM Database Server
Upgrade the APM Database to V4.6.10.0.0
To upgrade your APM database, you will use the APM Database Upgrade Manager application, which guides you step-by-step through the database upgrade process. The application is installed automatically when you install the APM Server.
During the database upgrade process, the APM Database Upgrade Manager will:
- Replace all the baseline database content in your database with the updated baseline APM database content.
- Compare your public database content to the baseline APM database content, and then:
- Retain any customized database content.
- Replace any database content that you have not customized in your database with the updated baseline database content.
- Record every event in the database upgrade log and display a status on the interface.
- Report errors as they occur.
- Compile the database when the upgrade is complete.
- Display a confirmation message when the database upgrade process is complete.
Upgrade failure of this kind can be safely avoided by temporarily modifying the database recovery mode to SIMPLE before running the upgrade and then resetting it to FULL after the upgrade. Your database administrator can use the following commands to modify the database recovery mode:
To put the database in SIMPLE recovery mode:
USE [master]
GO
ALTER DATABASE [mydb] SET RECOVERY SIMPLE WITH NO_WAIT
GO
To put the database in FULL recovery mode:
USE [master]
GO
ALTER DATABASE [mydb] SET RECOVERY FULL WITH NO_WAIT
GO
For more information about SQL Server database recovery modes, consult the Microsoft documentation.
Upgrade workflow
The table in this section lists the prerequisite tasks that must be completed before you initiate the database upgrade process. These instructions assume that your APM Server and APM Database Server machines meet the APM hardware and software requirements. You can use the Database Upgrade Manager to upgrade a database from any version V3.4.0 SP3 or later to your target version. Details on upgrading from a starting version that is earlier than V3.4.0 SP3 are not provided in this documentation. For more information on upgrading your database from a version earlier than V3.4.0 SP3, contact the APM Professional Services department.
Step |
Task |
Notes |
---|---|---|
1 |
Complete all steps before Upgrade the Meridium Enterprise APM Database Server in the upgrade APM to APM workflow. |
This step is required. For example, if you are upgrading your system to APM, you should upgrade your dedicated APM Server to APM before attempting to upgrade your database to the APM database version. Doing so ensures that your machine contains the latest database content file, which is a compressed folder containing the content of the baseline APM database for the target database version. |
2 |
Read and understand how your customizations will be protected during the upgrade process. |
You will need to understand how your content is protected to determine what, if any, content you should export from your pre-upgrade database before initiating the database upgrade process. |
3 |
Create a backup of your database. |
You should always back up the database before beginning any upgrade process. If any problems occur during the upgrade, the database can then be restored to its original state from the backup copy. |
4 | Log in to Oracle Server 12.2 as a privileged user, and then run the following command: SQL> GRANT SELECT ANY DICTIONARY TO <user>; ...where <user> is the name of the user that you created when you created the APM Oracle Schema on the APM Database Server. | |
5 |
Using a backup copy of your database, perform the upgrade in a test environment. |
We recommend that you perform the upgrade in a test environment so that you can assess any issues that you may encounter and correct them before upgrading your database in a production environment. |
6 | Log in to SQL*Plus (or equivalent) as the schema owner, and then run the following command: SQL> EXEC MI_DDL.CRT_SIDX_SI_MI_GEOD_GD |
This step is required only if both of the following are true:
|
7 | Perform the upgrade in the production environment. |
This step is required. Note: Before you upgrade your database in a production environment, all the issues that were discovered during the test upgrade must be resolved. Otherwise, the resulting state of your database could be unstable.
|
8 | Log in to Oracle Server 12.2 as a privileged user, and then run the following command: SQL> REVOKE SELECT ANY DICTIONARY FROM <user>; ...where <user> is the name of the user that you created when you created the APM Oracle Schema on the APM Database Server. | |
9 | If your pre-upgrade database employed Enterprise Data Filtering and you want to convert your Enterprise Data Filtering values to Site Reference Keys, consult a member of the APM Professional Services department for more information. |
This step is optional. If your pre-upgrade database did not employ Enterprise Data Filtering or you do not want to convert your existing Enterprise Data Filtering values to Site Reference Keys, then skip this step. |
10 | Modify each custom family that you do not want to be enabled for site filtering. |
During the upgrade, custom families are set to be enabled for site filtering. For each custom family that you do not want to be enabled for site filtering, you must modify the family by clearing the Enable Site Filtering check box in the Information section of the workspace for the family. |
11 | Confirm that Site Reference Keys were populated correctly during the upgrade. Modify the site assignments for records as needed. |
This step is required. To support site filtering, a APM Default site was added to the Site Reference family during the database upgrade. If the APM Default site is the only site in your Site Reference family, then records of families that are enabled for site filtering are assigned to it. If there are two sites in your Site Reference family (i.e., the APM Default site and one other site), then records of families that are enabled for site filtering are assigned to the site that is not APM Default site. During the upgrade, additional logic is used, based on a record’s specific relationships with other records, to assign a site for each record belonging to a family that is enabled for site filtering. Note:
The manner in which Site Reference Keys are spread across families to assign sites to records can vary from module to module. If you have questions about how Site Reference Keys were populated during the upgrade, contact the APM Professional Services department. If a record's site assignment could not be populated automatically during the upgrade, then the record is designated as a global record (i.e., it is not assigned to any specific site). For some records, the site assignment may need to be modified by a Super User. |
12 | Verify that users' site assignments and default sites are correct . Assign default sites to any users who do not have one. |
This step is required. To support site filtering, a APM Default site was added to the Site Reference family. If the APM Default site is the only site in your Site Reference family, then all users are assigned to it, and it is set as their default site. If there are two sites in your Site Reference family (i.e., the APM Default site and one other site), then all users are assigned to the site that is not APM Default site, and the site that is not APM Default site is set as each user's default site. If there are three or more sites in your Site Reference family (i.e., the APM Default site and two or more other sites), then no default site is set for users. If there are three or more sites in your Site Reference family, then you must verify site assignments and assign a default site for each user. |
13 | If the system from which you upgraded utilized an Oracle Database Server, then configure the APM Server for Oracle components. | This step is required only if the system from which you upgraded utilized an Oracle Database Server. |
14 | Remove database notification elements from the database. | This step is not mandatory, but is recommended by APM. |
15 | In APM, build the search index. | This step is not mandatory, but is recommended by APM. |
Terms Used in this Documentation
The following table lists the common terms that are used throughout the database upgrade documentation and their definitions.
Term |
Definition |
Examples |
---|---|---|
Database content |
Items that exist in the APM database and are displayed in some form via the APM interface. There are two versions of database content that exist in your database at a given time:
|
Queries Entity families |
Customized database content |
Baseline database content that has changed in your database. |
Added a field to a baseline datasheet. Modified an Entity family description. |
Baseline database content |
The database content as it is developed and delivered to you in the baseline APM database. |
Query in the baseline Catalog folder Equipment family |
Custom content |
Database content that exists only in your database and not in the baseline APM database. |
New query New Entity family and fields |
Pre-upgrade public version |
In the context of the upgrade process, pre-upgrade public version refers to the public version of the database content that exists in your database (prior to upgrading it to the later version). |
Query in the Public Catalog folder Datasheet (applies whether or not the query or datasheet has been customized) |
Pre-upgrade baseline version |
In the context of the upgrade process, pre-upgrade baseline version refers to the baseline version of the database content that exists in your database (prior to upgrading it to the later version). |
Query in the Baseline Catalog folder. Datasheet with no customizations
|
Content protection |
The process by which the custom changes that you apply to baseline database content are preserved during the database upgrade process. Note that, after you apply changes to baseline database content, the database content is considered customized database content. |
Field added to a baseline datasheet in your pre-upgrade database also appears in your upgraded database. |
About Customized Database Content Protection
Illustration of content protection
Consider a scenario where Datasheet A exists in the baseline APM database and you want to upgrade a database in which Datasheet A has been customized (e.g., you added a new field). The following diagram illustrates what the two databases would contain in this case, where the squares represent the unchanged baseline datasheet and the hexagon indicates the same baseline datasheet with your customizations.
When this database is upgraded to the new database version, only the baseline version of Datasheet A will be replaced in your database, as illustrated in the following diagram.
In this way, all your custom changes are retained. Likewise, however, your database will not contain the baseline changes that APM delivers in a given release . For this reason, you will want to determine which database items will be retained in your database so that you can determine which baseline changes your database will not contain after you upgrade. With that information, you can determine whether you want to:
-
Continue to use your database content as is, without APM's changes
-or-
-
Apply APM's changes manually to your customized database content.
Database content replacement versus protection
In general, you can assume that all the custom changes you have made to your database content will be retained in your upgraded database. In addition, you can assume that for any custom change that is protected in your database, your database will not contain any baseline changes that APM delivers for that item in a given release. In other words, if APM delivers updated changes to the baseline version of an item that you have customized in your database, you will not receive those changes because your custom changes will take precedence over the baseline changes. As a result, you should evaluate each baseline change that is delivered to determine if you want to apply those changes to your database content.
You can use the Database Comparison Tool (in pre-upgrade mode) to determine what content will be protected in your database. The output of this tool indicates:
-
The baseline APM database content that has been updated in the target version (i.e., content that includes new baseline changes from APM).
-and-
- Among the content that has been updated in the baseline APM database, that which you have customized in your pre-upgrade database.
Using a combination of the results from the Database Comparison Tool and your understanding of the content protection criteria, you can predict which baseline database content changes will not be available in your upgraded database. For example, consider the following scenario in which the Database Comparison Tool indicates that the baseline query Available Recommendations has been updated in the baseline APM database for your target version and that you have customized the Available Recommendations query in your pre-upgrade database.
In this case, you can assume that your upgraded database will contain:
-
Your public version of the Available Recommendations query with all your customizations (in the Public Catalog folder).
-
The updated baseline Available Recommendations query only in the Baseline folder.
Before you upgrade your database, you can use the Database Comparison Tool to view the specific differences between the Available Recommendations query in the baseline APM database for the target version and the same baseline query as it exists in your current version. For example, you could see that APM has added the Asset Description column to the baseline query. At this point, you can decide whether or not you want to either manually apply that change to your custom query after you upgrade or manually replace your public query with the baseline query in the Baseline folder.
Protected database content
The following table lists the types of content that exist in your database and indicates whether customizations to an existing baseline item of that type will be protected during the database upgrade process.
For items in which your customizations will not be protected during an upgrade, to maintain your customizations, you will need to export your customized items from your pre-upgrade database using the Import/Export tool, and then import them into the upgraded database. Alternatively, you can customize the items again, manually, in the upgraded database.
For some attributes of families and family fields, APM may make a change in the baseline database that will be applied to your database, regardless of whether you have customized that item or not. In these cases, the affected content will not be protected. APM will, however, communicate such changes via the release notes for that version (i.e., in the content changes section). For example, if a family caption changes in the baseline database, your database should contain this change. Therefore, if you have made changes to the same family's caption, your customization will be overwritten. You can, however, obtain the baseline content after you upgrade your database.
Baseline Database Content Type | Protected? | Notes |
---|---|---|
Family attributes (Entity and Relationship) | ||
Associated Pages |
Yes |
Associated Pages are considered one database item per family. This means that if you customize one Associated Page (of many), the database upgrade process will consider all the Associated Pages for that family as customized. |
Family description |
Yes |
None |
Family captions |
Yes |
None |
ID Template |
Yes |
None |
Family help text |
Yes |
None |
Datasheets
|
Yes |
A single datasheet is considered one database item. This means that if you customize any attribute of a datasheet, the database upgrade process will consider the entire datasheet as customized. |
Field attributes | ||
|
Yes |
The UTC property will be protected based on whether records exist for the family to which the field belongs. If records exist in a family, the field property will be protected. In other words, if APM sets the UTC property in a baseline field to True and you already have records in the family to which that field belongs, you will not receive the updated property setting automatically. |
Catalog Items | ||
Metric Views |
No |
Baseline Metric Views are always overwritten with the updated baseline Metric View. |
Queries |
Yes |
None |
Reports |
Yes |
None |
Graphs |
Yes |
None |
Security Groups | ||
Security Group caption |
Yes |
None |
Security Group ID |
Yes |
None |
Security Group description |
Yes |
None |
Security Group privileges |
No |
Baseline Security Group privileges are always overwritten with the updated baseline Security Group privileges. |
Records and links between records | ||
Records |
Yes (with some exceptions) |
After baseline records for a given family exist in your database, the records in that family will never be overwritten or updated during the database upgrade process, even if you have not customized them in any way. This means that if APM delivers updates to the existing baseline records or adds additional baseline records in a given family, you will not receive those changes by default. If this occurs, you can choose to perform an additional step to manually obtain the new records or revert your existing records to baseline. There are, however, several families whose records are not protected in this way. The following baseline families are considered recurring exceptions to the rule that all records and links are protected. This means that the database upgrade process will overwrite the baseline records in these families. In other words, all the baseline records in the following families will always be overwritten in your database with the updated baseline records:
This means that if you have customized any baseline record in one of the families in the preceding list, because all the baseline records are overwritten, your changes will be overwritten. |
Links between records |
Yes |
When the records are protected, the relationships that link the records together are also maintained with that record. |
Groups of records and links that make up a single entity (e.g., Baseline Risk Matrix) |
Yes |
A group of records and links that make up a single entity, also known as a composite entity, is treated as one entity for the purposes of the database upgrade process and content protection. After such an entity exists in your database, it will never be overwritten or updated during the database upgrade process, even if you have not customized the records and links in any way. |
State Configuration | ||
State Configuration Roles |
No |
Baseline State Configuration Roles are always overwritten with the updated baseline State Configuration Roles. |
State Configuration Role Description |
Yes |
None |
State Configuration Role Caption |
Yes |
None |
State Role Security Group assignments |
Yes |
None |
Strategy Rules and Strategies |
Yes |
None |
Other content | ||
System Codes and System Code Tables |
Yes |
None |
Preferences |
Yes |
None |
UOMs and UOM Conversion Sets |
Yes |
None |
Scheduled Items |
Yes |
None |
Rules Library Projects |
Yes |
None |
Initiate the Database Upgrade Process
About This Task
When you initiate the database upgrade process, the APM system will begin upgrading your database through a process that consists of the following steps:
- Unzipping the compressed database content folder and extracting its contents.
- Checking the extracted files against the list of baseline files to determine if all the expected files are available.
- Loading the baseline database content into your database.
- Processing each file and protecting your customized items according to the content protection process.
The following instructions assume that your dedicated APM Server already contains the version of the APM software that corresponds to the database version to which you want to upgrade your database, and that you are ready to upgrade your database in either a test or production environment.
Procedure
What To Do Next
- The next step in the APM Database Server upgrade workflow varies, depending on whether you initiated the upgrade in a test or production environment.
Configure the APM Server for Oracle Components
About This Task
When installing versions of Meridium APM prior to V4.0.0.0, you were instructed to modify the following files on the dedicated APM Server machine to bind the 64-bit .Net Framework to the Oracle.DataAccess component:
- C:\WINDOWS\Microsoft.NET\Framework64\V2.0.50727\CONFIG\machine.config
- C:\Windows\Microsoft.NET\Framework64\V4.0.30319\CONFIG\machine.config
The modifications from previous releases are no longer necessary with ODAC version 11.2.0.3 and must be removed. The following instructions provide details on removing the modifications from these files.
Procedure
What To Do Next
- Refer to the APM Database Server upgrade workflow.
Remove Database Notification Elements from the Database
About This Task
Procedure
What To Do Next
- Refer to the APM Database Server upgrade workflow.