Dbvisit Standby upgrade 77XG server room 51

Dbvisit Standby upgrade

Upgrading to Dbvisit Standby 8.0.x

Dbvisit provides upgrade documentation which is detailed and in principle  correct but only describes the upgrade process from the viewpoint of an installation on a single host.
I upgraded Dbvisit Standby at a customer’s site with Dbvisit Standby in a running configuration with several hosts with several primary and standby databases.  I found, by trial and error and with the help of Dbvisit support, some additional steps and points of advice that I think may be of help to others.
This documents describes the upgrade process for a working environment and provides information and advice in addition to the upgrade documentation. Those additions will be clearly marked in red throughout the blog. Also the steps of the upgrade process have been rearranged in a more logical order.
It is assumed that the reader is familiar with basic Dbvisit concepts and processes.

Configuration

The customer’s configuration that was upgraded is as follows:

  • Dbvisit 8.0.14
  • 4 Linux OEL 6 hosts running Dbvisit Standby
  • 6 databases in Dbvisit Standby configuration distributed among the hosts
  • 1 Linux OEL 7 host running Dbvisit Console
  • DBIVIST_BASE: /usr/dbvisit
  • Dbvctl running in Deamon mode

Dvisit upgrade overview

The basic steps that are outlined in the Dbvisit upgrade documentation are as follows:

  1. Stop your Dbvisit Schedules if you have any running.
  2. Stop or wait for any Dbvisit processes that might still be executing.
  3. Backup the Dbvisit Base location where your software is installed.
  4. Download the latest version from www.dbvisit.com.
  5. Extract the install files into a temporary folder, example /home/oracle/8.0.
  6. Start the Installer and select to install the required components.
  7. Once the update is complete, you can remove the temporary install folder where the installer was extracted.
  8. It is recommended to run a manual send/apply of logs once an upgrade is complete.
  9. Re-enable any schedules.

During the actual upgrade we deviated significantly from this: steps were rearranged, added and changed slightly.

  1. Download the latest available version of DBVisit and make it available on all server.
  2. Make a note of the primary host for each Dbvisit standby configuration.
  3. Stop dbvisit processes.
  4. Backup the Dbvisit Base location where your software is installed.
  5. Upgrade the software.
  6. Start dbvagent and dbvnet.
  7. Upgrade de DDC configuration files.
  8. Restart dbvserver.
  9. Update DDC’s in Bbvisit Console.
  10. run a manual send/apply of logs.
  11. Restart dbvsit standby processes.

In the following sections these steps will  be explained more detailed.

Dbvisit Standby upgrade

