Outdated Version

You are viewing an older version of this section. View current production version.

MemSQL Tools Overview

MemSQL provides a suite of tools to manage, monitor, and interact with your cluster.

Management Tools

For clusters running MemSQL 6.7 or later, you should use the following tools to deploy, administer, and manage your cluster. These tools are packaged in Debian, RPM, or tar files which allows them to be part of common automated deployment workflows.

Most of the tools are part of the memsql-toolbox package; however, the lower-level management tool, memsqlctl, is part of the memsql-server package (along with the MemSQL engine itself).

For more information on the tools, see the following links:

  • memsql-toolbox-config. Performs host machine registration.

  • memsql-deploy. Installs memsqlctl and the MemSQL database engine to host machines in the cluster.

  • memsql-admin. Helps you manage a MemSQL cluster.

  • memsql-report. Collects and performs diagnostic checks on your cluster.

  • memsqlctl. Provides lower-level access to manage nodes on a host machine.

Visualization and Application Tools

The following tools allow you to directly monitor and issue queries against your cluster, and as with the management tools above, they are packaged in Debian, RPM, or tar files for easy deployment and management:

  • MemSQL Studio. Provides a visual user interface that allows you to easily monitor, debug, and interact with all of your MemSQL clusters. Available in the memsql-studio package.

  • memsql-client. A lightweight client application that allows you to connect to your MemSQL cluster and run queries. Available in the memsql-client package.

Legacy Tools

For legacy clusters that have not yet migrated to the new tools, MemSQL Ops may still be used to manage your cluster; however, you are encouraged to switch over to the new MemSQL tools at your earliest convenience.

Managing your Tools

Because these new tools are available in Debian and RPM packages, you can use common package manager commands to perform basic operations such as installing, upgrading, and removing these packages and their associated files.

Examples of these package operations are shown below.

Online Installation

For online installations where you can access the MemSQL YUM repository, run the following steps.

Note: These steps are also provided in the self-managed MemSQL tools deployment guides and the MemSQL Studio installation guide.

  1. Add the MemSQL repository to your repository list.

    sudo yum-config-manager --add-repo https://release.memsql.com/production/rpm/x86_64/repodata/memsql.repo
    
  2. Verify that the MemSQL repo information is listed under repolist.

    sudo yum repolist
    
  3. Verify you have the which package installed. This is used during the install process to identify the correct package type for your installation.

    rpm -q which
    

    If which is not installed, you must install it before proceeding. If you cannot install which, you will have to specify the correct package during the deployment phase covered in Deploy MemSQL.

    sudo yum install -y which
    
  4. To install the management tools, client application, and MemSQL Studio, run the following:

    sudo yum install -y memsql-toolbox memsql-client memsql-studio
    

Offline Installation

For clusters that must be deployed in an environment without Internet access, download the following MemSQL packages onto a device with access to the main deployment machine.

memsql-server memsql-toolbox memsql-client memsql-studio

For offline installations, you only need to copy and install memsql-toolbox (and optionally memsql-client and memsql-studio) onto the main deployment machine as the memsql-deploy tool in memsql-toolbox will be used to install the memsql-server package onto each host machine in your cluster.

sudo rpm -ivh /tmp/memsql-toolbox-<version>.x86_64.rpm
sudo rpm -ivh /tmp/memsql-client-<version>.x86_64.rpm
sudo rpm -ivh /tmp/memsql-studio-<version>.x86_64.rpm

Upgrading your packages

To upgrade the tools in the memsql-toolbox, memsql-studio, or memsql-client packages, follow the same basic steps that you would perform to update any RPM package.

Info

The memsql-server package should be updated through the memsql-deploy upgrade command. This command will install, update, and then restart nodes in your cluster (or rollback the installation process, if necessary).

Online

sudo yum update -y memsql-toolbox

Offline

sudo rpm -Uvh /tmp/memsql-toolbox-<version>.x86_64.rpm

Uninstalling MemSQL and removing your packages

If you want to completely uninstall MemSQL and its related tools packages, first uninstall MemSQL from your nodes by using the memsql-deploy uninstall command. This will remove the memsql-server package for that version of MemSQL (all versions of MemSQL can be uninstalled using the --all-versions flag).

As part of the removal process, or to simply remove any of the other MemSQL tools packages, perform the following operation for each package you want to remove:

Info

The remove command and -e flag will only remove the binaries in the package and not remove any configuration files.

Online

sudo yum remove memsql-toolbox

Offline

sudo rpm -e memsql-toolbox

Online Installation

For online installations where you can access the MemSQL APT repository, run the following steps.

Note: These steps are also provided in the self-managed MemSQL tools deployment guides and the MemSQL Studio installation guide.

  1. MemSQL packages are signed to ensure integrity, so the GPG key needs to be added to this machine. When done, verify that the MemSQL signing key has been added using apt-key list.

    wget -O - 'https://release.memsql.com/release-aug2018.gpg'  2>/dev/null | sudo apt-key add - && apt-key list
    
  2. Verify you have apt-transport-https installed.

    apt-cache policy apt-transport-https
    

    If apt-transport-https is not installed, you must install it before proceding.

    sudo apt -y install apt-transport-https
    
  3. Add the MemSQL repository to retrieve its packages.

    echo "deb [arch=amd64] https://release.memsql.com/production/debian memsql main" | sudo tee /etc/apt/sources.list.d/memsql.list
    
  4. To install the management tools, client application, and MemSQL Studio, run the following:

    sudo apt update && sudo apt -y install memsql-toolbox memsql-client memsql-studio
    

Offline Installation

For clusters that must be deployed in an environment without Internet access, download the following MemSQL packages onto a device with access to the main deployment machine.

memsql-server memsql-toolbox memsql-client memsql-studio

For offline installations, you only need to copy and install memsql-toolbox (and optionally memsql-client and memsql-studio) onto the main deployment machine as the memsql-deploy tool in memsql-toolbox will be used to install the memsql-server package onto each host machine in your cluster.

sudo dpkg -i /tmp/memsql-client_<version>_amd64.deb
sudo dpkg -i /tmp/memsql-studio_<version>_amd64.deb
sudo dpkg -i /tmp/memsql-toolbox_<version>_amd64.deb

Upgrading your packages

To upgrade the tools in the memsql-toolbox, memsql-studio, or memsql-client packages, follow the same basic steps that you would perform to update any Debian package.

Info

The memsql-server package should be updated through the memsql-deploy upgrade command. This command will install, update, and then restart nodes in your cluster (or rollback the installation process, if necessary).

Online

sudo apt update && apt install -y memsql-toolbox

Offline

sudo dpkg -i /tmp/memsql-toolbox_<version>_amd64.deb

Uninstalling MemSQL and removing your packages

If you want to completely uninstall MemSQL and its related tools packages, first uninstall MemSQL from your nodes by using the memsql-deploy uninstall command. This will remove the memsql-server package for that version of MemSQL (all versions of MemSQL can be uninstalled using the --all-versions flag).

As part of the removal process, or to simply remove any of the other MemSQL tools packages, perform the following operation for each package you want to remove:

Info

The purge command and -P flag will remove the binaries in the package as well as any configuration files. If you want to keep the configuratino files, use the remove command or -r flag instead.

Online

sudo apt purge memsql-toolbox

Offline

sudo dpkg -P /tmp/memsql-toolbox_<version>_amd64.deb