1.13 Rescue Plan

In Exadata releases earlier than 12.2.1.1.0, after a storage server or database server rescue, you need to re-run multiple commands to configure items such as IORM plans, thresholds, and storage server and database server notification setting.

In Oracle Exadata release 12.2.1.1.0, there is a new attribute called rescuePlan for the cell and dbserver objects. When you are done configuring your database servers and storage servers, you should save the value of the rescuePlan attribute to a file. The file should be saved to a remote server because the data on the rescued server will be erased in the event of a rescue. After you rescue the server, you can retrieve the file from the remote server and run the file to restore the settings. See Example 3 below.

For security reasons, the rescue plan does not include configurations that require a password.

Example 1-9 Rescue Plan for a Storage Cell

The rescuePlan attribute for a storage server could look like this:

$ cellcli -e list cell attributes rescuePlan

CREATE ROLE "admin"

GRANT PRIVILEGE all actions ON diagpack all attributes WITH all options TO ROLE "admin"

CREATE ROLE "diagRole"

GRANT PRIVILEGE download ON diagpack all attributes WITH all options TO ROLE "diagRole"

GRANT PRIVILEGE create ON diagpack all attributes WITH all options TO ROLE "diagRole"

GRANT PRIVILEGE list ON diagpack all attributes WITH all options TO ROLE "diagRole"

ALTER CELL accessLevelPerm="remoteLoginEnabled", diagHistoryDays="7", metricHistoryDays="7", notificationMethod="mail,snmp",
 notificationPolicy="warning,critical,clear", snmpSubscriber=((host="localhost", port=162, community="public", type=asr)), 
 bbuLearnCycleTime="2016-10-17T02:00:00-07:00", bbuLearnSchedule="MONTH 1 DATE 17 HOUR 2 MINUTE 0", 
 alertSummaryStartTime="2016-09-21T17:00:00-07:00", alertSummaryInterval=weekly, 
 hardDiskScrubInterval=biweekly, hardDiskScrubFollowupIntervalInDays="14"

ALTER IORMPLAN objective=basic

Example 1-10 Rescue Plan for a Database Server

The rescuePlan attribute for a database server could look like this:

$ dbmcli -e list dbserver attributes rescuePlan

CREATE ROLE "listdbserverattrs"

GRANT PRIVILEGE list ON dbserver ATTRIBUTES bbuStatus, coreCount WITH all options TO ROLE "listdbserverattrs"

ALTER DBSERVER diagHistoryDays="7", metricHistoryDays="7", bbuLearnSchedule="MONTH 1 DATE 17 HOUR 2 MINUTE 0", 
 alertSummaryStartTime="2016-09-26T08:00:00-07:00", alertSummaryInterval=weekly, pendingCoreCount="128" force

Example 1-11 Creating a Rescue Plan script for a cell

The following command stores the commands in the rescuePlan attribute to a file called rescue.cli located on a remote server.

$ cellcli -e list cell attributes rescuePlan >& /location/on/remote/server/rescue_cell.cli

If you need to rescue the server, you can run the script after the server rescue to restore the settings. The following command runs the rescue_cell.cli file using the CellCLI start command:

$ cellcli -e start /location/on/remote/server/rescue_cell.cli

Example 1-12 Creating a Rescue Plan script for a database server

The following command stores the commands in the rescuePlan attribute to a file called rescue_db.cli located on a remote server.

$ dbmcli -e list dbserver attributes rescuePlan >& /location/on/remote/server/rescue_db.cli

If you need to rescue the server, you can run the script after the server rescue to restore the settings. The following command runs the rescue_cell.cli file using the CellCLI start command:

$ dbmcli -e start /location/on/remote/server/rescue_db.cli