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


The setup will be from Single Instance Primary Databases to Single Instance Standby Databases with Datafiles stored on standard filesystems. However the options for configuring Dbvisit Standby in the Oracle Cloud are in no way limited to this, it has simply been chosen for demonstration purposes.

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.

For the purposes of the Demo, the Backup Destination is set to None.

Confirm your setup and click "create".

From the Services Tab : 

Summary Details of the 2 Oracle Database Cloud Services are as follows :


Primary Server DetailsStandby 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.