Here follow the steps in detail that in my view should be taken for a Dbvisit upgrade, based on the experience and steps taken during the actual Dbvisit upgrade.

  1. Download the latest available version of DBVisit and make it available on all server.
    In our case I put it in /home/oracle/upgrade on all hosts. The versions used were 8.0.18 for Oracle Enterprise Linux 6 and 7:

    dbvisit-standby8.0.18-el6.zip
    dbvisit-standby8.0.18-el7.zip
    
  2. Make a note of the primary hosts for each Dbvisit standby configuration.
    You will need this information later in step 7. It is possible to get the information from the DDC .env files, but in our case it is easier to get it from the Dbvisit console.
    If you need to get them from the DDC .env files look for the SOURCE parameter. Say we have a database db1:

    [root@dbvhost04 conf]# cd /usr/dbvisit/standby/conf/
    [root@dbvhost04 conf]# grep "^SOURCE" dbv_db1.env
    SOURCE = dbvhost04
    
  3. Stop dbvisit processes.
    The Dbvisit upgrade manual assumes you schedule dbvctl from the cron. In our situation the dbvctl processes were running in Deamon mode. Easiest was therefor to stop them from the Dbvisit console. Go to Main Menu -> Database Actions -> Daemon Actions -> select both hosts in turn and choose stop.
    Dbvagent, dbvnet and, on the Dbvisit console host, dbvserver can be stopped as follows:

    cd /usr/dbvisit/dbvagent
    ./dbvagent -d stop
    cd /usr/dbvisit/dbvnet
    ./dbvnet -d stop
    cd /usr/dbvisit/dbvserver
     ./dbvserver -d stop
    

    Do this on all hosts. Dbvisit support advices that all hosts in a configuration be upgraded at the same time. There is no rolling upgrade or something similar.
    Check before proceeding if all processes are down.

  4. Backup the Dbvisit Base location where your software is installed.
    The Dbvisit upgrade manual marks this step as optional – but recommended. In my view it is not optional.
    You can simply tar everything under DBIVIST_BASE for later use.
  5. Upgrade the software.
    Extract the downloaded software and run the included  installer. It will show you which version you already have and which versions is available in the downloaded software. Choose the correct install option to upgrade. Below you can see the upgrade of one of the OEL 6 database hosts running Dbvisit standby:

    cd /home/oracle/upgrade
    <unzip and untar the correct version from /home/oracle/upgrade>
    cd dbvisit/installer/
    ./install-dbvisit
    
    -----------------------------------------------------------
        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/upgrade/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]: 
         >     DBVISIT_BASE = /usr/dbvisit 
    
        -----------------------------------------------------------
        Component      Installer Version   Installed Version
        -----------------------------------------------------------
        standby        8.0.18_0_gc6a0b0a8  8.0.14.19191                                      
        dbvnet         8.0.18_0_gc6a0b0a8  2.0.14.19191                                      
        dbvagent       8.0.18_0_gc6a0b0a8  2.0.14.19191                                      
        dbvserver      8.0.18_0_gc6a0b0a8  not installed                                     
    
        -----------------------------------------------------------
     
        What action would you like to perform?
           1 - Install component(s)
           2 - Uninstall component(s)
           3 - Exit
        
        Your choice: 1
    
        Choose component(s):
           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) - Not available on Solaris/AIX
           6 - Exit Installer
        
        Your choice: 1
    
    -----------------------------------------------------------
        Summary of the Dbvisit STANDBY configuration
    -----------------------------------------------------------
        DBVISIT_BASE /usr/dbvisit 
    
        Press ENTER to continue 
    -----------------------------------------------------------
        About to install Dbvisit STANDBY
    -----------------------------------------------------------
    
        Component standby installed. 
    
        Press ENTER to continue 
    -----------------------------------------------------------
        About to install Dbvisit DBVNET
    -----------------------------------------------------------
    
    Copied file /home/oracle/upgrade/dbvisit/dbvnet/conf/cert.pem to /usr/dbvisit/dbvnet/conf/cert.pem
    
    Copied file /home/oracle/upgrade/dbvisit/dbvnet/conf/ca.pem to /usr/dbvisit/dbvnet/conf/ca.pem
    
    Copied file /home/oracle/upgrade/dbvisit/dbvnet/conf/prikey.pem to /usr/dbvisit/dbvnet/conf/prikey.pem
    
    Copied file /home/oracle/upgrade/dbvisit/dbvnet/dbvnet to /usr/dbvisit/dbvnet/dbvnet
    
    Copied file /usr/dbvisit/dbvnet/conf/dbvnetd.conf to /usr/dbvisit/dbvnet/conf/dbvnetd.conf.201802201235
    
        DBVNET config file updated 
    
    
        Press ENTER to continue 
    -----------------------------------------------------------
        About to install Dbvisit DBVAGENT
    -----------------------------------------------------------
    
    Copied file /home/oracle/upgrade/dbvisit/dbvagent/conf/cert.pem to /usr/dbvisit/dbvagent/conf/cert.pem
    
    Copied file /home/oracle/upgrade/dbvisit/dbvagent/conf/ca.pem to /usr/dbvisit/dbvagent/conf/ca.pem
    
    Copied file /home/oracle/upgrade/dbvisit/dbvagent/conf/prikey.pem to /usr/dbvisit/dbvagent/conf/prikey.pem
    
    Copied file /home/oracle/upgrade/dbvisit/dbvagent/dbvagent to /usr/dbvisit/dbvagent/dbvagent
    
    Copied file /usr/dbvisit/dbvagent/conf/dbvagent.conf to /usr/dbvisit/dbvagent/conf/dbvagent.conf.201802201235
    
        DBVAGENT config file updated 
    
    
        Press ENTER to continue 
    
        -----------------------------------------------------------
        Component      Installer Version   Installed Version
        -----------------------------------------------------------
        standby        8.0.18_0_gc6a0b0a8  8.0.18_0_gc6a0b0a8                                
        dbvnet         8.0.18_0_gc6a0b0a8  8.0.18_0_gc6a0b0a8                                
        dbvagent       8.0.18_0_gc6a0b0a8  8.0.18_0_gc6a0b0a8                                
        dbvserver      8.0.18_0_gc6a0b0a8  not installed                                     
    
        -----------------------------------------------------------
     
        What action would you like to perform?
           1 - Install component(s)
           2 - Uninstall component(s)
           3 - Exit
        
        Your choice: 3
    
  6. Start dbvagent and dbvnet.
    For the next step dbvagent and dbvnet need to be running.  In our case we had an init script which started both:

    cd /etc/init.d
    ./dbvisit start
    

    Otherwise do something like:

    cd /usr/dbvisit/dbvnet
    ./dbvnet –d start 
    cd /usr/dbvisit/dbvagent
    ./dbvagent –d start
    

    The upgrade documentation at this point refers to section 5 of the Dbvisit Standby Networking chapter from the Dbvisit 8.0 user guide: Testing Dbvnet Communication. There some tests to see if dbvnet is working are described. It is important, as the upgrade documentation rightly points, out to test this before proceeding.
    Do on all database hosts:

    [oracle@dbvhost04 init.d]$ cd /usr/dbvisit/dbvnet/
    [oracle@dbvhost04 dbvnet]$ ./dbvnet -e "uname -n"
    dbvhost01
    [oracle@dbvhost04 dbvnet]$ ./dbvnet -f /tmp/dbclone_extract.out.err -o /tmp/testfile
    [oracle@dbvhost04 dbvnet]$ cd /usr/dbvisit/standby
    [oracle@dbvhost04 standby]$ ./dbvctl -f system_readiness
    
    Please supply the following information to complete the test.
    Default values are in [].
    
    Enter Dbvisit Standby location on local server: [/usr/dbvisit]:
    Your input: /usr/dbvisit
    
    Is this correct? <Yes/No> [Yes]:
    
    Enter the name of the remote server: []: dbvhost01
    Your input: dbvhost01
    
    Is this correct? <Yes/No> [Yes]:
    
    Enter Dbvisit Standby location on remote server: [/usr/dbvisit]:
    Your input: /usr/dbvisit
    
    Is this correct? <Yes/No> [Yes]:
    
    Enter the name of a file to transfer relative to local install directory
    /usr/dbvisit: [standby/doc/README.txt]:
    Your input: standby/doc/README.txt
    
    Is this correct? <Yes/No> [Yes]:
    
    Choose copy method:
    1)   /usr/dbvisit/dbvnet/dbvnet
    2)   /usr/bin/scp
    Please enter choice [1] :
    
    Is this correct? <Yes/No> [Yes]:
    
    Enter port for method /usr/dbvisit/dbvnet/dbvnet: [7890]:
    Your input: 7890
    
    Is this correct? <Yes/No> [Yes]:
    -------------------------------------------------------------
    Testing the network connection between local server and remote server dbvhost01.
    -------------------------------------------------------------
    Settings
    ========
    Remote server                                          =dbvhost01
    Dbvisit Standby location on local server               =/usr/dbvisit
    Dbvisit Standby location on remote server              =/usr/dbvisit
    Test file to copy                                      =/usr/dbvisit/standby/doc/README.txt
    Transfer method                                        =/usr/dbvisit/dbvnet/dbvnet
    port                                                   =7890
    -------------------------------------------------------------
    Checking network connection by copying file to remote server dbvhost01...
    -------------------------------------------------------------
    Trace file /usr/dbvisit/standby/trace/58867_dbvctl_f_system_readiness_201803201304.trc
    
    File copied successfully. Network connection between local and dbvhost01
    correctly configured.
    
  7. Upgrade de DDC configuratie files.
    Having upgraded the software now the Dbvisit Standby Configuration (DDC) files, which are located in DBVISIT_BASE/standby/conf, on the database hosts need to be upgraded.
    Do this once for each standby configuration only on the primary host. If you do it on the secondary host you will get an error and all DDC configuration files will be deleted!
    So if we have a database db1 in a Dbvisit standby configuration with database host dbvhost1 running the primary database (source in Dbvisit terminology) and database host dbvhost2 running the standby database (destination in Dbvisit terminology), we do the following on the dbvhost1 only:

    cd /usr/dbvisit/standby
    ./dbvctl -d db1 -o upgrade
    
  8. Restart dbvserver.
    In our configuration the next step is to restart dbvserver to renable the Dbvisit Console.

    cd /usr/dbvisit/dbvserver
    ./dbvserver -d start
    
  9. Update DDC’s in Dbvisit Console.
    After the upgrade the configurations need to te be updated in Dbvisit Console. Go to Manage Configurations and status field will show an error and the edit configuration button is replaced with an update button.
    Update the DDC for each configuration on that screen.
  10. run a manual send/apply of logs.
    In our case this was easiest done from the Dbvisit console again: Main Menu -> Database Actions -> send logs button, followed by apply logs button.
    Do this for each configuration and check for errors before continuing.
  11. Restart Dbvsit standby processes.
    In our case we restarted the dbvctl processes in deamon mode from the Dbvisit Console. Go to Main Menu -> Database Actions -> Daemon Actions -> select both hosts in turn and choose start.

References

Linux – Upgrade from Dbvisit Standby version 8.0.x
Dbvisit Standby Networking – Dbvnet – 5. Testing Dbvnet Communication