Oracle Cloud (DBaaS) -> Oracle Cloud (DBaaS)
1. Introduction
The purpose of this Deployment guide is to demonstrate the way in which Dbvisit Standby 8.0 software can be used within the Oracle Database As A Service (DBaaS) space. In this guide, we focus on both the Primary and Standby databases hosted on DBaaS. In another document, we focus on 'On-Premise Primary' to Standby hosts on 'DBaaS'. A link that document can be found here
2. Initial Setup and Configuration
2.1 Provisioning the Severs
Connect to Oracle Cloud Dashboard
and Provision 2 Oracle Database Services as shown in the example below.
We opted for "Oracle Database Cloud Service" for Service level and have a pre-created database on each host. It was deemed faster to drop the database on the second host rather than choose the "Oracle Database Cloud Service - Virtual Image" as this does not come with binaries installed as indicated.
I generated a private and public set of key files using ssh-keygen from my local Linux machine.
oracle@dbvlab01[/home/oracle]: ssh-keygen -b 2048 -t rsa -f oraclecloud Generating public/private rsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in oraclecloud. Your public key has been saved in oraclecloud.pub. The key fingerprint is: 35:6b:e6:39:cd:06:c0:04:d9:7e:73:4d:85:80:33:ab oracle@dbvlab01.dbvisit.co.nz oracle@dbvlab01[/home/oracle]:
I could then import this file into the cloud setup in both cases.
Confirm your setup and click "create".
From the Services Tab :
Summary Details of the 2 Oracle Database Cloud Services are as follows :
Primary Server Details | Standby Server Details |
---|---|
Name: dbvcloud01 OCPUs: 1 OS: OEL6 Memory: 7.5G Storage: 150G Version: 12.1.0.2 Edition: Standard Edition Database: ORCL Dbvisit Base: /usr/dbvisit Standby Version: 8.0.12.19052 | Name: dbvcloud02 OCPUs: 1 OS: OEL6 Memory: 7.5G Storage: 150G Version: 12.1.0.2 Edition: Standard Edition Database: ORCL Dbvisit Base: /usr/dbvisit Standby Version: 8.0.12.19052 |
2.2 Preparing the Servers
Connect to each of the cloud hosts with ssh, specifying the public key uploaded when creating the service, as user opc
$ ssh -i /Users/landers/Downloads/oraclecloud opc@dbvcloud02
From here execute sudo -s to switch to the root user and create the dbvisit directory in /usr. Also vi the /etc/hosts file to reflect the IP address of the other node in each case.
[opc@dbvcloud02 ~]$ sudo -s [root@dbvcloud02 opc]# mkdir /usr/dbvisit [root@dbvcloud02 opc]# chown oracle:oinstall /usr/dbvisit [root@dbvcloud02 opc]# vi /etc/hosts
Download the latest version of Dbvisit Standby for OEL6 and SCP to each of the cloud hosts.
$ scp -i oraclecloud dbvisit-standby8.0.12-el6.zip oracle@dbvcloud01:/home/oracle dbvisit-standby8.0.12-el6.zip 100% 70MB 4.4MB/s 00:16 $ scp -i oraclecloud dbvisit-standby8.0.12-el6.zip oracle@dbvcloud02:/home/oracle dbvisit-standby8.0.12-el6.zip 100% 70MB 4.4MB/s 00:16
In order for Dbvisit Standby to communicate between the 2 hosts, and to enable access to the GUI frontend, 3 ports need to be made available. These are 7890 (Dbvnet), 7891 (Dbvagent) and 4433 (dbvserver: GUI). To do this, navigate to the summary page of each host and choose Access Rules from the menu. From here, click the "create rule" button and fill in the details. The example below shows 1 rule per port range named dbvisit_ports. It is also possible to create 1 rule per port and name them accordingly.
At this stage, these servers are ready for the next stage of installing the software.
3. Install, Configure and Run the Standby software
3.1 Installing and Configuring the Software
Unzip, Untar and the run the dbvisit installer following the instructions in the dbvisit installation guide as the user oracle.
https://dbvisit.atlassian.net/wiki/display/DS8QSG/Dbvisit+Standby+8.0+User+Guide
[oracle@dbvcloud02 ~]$ unzip dbvisit-standby8.0.12-el6.zip Archive: dbvisit-standby8.0.12-el6.zip inflating: dbvisit-standby8.0.12-el6.tar [oracle@dbvcloud02 ~]$ cd dbvisit/installer/ [oracle@dbvcloud02 installer]$ ls -lrt total 2768 -rwxr-x--- 1 oracle oinstall 2833364 May 11 02:16 install-dbvisit [oracle@dbvcloud02 installer]$ ./install-dbvisit
On the node dbvcloud02, the dbvserver (option 5) was also installed. Alternatively, a 3rd host could be configured for hosting the dbvserver. Careful to ensure during the dbvnet configuration on each node that the correct hosts are specified for source and destination. The output from the installation on node2 is shown below for reference.
----------------------------------------------------------- Welcome to the Dbvisit software installer. ----------------------------------------------------------- It is recommended to make a backup of our current Dbvisit software location (Dbvisit Base location) for rollback purposes. Installer Directory /home/oracle/dbvisit >>> Please specify the Dbvisit installation directory (Dbvisit Base). The various Dbvisit products and components - such as Dbvisit Standby, Dbvisit Dbvnet will be installed in the appropriate subdirectories of this path. Enter a custom value or press ENTER to accept default [/usr/dbvisit]: > /usr/dbvisit DBVISIT_BASE = /usr/dbvisit ----------------------------------------------------------- Component Installer Version Installed Version ----------------------------------------------------------- standby 8.0.12.19052 not installed dbvnet 2.0.12.19052 not installed dbvagent 2.0.12.19052 not installed dbvserver 2.0.12.19052 not installed ----------------------------------------------------------- What action would you like to perform? 1 - Install component(s) 2 - Uninstall component(s) 3 - Terminate Your choice: 1 Which component do you want to install? 1 - Core Components (Dbvisit Standby Cli, Dbvnet, Dbvagent) 2 - Dbvisit Standby Core (Command Line Interface) 3 - Dbvnet (Dbvisit Network Communication) 4 - Dbvagent (Dbvisit Agent) 5 - Dbvserver (Dbvisit Central Console) 6 - Exit Installer Your choice: 1 ----------------------------------------------------------- Summary of the Dbvisit STANDBY configuration ----------------------------------------------------------- DBVISIT_BASE /usr/dbvisit Press ENTER to continue ----------------------------------------------------------- About to configure DBVISIT DBVNET ----------------------------------------------------------- >>> Please specify the Local host name to be used by Dbvnet on this server. Dbvnet will be listening on the local IP Address on this server which resolve to the host name specified here. If using a cluster or virtual IP make sure the host name or alias specified here resolve to the IP address local to where dbvnet is installed. Enter a custom value or press ENTER to accept default [dbvcloud02]: > >>> Please specify the Local Dbvnet PORT to be used. Dbvnet will be listening on the specified port for incoming connections from remote dbvnet connections. Please make sure that this port is not already in use or blocked by any firewall. You may choose any value between 1024 and 65535, however the default of 7890 is recommended. Enter a custom value or press ENTER to accept default [7890]: > >>> Please specify the Remote host name to be used by Dbvnet. By default Dbvnet will use this remote hostname for any remote connections. Dbvnet must be installed and configured on the specified remote host. If using a cluster or virtual IP make sure the host name or alias specified here resolve to the IP address local to where dbvnet is installed. If you are unsure about the remote host name during installation, use the default value which will be the current local hostname. Enter a custom value or press ENTER to accept default [dbvcloud02]: > dbvcloud01 >>> Please specify the Remote Dbvnet PORT to be used. Dbvnet will connect to the remote server on this specified port. On the remote host Dbvnet will be listening on the specified port for incoming connections. Please make sure that this port is not already in use or blocked by any firewall. You may choose any value between 1024 and 65535, however the default of 7890 is recommended. Enter a custom value or press ENTER to accept default [7890]: > >>> Please specify the Dbvnet Passphrase to be used for secure connections. The passphrase provided must be the same in both the local and remote Dbvnet installations. It is used to establish a secure (encrypted) Dbvnet connections Enter a custom value: > kiwi123 ----------------------------------------------------------- Summary of the Dbvisit DBVNET configuration ----------------------------------------------------------- DBVISIT_BASE /usr/dbvisit DBVNET_LOCAL_HOST dbvcloud02 DBVNET_LOCAL_PORT 7890 DBVNET_REMOTE_HOST dbvcloud01 DBVNET_REMOTE_PORT 7890 DBVNET_PASSPHRASE kiwi123 Press ENTER to continue ----------------------------------------------------------- About to configure DBVISIT DBVAGENT ----------------------------------------------------------- >>> Please specify the host name to be used for the Dbvisit Agent. The Dbvisit Agent (Dbvagent) will be listening on this local address. If you are using the Dbvserver (GUI) - connections from the GUI will be established to the Dbvisit Agent. The Dbvisit Agent address must be visible from the Dbvserver (GUI) installation. If using a cluster or virtual IP make sure the host name or alias specified here resolve to the IP address local to where dbvnet is installed. Enter a custom value or press ENTER to accept default [dbvcloud02]: > >>> Please specify the listening PORT number for Dbvagent. The Dbvisit Agent (Dbvagent) will listening on the specified port for incoming requests from the GUI (Dbvserver). Please make sure that this port is not already in use or blocked by any firewall. You may choose any value between 1024 and 65535, however the default of 7891 is recommended. Enter a custom value or press ENTER to accept default [7891]: > >>> Please specify passphrase for Dbvagent Each Dbvisit Agent must have a passpharse specified. This passphrase does not have to match between all the servers. It will be used to establish a secure connection between the GUI (Dbvserver) and the Dbvisit Agent. Enter a custom value: > kiwi123 ----------------------------------------------------------- Summary of the Dbvisit DBVAGENT configuration ----------------------------------------------------------- DBVISIT_BASE /usr/dbvisit DBVAGENT_LOCAL_HOST dbvcloud02 DBVAGENT_LOCAL_PORT 7891 DBVAGENT_PASSPHRASE kiwi123 Press ENTER to continue ----------------------------------------------------------- About to install Dbvisit STANDBY ----------------------------------------------------------- Component standby installed. Press ENTER to continue ----------------------------------------------------------- About to install Dbvisit DBVNET ----------------------------------------------------------- Component dbvnet installed. Press ENTER to continue ----------------------------------------------------------- About to install Dbvisit DBVAGENT ----------------------------------------------------------- Component dbvagent installed. Press ENTER to continue ----------------------------------------------------------- Component Installer Version Installed Version ----------------------------------------------------------- standby 8.0.12.19052 8.0.12.19052 dbvnet 2.0.12.19052 2.0.12.19052 dbvagent 2.0.12.19052 2.0.12.19052 dbvserver 2.0.12.19052 not installed ----------------------------------------------------------- What action would you like to perform? 1 - Install component(s) 2 - Uninstall component(s) 3 - Terminate Your choice: 1 Which component do you want to install? 1 - Core Components (Dbvisit Standby Cli, Dbvnet, Dbvagent) 2 - Dbvisit Standby Core (Command Line Interface) 3 - Dbvnet (Dbvisit Network Communication) 4 - Dbvagent (Dbvisit Agent) 5 - Dbvserver (Dbvisit Central Console) 6 - Exit Installer Your choice: 5 ----------------------------------------------------------- About to configure DBVISIT DBVSERVER ----------------------------------------------------------- >>> Please specify the host name to be used for Dbvserver The Dbvisit Web Server (Dbvserver) will be listening on this local address. If using a cluster or virtual IP make sure the host name or alias specified here resolve to the IP address local to where Dbvserver is installed. If you are unsure about the remote host name during installation, use the default value which will be the current local hostname. Enter a custom value or press ENTER to accept default [dbvcloud02]: > >>> Please specify the listening port number for Dbvserver on the local server You may choose any value between 1024 and 65535. The default recommended value is 4433. Note: if you can not access this port after the installation has finished, then please double-check your server firewall settings to ensure the selected port is open. Enter a custom value or press ENTER to accept default [4433]: > ----------------------------------------------------------- Summary of the Dbvisit DBVSERVER configuration ----------------------------------------------------------- DBVISIT_BASE /usr/dbvisit DBVSERVER_LOCAL_HOST dbvcloud02 DBVSERVER_LOCAL_PORT 4433 Press ENTER to continue ----------------------------------------------------------- About to install Dbvisit DBVSERVER ----------------------------------------------------------- Component dbvserver installed. Press ENTER to continue ----------------------------------------------------------- Component Installer Version Installed Version ----------------------------------------------------------- standby 8.0.12.19052 8.0.12.19052 dbvnet 2.0.12.19052 2.0.12.19052 dbvagent 2.0.12.19052 2.0.12.19052 dbvserver 2.0.12.19052 2.0.12.19052 ----------------------------------------------------------- What action would you like to perform? 1 - Install component(s) 2 - Uninstall component(s) 3 - Terminate Your choice: 3 >>> Installation completed Install log /tmp/dbvisit_install.log.201705240214.
Version 8.0.20 has a new parameter, that of DBVSERVER_PUBLIC_HOST (parameter public_address in dbvserver.conf)
Rather than accepting the default hostname prompt here, the public-facing IPv4 address of the Cloud Host should be used. Public-facing IPv4 address that will be supplied to the Agents (Dbvagent) to be used for pushing information back to the Central Console. This is the externally resolvable address supplied to dbvagent, not an additional listener address on dbvserver itself.
Once the software has been installed on both nodes. Start the processes.
[oracle@dbvcloud01 installer]$ cd /usr/dbvisit/dbvnet [oracle@dbvcloud01 dbvnet]$ ./dbvnet -d start [oracle@dbvcloud01 dbvnet]$ cd ../dbvagent/ [oracle@dbvcloud01 dbvagent]$ ./dbvagent -d start [oracle@dbvcloud01 dbvagent]$ ps -ef|grep -i dbv oracle 6250 1 0 02:23 ? 00:00:00 ./dbvnet -d start oracle 6388 1 0 02:24 ? 00:00:00 ./dbvagent -d start
Additionally, on the standby node, start the dbvserver process
[oracle@dbvcloud02 dbvagent]$ cd ../dbvserver/ [oracle@dbvcloud02 dbvserver]$ ./dbvserver -d start [oracle@dbvcloud02 dbvserver]$ ps -ef|grep -i dbv oracle 6423 1 0 02:24 ? 00:00:00 ./dbvnet -d start oracle 6466 1 0 02:25 ? 00:00:00 ./dbvagent -d start oracle 6588 1 0 02:25 ? 00:00:00 ./dbvserver -d start
3.2 Start the GUI and Create the DDC
Start a web browser and navigate to the https://<dbvserver_host>:4433. In this case, the standby node.
Add an exception and proceed.
Enter the default username/password of admin/admin and proceed to the first screen, manage hosts.
Enter each of the hosts in turn, specifying the passphrase used at creation time.
Return to the Main Menu and then proceed on to creating the DDC
In this Guide, Oracle version 12.1.0.2 has been used and the init.ora parameter "encrypt_new_tablespaces" set to CLOUD_ONLY. This means that any new tablespaces created will be encrypted and it is prudent to copy the relevant wallet files from the primary server to the standby server. The $ORACLE_HOME/network/admin/sqlnet.ora file needs to be updated to reflect the location of these wallet files and if multiple Databases are to be installed then $ORACLE_SID should be used in the location to distinguish between wallets.
e.g.
[oracle@dbvcloud01 admin]$ cat sqlnet.ora |grep -i encryption_wallet ENCRYPTION_WALLET_LOCATION = (SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/u01/app/oracle/admin/$ORACLE_SID/tde_wallet)))
Then copy the wallet files to the standby server.
[oracle@dbvcloud01 ~]$ scp -i oraclecloud -rp /u01/app/oracle/admin/ORCL/tde_wallet oracle@dbvcloud02:/u01/app/oracle/admin/ORCL/ ewallet.p12 100% 5328 5.2KB/s 00:00 cwallet.sso 100% 5373 5.3KB/s 00:00 ewallet_2017052323241226.p12 100% 2408 2.4KB/s 00:00
This prevents the following error during the standby creation phase.
20170412 05:03:44 main::cmn_cat: RMAN-03002: failure of restore command at 04/12/2017 05:03:44 20170412 05:03:44 main::cmn_cat: ORA-19870: error while restoring backup piece /usr/tmp/dbv_ORCLCLOUD_csd_dbf_7_17s1flsu_1_1.rman 20170412 05:03:44 main::cmn_cat: ORA-19913: unable to decrypt backup
The creation of the DDC file is shown in the following steps.
Firstly Create a directory for ARCHSOURCE and ARCHDEST parameters. The former is only required in the event of a Graceful switchover when the Primary becomes a Standby database. In this example, the same location is created on each server.
[oracle@dbvcloud01 ~]$ mkdir /u01/app/oracle/dbvisit_arch [oracle@dbvcloud02 ~]$ mkdir /u01/app/oracle/dbvisit_arch
To create a DDC from the GUI. Choose the Manage Configurations Tab
Create a New Configuration. Fill out the relevant entries (as shown in the example below) the click 'Submit'
3.3 Create the Standby Database
Before Creating the Standby Database you must apply the v8 license.
This can be done either via the GUI, by pasting the key into the boxes and choosing 'license dbvisit'
Or on the command line
dbvctl -d <ddc> -l [<new_license_key>] [--force]
E.g.
[oracle@dbvcloud01 ~]$ cd /usr/dbvisit/standby/ [oracle@dbvcloud01 standby]$ ./dbvctl -d ORCL -l 4do6z-8fuai-u09m6-sjjni-eg3mm-2cuy1-k6lic ============================================================= Dbvisit Standby Database Technology (8.0.12.19052) (pid 15705) dbvctl started on dbvcloud01: Thu May 25 00:03:50 2017 ============================================================= =>Update with license key: 4do6z-8fuai-u09m6-sjjni-eg3mm-2cuy1-k6lic? <Yes/No> [Yes]: Yes >>> Dbvisit Standby License License Key : 4do6z-8fuai-u09m6-sjjni-eg3mm-2cuy1-k6lic customer_number : 1 dbname : expiry_date : 2017-06-24 product_id : 8 sequence : 1 status : VALID updated : YES ============================================================= dbvctl ended on dbvcloud01: Thu May 25 00:03:54 2017 =============================================================
3.3.1 Creating the Standby with the GUI
Choose the Create Standby Database Tab from the Home Screen.
Select your configuration, New Database and edit the SPFILE parameters if required and then check there is enough space in the Source and Dest temp locations.
Click Submit. The progress can be monitored from the resulting icon in the status bar.
3.3.2 Creating the Standby with the CLI
To Create the Standby database with the command line is shown below
[oracle@dbvcloud01 standby]$ ./dbvctl -d ORCL --csd >>> Running pre-checks please wait... done What would you like to do: 1 - Create standby database (and optionally save settings in template) 2 - Help 3 - Terminate processing Please enter your choice [1]: 1 ------------------------------------------------------------------------------- =>Do you want to use TRANSPORTABLE MEDIA to transfer the database backup to the standby server? Transportable media is an external device such as a USB drive that is first plugged into the primary server and then manually transferred to the standby site and plugged into the standby server to continue the process. It can be used for large databases or slow networks. Specifying No means the network will be used to transfer the database backup. [N]: Your input: N Is this correct? <Yes/No> [Yes]: ------------------------------------------------------------------------------- A temporary location must be specified on dbvcloud01 where the database will be backed up to first. This location must be big enough to hold RMAN backup of the whole database (3.83GB). =>Specify the location on this server: [/usr/tmp]: Your input: /usr/tmp Is this correct? <Yes/No> [Yes]: ------------------------------------------------------------------------------- A temporary location must be specified on dbvcloud02 where the database backup will be copied to before moving to specified locations. =>Specify location on remote server: [/usr/tmp]: Your input: /usr/tmp Is this correct? <Yes/No> [Yes]: The following oracle database parameters will be set in the standby database pfile or spfile: ------------------------------------------------------------------------------- SID NAME VALUE * audit_file_dest /u01/app/oracle/admin/ORCL/adump * compatible 12.1.0.2.0 * control_file_record_keep_time 30 * control_files /u02/app/oracle/oradata/ORCL/control01.ctl,/u03/app/oracle/fast_recovery_area/ORCL/control02.ctl * db_block_size 8192 * db_create_file_dest /u02/app/oracle/oradata * db_domain nzdbvisit.oraclecloud.internal * db_files 250 * db_name ORCL * db_recovery_file_dest /u03/app/oracle/fast_recovery_area * db_recovery_file_dest_size 6442450944 * db_unique_name ORCLSTBY * diagnostic_dest /u01/app/oracle * dispatchers (PROTOCOL=TCP) (SERVICE=ORCL.nzdbvisit.oraclecloud.internalXDB) * enable_pluggable_database true * encrypt_new_tablespaces CLOUD_ONLY * filesystemio_options setall * log_archive_dest_1 LOCATION=USE_DB_RECOVERY_FILE_DEST REOPEN=60 * log_buffer 67108864 * open_cursors 300 * pga_aggregate_target 1837740480 * processes 300 * remote_login_passwordfile EXCLUSIVE * sec_protocol_error_trace_action LOG * service_names ORCL.nzdbvisit.oraclecloud.internal * sga_target 2756610720 * spfile OS default * sql92_security TRUE * undo_tablespace UNDOTBS1 ------------------------------------------------------------------------------- What would you like to do: 1 - Proceed with creating the standby database 2 - Edit oracle database parameters for the standby database pfile/spfile 3 - Terminate processing Please enter your choice [1]: 1 Validating oracle database parameters... please wait =>SUCCEEDED ------------------------------------------------------------------------------- =>Create standby database template for ORCLSTBY using provided answers? [Y]: Your input: 1 Is this correct? <Yes/No> [Yes]: ------------------------------------------------------------------------------- =>Continue with creating a standby database? (If No processing will terminate, the saved template will be available for future use) [Y]: Your input: 1 Is this correct? <Yes/No> [Yes]: >>> dbvctl will now run a pre-flight check for standby database creation. An attempt will be made to create a standby (s)pfile using oracle standby database parameters, followed by trying to start the standby instance. If this step fails, then please double-check the following items before re-running dbvctl again: 1) Review the standby database parameters you have supplied and provide valid values unless a template is used. 2) Recreate the template to provide valid values for standby database parameters if a template is used. >>> Running pre-flight check for standby creation, please wait... done >>> Total database size for ORCL is 3.83GB >>> Backing up primary database... Backing up datafile 1... done Backing up datafile 3... done Backing up datafile 4... done Backing up datafile 5... done Backing up datafile 6... done Backing up datafile 7... done Backing up datafile 8... done Backing up datafile 9... done >>> Creating standby control file... done >>> Transferring backup from dbvcloud01 to dbvcloud02... Transferring /usr/tmp/dbv_ORCL_csd_dbf_1_03s536va_1_1.rman... done Transferring /usr/tmp/dbv_ORCL_csd_dbf_3_05s53709_1_1.rman... done Transferring /usr/tmp/dbv_ORCL_csd_dbf_4_07s5371c_1_1.rman... done Transferring /usr/tmp/dbv_ORCL_csd_dbf_5_09s5371u_1_1.rman... done Transferring /usr/tmp/dbv_ORCL_csd_dbf_6_0bs5372j_1_1.rman... done Transferring /usr/tmp/dbv_ORCL_csd_dbf_7_0ds5372q_1_1.rman... done Transferring /usr/tmp/dbv_ORCL_csd_dbf_8_0fs5373p_1_1.rman... done Transferring /usr/tmp/dbv_ORCL_csd_dbf_9_0hs5374f_1_1.rman... done >>> Restoring standby control files... done >>> Starting standby database ORCLSTBY on dbvcloud02 mount... done >>> Restoring datafiles on dbvcloud02... Restoring datafile 1... done Restoring datafile 3... done Restoring datafile 4... done Restoring datafile 5... done Restoring datafile 6... done Restoring datafile 7... done Restoring datafile 8... done Restoring datafile 9... done >>> Renaming standby redo logs and tempfiles on dbvcloud02... done >>> Performing checkpoint and archiving logs... done >>> Completing standby database creation... done >>> Standby database created. To complete creating standby database please run dbvctl on the primary server first, then on the standby server, to ensure the standby database is in sync with the primary database. PID:20101 TRACE:20101_dbvctl_csd_ORCL_201705250017.trc [oracle@dbvcloud01 standby]$
3.4 Performing Basic Tasks
Some examples of basic tasks are outlined below. Please refer to the online documentation for more details on each command.
Using the GUI to Send logs to the Standby Site
3.4.1 Log Gap Report
Run a log gap report from the Primary Site
[oracle@dbvcloud01 ~]$ cd /usr/dbvisit/standby/ [oracle@dbvcloud01 standby]$ ./dbvctl -d ORCL -i ============================================================= Dbvisit Standby Database Technology (8.0.12.19052) (pid 12163) dbvctl started on dbvcloud01: Thu May 25 03:06:47 2017 ============================================================= Dbvisit Standby log gap report for ORCL thread 1 at 201705250306: ------------------------------------------------------------- Destination database on dbvcloud02 is at sequence: 7. Source database on dbvcloud01 is at log sequence: 8. Source database on dbvcloud01 is at archived log sequence: 7. Dbvisit Standby last transfer log sequence: 7. Dbvisit Standby last transfer at: 2017-05-25 03:04:29. Archive log gap for ORCL: 0. Transfer log gap for ORCL: 0. Standby database time lag (DAYS-HH:MI:SS): +0:01:36. ============================================================= dbvctl ended on dbvcloud01: Thu May 25 03:06:51 2017 =============================================================
Also from the GUI
3.4.2 Log Transfer
Apply Logs at the Standby Site
3.4.3 Daemon Status
Start the Daemons for automatic send/apply from the GUI Database Actions Tab.
The "lightning bolt" icon manages the daemon processes as shown below.
When started on both sites they Log gap managed automatically and if no natural log switches have occurred, the daemon will also signal a log switch to keep the standby LAG to the desired amount. More information regarding the daemon settings can be found here in Section 4
https://dbvisit.atlassian.net/wiki/display/DS8QSG/Dbvisit+Standby+Scheduling
3.4.4 Starting Standby Database in Readonly Mode
From the Database Actions Tab choose the Database Icon. This allows the user to perform database actions on each node.
Before the Standby Database can be opened in readonly mode, there must be a log gap of 0 between the 2 systems.
Select the Standby Host, review the current status and Select Start READ ONLY.
Now, the status is Read Only for the standby database.
To switch back again. Choose Restart
Now the Standby is back in recovery mode and the logs can be applied as normal.
3.5 Performing Graceful Switchover
The following screenshots show a Graceful Switchover from one Cloud Standby to the other using the GUI. A first pre-requisite is to ensure that the daemons started earlier are not running whilst the switchover is in progress.
3.5.1 Check the Status of the Daemons
3.5.2 Graceful Switchover Icon
3.5.3 Check Log Gap is Zero and Click Submit
3.5.4 Locate the Task on the Task Bar
3.5.5 Monitor the Activity
3.5.6 Verify the New Roles within each of the Databases
Verify the new database roles within the database
[oracle@dbvcloud01 trace]$ sqlplus / as sysdba SQL*Plus: Release 12.1.0.2.0 Production on Thu Jun 1 00:38:14 2017 Copyright (c) 1982, 2014, Oracle. All rights reserved. Connected to: Oracle Database 12c Standard Edition Release 12.1.0.2.0 - 64bit Production SQL> select name, database_role from v$database; NAME DATABASE_ROLE --------- ---------------- ORCL PHYSICAL STANDBY [oracle@dbvcloud02 ~]$ sqlplus / as sysdba SQL*Plus: Release 12.1.0.2.0 Production on Thu Jun 1 00:37:58 2017 Copyright (c) 1982, 2014, Oracle. All rights reserved. Connected to: Oracle Database 12c Standard Edition Release 12.1.0.2.0 - 64bit Production SQL> select name, database_role from v$database; NAME DATABASE_ROLE --------- ---------------- ORCL PRIMARY SQL>
3.6 Activate the Standby Database
It is possible to activate the Standby Database and make it become the new Primary. This is also called failover to the standby database.
The assumption is that the original Primary site has been lost and needs to be rebuilt.
From the Central Console/GUI Choose the "Activate Standby Database Command"
3.6.1 Choose the Activate Standby Database
3.6.2 Select the Configuration
3.6.3 Monitor the Task from The Task Bar
3.6.4 Verify the Status within the Database
[oracle@dbvcloud01 trace]$ sqlplus / as sysdba SQL*Plus: Release 12.1.0.2.0 Production on Thu Jun 1 00:45:20 2017 Copyright (c) 1982, 2014, Oracle. All rights reserved. Connected to: Oracle Database 12c Standard Edition Release 12.1.0.2.0 - 64bit Production SQL> select name, database_role from v$database; NAME DATABASE_ROLE --------- ---------------- ORCL PRIMARY SQL>
3.6.5 Manage Configurations Tab Implications
Now the Manage Configurations Tab has the option to choose the hosts. This allows you to either accept the current configuration with the new Primary (old Standby site) or start again with the original Primary site and depends on the circumstances of the Activation.