Please follow this guide to learn how to migrate to SingleStore tools.
This topic does not apply to MemSQL Helios.
Upgrade your cluster
Select an option below to upgrade your cluster.
Step 1: Upgrade SingleStore DB Tools
To upgrade your existing MemSQL cluster, we recommend upgrading singlestoredb-toolbox
to 1.5.3 or later prior to upgrading MemSQL.
Run the install
command to either install singlestoredb-toolbox
if it is not already installed, or upgrade an existing version of singlestoredb-toolbox
to the latest version of the package.
RHEL/CentOS
sudo yum install singlestoredb-toolbox -y
Debian
sudo apt install singlestoredb-toolbox -y
Upgrade without Internet access
If your cluster does not have internet access, use one of the following buttons to download either the latest RPM or Debian singlestoredb-toolbox
package to a location accessible by your cluster:
Then, run the install
command for the installed package manager and specify the path to the package.
RHEL/CentOS
sudo yum install /path/to/singlestoredb-toolbox.rpm -y
Debian
sudo apt install /path/to/singlestoredb-toolbox.deb -y
Now you are ready to upgrade MemSQL.
Step 2: Upgrade MemSQL
The simplest and preferred upgrade option is an offline cluster upgrade. It is the least error-prone and easiest to execute; however, it requires downtime as all of the nodes in the cluster will be upgraded at the same time, shutting down the entire cluster for the duration of the upgrade.
If the cluster is running with High Availability, you also have the option to perform an incremental online cluster upgrade, which maintains cluster availability throughout the upgrade process. See the instructions in the Online upgrade section for more details.
Option 1: Offline upgrade
Note: Using this method to upgrade MemSQL is referred to as an “offline” upgrade as your MemSQL cluster will be shut down and restarted over the course of the upgrade. Do not shut down your cluster prior to starting the upgrade. If the cluster or individual nodes are offline when the upgrade is started, the upgrade will fail.
Execute the following command to start an offline upgrade.
-
Confirm that the cluster can be upgraded. The cluster will not be upgraded when running this command.
sdb-deploy upgrade --precheck-only
-
Upgrade your cluster.
Note:
sdb-deploy upgrade
will perform a snapshot of all databases prior to upgrade.sdb-deploy upgrade --version 7.0
If you do not specify a patch version, your cluster will be upgraded to the latest patch version of MemSQL 7.0. Refer to MemSQL release notes for available patch versions.
Note: You cannot downgrade from your current version.
If your cluster does not have internet access, use one of the following buttons to download either the latest RPM or Debian memsql-server
package to a location accessible by your cluster:
The memsql-server
package contains both the MemSQL binary and the low-level management tool, memsqlctl
.
Run the sdb-deploy upgrade
command and reference the appropriate package in the --file-path
argument. Running upgrade
(as opposed to simply upgrading the package via the package manager) will perform an offline restart of all the nodes to make sure the cluster is using the new version.
RHEL/CentOS
sdb-deploy upgrade --file-path /path/to/memsql-server.rpm
Debian
sdb-deploy upgrade --file-path /path/to/memsql-server.deb
For more information on the upgrade
command, see the SingleStore DB Tools reference documentation.
Option 2: Online upgrade
This upgrade method is referred to as an “online” upgrade as your MemSQL cluster will not be shut down over the course of the upgrade. Nodes will be restarted in a specific sequence to ensure that DML-based workloads will still function. Do not shut down your cluster prior to starting the upgrade. If the cluster or individual nodes are offline when the upgrade is started, the upgrade will fail.
An online upgrade may fail if a long-running workload that writes to the database is running on the target cluster. We recommend performing an online upgrade only after these workloads have completed.
Toolbox 1.11.7 and later provide the option to retry a failed online upgrade. Should the online upgrade ultimately fail, an offline upgrade will be attempted. Note that the cluster will be shut down and restarted over the course of an offline upgrade.
Execute the following command to start an online upgrade.
-
Confirm that the cluster can be upgraded. The cluster will not be upgraded when running this command.
sdb-deploy upgrade --precheck-only
-
Upgrade your cluster.
Note:
sdb-deploy upgrade
will perform a snapshot of all databases prior to upgrade.sdb-deploy upgrade --online --version 7.0
By specifying --version 7.0
, your cluster will be upgraded to the latest patch version of MemSQL 7.0. Refer to MemSQL release notes for available patch versions.
Note: You cannot downgrade from your current version.
If your cluster does not have internet access, use one of the following buttons to download either the latest RPM or Debian memsql-server
package to a location accessible by your cluster:
The memsql-server
package contains both the MemSQL binary and the low-level management tool, memsqlctl
.
Run the sdb-deploy upgrade --online
command and reference the appropriate package in the --file-path
argument. Running upgrade
(as opposed to simply upgrading the package via the package manager) will perform an offline restart of all the nodes to make sure the cluster is using the new version.
RHEL/CentOS
sdb-deploy upgrade --online --file-path /path/to/memsql-server.rpm
Debian
sdb-deploy upgrade --online --file-path /path/to/memsql-server.deb
For more information on the upgrade
command, see the SingleStore DB Tools reference documentation.
Step 1: Upgrade MemSQL Ops
To upgrade your existing MemSQL cluster, we recommend upgrading to the latest version of MemSQL Ops before upgrading MemSQL.
If you are running Ops 6.0 or later, you can upgrade Ops to the latest version by running the agent-upgrade
command.
memsql-ops agent-upgrade
Upgrade without Internet access
If your cluster does not have internet access, download the 7.0.6 version to your local machine. Then, run the agent-upgrade
command using the --file-path
argument.
sudo memsql-ops agent-upgrade --file-path /path/to/memsql-ops-XYZ.tar.gz
Now you are ready to upgrade MemSQL.
Step 2: Upgrade MemSQL
The currently supported upgrade option is an offline cluster upgrade. It requires downtime as all of the nodes in the cluster will be upgraded at the same time.
Offline upgrade
Note: Upgrading to MemSQL 7.0 is referred to as an “offline” upgrade as your MemSQL cluster will be shut down and restarted over the course of the upgrade. Do not shut down your cluster prior to starting the upgrade. If the cluster or individual nodes are offline when the upgrade is started, the upgrade will fail.
Execute the following command to start an offline upgrade.
memsql-ops memsql-upgrade --version 7.0
If you do not specify a patch version, your cluster will be upgraded to the latest patch version of MemSQL 7.0. Refer to MemSQL release notes for available patch versions.
Note: You cannot downgrade from your current version.
If your cluster does not have internet access, download the MemSQL binary from the following locations before running the memsql-upgrade
command with the --file-path
argument:
-
For the latest version, the download link is: http://download.memsql.com/releases/latest/memsqlbin_amd64.tar.gz
-
For any other version, the download link format is:
http://download.memsql.com/releases/version/X.Y.Z/memsqlbin_amd64.tar.gz
sudo memsql-ops memsql-upgrade --file-path /path/to/memsqlbin_amd64.tar.gz
For more information on the memsql-upgrade
command, see the CLI reference documentation.