Upgrade a Single-Node MariaDB Enterprise ColumnStore Deployment from 1.4.X to 1.4.Y with MariaDB Enterprise Server 10.4 on RHEL 7

These instructions detail a minor release upgrade with MariaDB Enterprise ColumnStore 1.4 and MariaDB Enterprise Server 10.4 on Red Hat Enterprise Linux 7 in a Single-node ColumnStore Deployment configuration.

A minor release upgrade is a change from an earlier release of MariaDB Enterprise ColumnStore 1.4 with MariaDB Enterprise Server 10.4 to a later release in the same release series.

For example, it would be a minor release upgrade to upgrade from MariaDB Enterprise ColumnStore 1.4.3 with MariaDB Enterprise Server 10.4.12-6 to MariaDB Enterprise ColumnStore 1.4.4 with MariaDB Enterprise Server 10.4.13-7.

Data Backup

Occasionally, issues can be encountered during upgrades. These issues can even potentially corrupt the database's data files, preventing you from easily reverting to the old installation. We strongly advise performing a backup prior to upgrading. If an issue is encountered during the upgrade, you can use the backup to restore your MariaDB ColumnStore database to the old version. If the upgrade finishes without issue, the backup can be deleted.

  1. Run columnstoreBackup:

    $ columnstoreBackup -zv 192.0.2.1 /data/backups/pm1
    
  2. Confirm the successful completion of the backup operation.

  3. Test the backup.

Additional information on columnstoreBackup is available on the MariaDB Knowledge Base.

Shutdown ColumnStore

Before MariaDB ColumnStore can be upgraded, stop the current MariaDB ColumnStore processes.

  1. Stop MariaDB ColumnStore with mcsadmin shutdownSystem:

    $ sudo mcsadmin shutdownSystem y
    

Update

MariaDB Corporation provides a YUM package repository for Red Hat Enterprise Linux 7.

MariaDB Enterprise Server 10.4 does not require additional software to operate as an analytics database with MariaDB ColumnStore.

Update via YUM (RHEL/CentOS)

  1. Retrieve your Customer Download Token at https://customers.mariadb.com/downloads/token/ and substitute for customer_download_token in the following directions.

  2. Configure the YUM package repository.

    To configure YUM package repositories:

    $ sudo yum install wget
    
    $ wget https://dlm.mariadb.com/enterprise-release-helpers/mariadb_es_repo_setup
    
    $ echo "957bc29576e8fd320fa18e35fa49b5733f3c8eeb4ca06792fb1f05e089c810ff  mariadb_es_repo_setup" \
        | sha256sum -c -
    
    $ chmod +x mariadb_es_repo_setup
    
    $ sudo ./mariadb_es_repo_setup --token="customer_download_token" --apply \
       --mariadb-server-version="10.4"
    
  3. Update MariaDB ColumnStore and package dependencies:

    $ sudo yum update "MariaDB-*"
    

Post Update

Updating the MariaDB Enterprise Server and MariaDB ColumnStore packages provides you with necessary packages to run the Server as a ColumnStore Instance, but only configures the Server as a Server. A few additional steps are needed to configure the MariaDB ColumnStore storage back-end.

Post-Configuration Script

MariaDB ColumnStore provides a post-configuration script to configure the ColumnStore Instance.

  1. Run the postConfigure script on the Server with the -u option to upgrade the system:

    $ sudo /usr/bin/postConfigure -u
    

Restart the System

  1. Use mcsadmin restartSystem to restart MariaDB ColumnStore to clear the cache:

    $ sudo mcsadmin restartSystem y
    

Update the Data Directory

  1. Execute mariadb-upgrade to update the data directory:

    $ sudo mariadb-upgrade
    

Administration

MariaDB ColumnStore includes an administrative utility called mcsadmin, which you can use to start and stop the ColumnStore processes:

Operation

Command

Start

mcsadmin startSystem

Stop

mcsadmin shutdownSystem

Restart

mcsadmin restartSystem

Status

mcsadmin getSystemStatus

Testing

When you have MariaDB ColumnStore up and running, you should test it to ensure that it is in working order and that there were not any issues during startup.

Checking Server Status

  1. Connect to the server using MariaDB Client using the root@localhost user account:

    $ sudo mariadb
    Welcome to the MariaDB monitor.  Commands end with ; or \g.
    Your MariaDB connection id is 38
    Server version: 10.4.13-7-MariaDB-Enterprise MariaDB Enterprise Server
    
    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    MariaDB [(none)]>
    

Checking System Status

  1. Execute the mcsadmin getSystemStatus command:

    $ sudo mcsadmin getSystemStatus
    getsystemstatus   Wed Jan  8 23:44:55 2020
    
    System columnstore-1
    
    System and Module statuses
    
    Component     Status                       Last Status Change
    ------------  --------------------------   ------------------------
    System        ACTIVE                       Wed Jan  8 23:14:14 2020
    
    Module pm1    ACTIVE                       Wed Jan  8 23:14:11 2020