Upgrade from InfiniDB 4.x to MariaDB ColumnStore 1.x.x
Upgrade from InfiniDB 4.x to MariaDB ColumnStore 1.x.x
Overview
The columnar disk storage format is unchanged between InfiniDB 4.X and MariaDB ColumnStore allowing for a software upgrade on the same system. This document outlines an approach to perform the upgrade.
If you are wanted to migrate the data from an InfiniDB system to a separate MariaDB ColumnStore system, then please follow the Migration Guide:
https://mariadb.com/kb/en/mariadb/migrating-from-infinidb-4x-to-mariadb-columnstore
NOTE: the MySQL engine type of 'infinidb' is still supported in the MariaDB ColumnStore, so tables created as 'infinidb' will continue to work. But it is recommend that all new tables use be created using the engine type of 'columnstore'
Procedure
Note: Calpont.xml modifications you manually made are not automatically carried forward on an upgrade. These modifications will need to be incorporated back into Columnstore.xml once the upgrade has occurred.
The previous configuration file will be saved as /usr/local/Calpont/etc/Calpont.xml.rpmsave.
If you have specified a root database password (which is good practice), then you must configure a .my.cnf file with user credentials for the upgrade process to use. Create a .my.cnf file in the user home directory with 600 file permissions with the following content (updating PASSWORD as appropriate):
[mysqladmin] user = root password = PASSWORD
This file can be removed after the upgrade is complete.
Choosing the type of upgrade
Root User Installs
Upgrading MariaDB ColumnStore using RPMs
Upgrade MariaDB ColumnStore as user root on the server designated as PM1:
- Download the package mariadb-columnstore-1.x.x-1-centos#.x86_64.rpm.tar.gz to the PM1 server where you are installing MariaDB ColumnStore.
- Get a copy of the InfiniDB system and storage configuration, this will be used to configure the MariaDB ColumnStore.
# cc getsystemnetwork # cc getstorageconfig
- Shutdown the InfiniDB system:
# cc shutdownsystem y
- Unpack the tarball, which will generate a set of RPMs that will reside in the /root/ directory.
# tar -zxf mariadb-columnstore-1.x.x-1-centos#.x86_64.rpm.tar.gz
- Uninstall the InfiniDB RPMs on all servers in the system.
# rpm -e --nodeps $(rpm -qa | grep '^infinidb')
- Rename the install directory on all servers
# mkdir -p /usr/local/mariadb/columnstore # mv /usr/local/Calpont/* /usr/local/mariadb/columnstore/.
- Install the MariaDB ColumnStore RPMs. The MariaDB ColumnStore software will be installed in /usr/local/.
# rpm -ivh mariadb-columnstore-*1.x.x*rpm
- Run postConfigure following the either the Single Server Or Multi Server install guides, based on the type of system being upgraded. Provide the same module and storage configuration settings that were display from the InfiniDB system.
https://mariadb.com/kb/en/mariadb/installing-and-configuring-mariadb-columnstore/
https://mariadb.com/kb/en/mariadb/installing-and-configuring-a-multi-server-columnstore-system/
# /usr/local/mariadb/columnstore/bin/postConfigure
Initial download/install of MariaDB ColumnStore binary package
Upgrade MariaDB ColumnStore as user root on the server designated as PM1:
- Download the package into the /usr/local directory -mariadb-columnstore-1.x.x-1.x86_64.bin.tar.gz (Binary 64-BIT)to the server where you are installing MariaDB ColumnStore.
- Get a copy of the InfiniDB system and storage configuration, this will be used to configure the MariaDB ColumnStore.
# cc getsystemnetwork # cc getstorageconfig
- Shutdown the InfiniDB system:
# cc shutdownsystem y
- Run pre-uninstall script on all servers
# /usr/local/mariadb/columnstore/bin/pre-uninstall
- Rename the install directory on all servers
# mkdir -p /usr/local/mariadb/columnstore # mv /usr/local/Calpont/* /usr/local/mariadb/columnstore/.
- Unpack the tarball, in the /usr/local/ directory.
# tar -zxvf -mariadb-columnstore-1.x.x-1.x86_64.bin.tar.gz
- Run post-install scripts
# /usr/local/mariadb/columnstore/bin/post-install <<code>> * Run postConfigure following the either the Single Server Or Multi Server install guides, based on the type of system being upgraded. Provide the same module and storage configuration settings that were display from the InfiniDB system. https://mariadb.com/kb/en/mariadb/installing-and-configuring-mariadb-columnstore/ https://mariadb.com/kb/en/mariadb/installing-and-configuring-a-multi-server-columnstore-system/ <<code>> # /usr/local/mariadb/columnstore/bin/postConfigure
Upgrading MariaDB ColumnStore using the DEB package
A DEB upgrade would be done on a system that supports DEBs like Debian or Ubuntu systems.
Upgrade MariaDB ColumnStore as user root on the server designated as PM1:
- Download the package into the /root directory
mariadb-columnstore-1.x.x-1.amd64.deb.tar.gz (DEB 64-BIT) to the server where you are installing MariaDB ColumnStore.
- Get a copy of the InfiniDB system and storage configuration, this will be used to configure the MariaDB ColumnStore.
# cc getsystemnetwork # cc getstorageconfig
- Shutdown the InfiniDB system:
# cc shutdownsystem y
- Unpack the tarball, which will generate DEBs.
# tar -zxf mariadb-columnstore-1.x.x-1.amd64.deb.tar.gz
- Remove, purge and install all InfiniDB debs
# cd /root/ # dpkg -r infinidb*deb # dpkg -P infinidb*deb
- Rename the install directory on all servers
# mkdir -p /usr/local/mariadb/columnstore # mv /usr/local/Calpont/* /usr/local/mariadb/columnstore/.
- Install the MariaDB ColumnStore DEBs. The MariaDB ColumnStore software will be installed in /usr/local/.
# cd /root/ # dpkg -i mariadb-columnstore*.deb
- Run postConfigure following the either the Single Server Or Multi Server install guides, based on the type of system being upgraded. Provide the same module and storage configuration settings that were display from the InfiniDB system.
https://mariadb.com/kb/en/mariadb/installing-and-configuring-mariadb-columnstore/
https://mariadb.com/kb/en/mariadb/installing-and-configuring-a-multi-server-columnstore-system/
# /usr/local/mariadb/columnstore/bin/postConfigure
Non-Root User Installs
Initial download/install of MariaDB ColumnStore binary package
Install MariaDB ColumnStore as user root on the server designated as PM1:
- Download the package into the /home/'non-root-user" directory
mariadb-columnstore-1.x.x-1.x86_64.bin.tar.gz (Binary 64-BIT)to the server where you are installing MariaDB ColumnStore.
- Get a copy of the InfiniDB system and storage configuration, this will be used to configure the MariaDB ColumnStore.
# cc getsystemnetwork # cc getstorageconfig
- Shutdown the InfiniDB system:
# cc shutdownsystem y
- Run pre-uninstall script on all servers
# $HOME/Calpont/bin/pre-uninstall -i /$HOME/Calpont
- Rename the install directory on all servers
# mkdir -p $HOME/mariadb/columnstore # mv $HOME/Calpont/* $HOME/mariadb/columnstore/.
- Unpack the tarball, which will generate the $HOME/ directory.
# tar -zxvf -mariadb-columnstore-1.x.x-1.x86_64.bin.tar.gz
- Run post-install scripts
# $HOME/mariadb/columnstore/bin/post-install -i /home/guest/mariadb/columnstore
- Run postConfigure following the either the Single Server Or Multi Server install guides, based on the type of system being upgraded. Provide the same module and storage configuration settings that were display from the InfiniDB system.
https://mariadb.com/kb/en/mariadb/installing-and-configuring-mariadb-columnstore/
https://mariadb.com/kb/en/mariadb/installing-and-configuring-a-multi-server-columnstore-system/
# $HOME/mariadb/columnstore/bin/postConfigure -i /home/guest/mariadb/columnstore