SingleStore DB

Install SingleStore Tools

The first step in deploying your cluster is to download and install the SingleStore Tools on one of the hosts in your cluster. This host will be designated as the main deployment host for deploying SingleStore DB across your other hosts and setting up your cluster.

These tools perform all major cluster operations including downloading the latest version of SingleStore DB onto your hosts, assigning and configuring nodes in your cluster, and other management operations.

For the purpose of this guide, the main deployment host is the same as the designated Master Aggregator of the SingleStore DB cluster

Note: If SingleStore DB is installed as a sudo user via packages, systemd will automatically start the associated SingleStore DB processes when a host is rebooted.

Online Deployment

For an online deployment, where the main deployment host can access the SingleStore YUM repository, run the following commands to install SingleStore Tools.

sudo yum-config-manager --add-repo https://release.memsql.com/production/rpm/x86_64/repodata/memsql.repo && \
sudo yum install -y singlestore-client singlestoredb-toolbox singlestoredb-studio

Troubleshooting

If SingleStore Tools cannot be installed using the steps above, verify that the SingleStore repo information is listed under repolist.

sudo yum repolist
****
repo id            repo name            status
memsql             MemSQL               125

Verify that the which package is 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.

sudo yum install -y which

If you cannot install which, you will need to specify the correct package type (either rpm or deb) during the deployment phase.

After verifying the above, re-run the commands to install SingleStore Tools.

Offline Deployment

Download the following SingleStore packages onto a device with access to the main deployment host.

singlestoredb-toolbox

singlestoredb-studio

singlestore-client

singlestoredb-server

Transfer SingleStore DB Files

Transfer the singlestore-client, singlestoredb-toolbox, and singlestoredb-studio packages onto the main deployment host and install them using rpm.

sudo rpm -ivh /tmp/singlestore-client-<version>.x86_64.rpm && \
sudo rpm -ivh /tmp/singlestoredb-toolbox-<version>.x86_64.rpm && \
sudo rpm -ivh /tmp/singlestoredb-studio-<version>.x86_64.rpm

You do not need to install the singlestoredb-server package in this step. It will be installed as part of deployment, which is shown in the next step.

Online Deployment

For an online deployment, where the main deployment host can access the SingleStore APT repository, run the following commands to install SingleStore Tools.

wget -O - 'https://release.memsql.com/release-aug2018.gpg'  2>/dev/null | sudo apt-key add - && apt-key list && \
apt-cache policy apt-transport-https && \
sudo apt -y install apt-transport-https && \
echo "deb [arch=amd64] https://release.memsql.com/production/debian memsql main" | sudo tee /etc/apt/sources.list.d/memsql.list && \
sudo apt update && sudo apt -y install singlestore-client singlestoredb-toolbox singlestoredb-studio

Offline Deployment

Download the following SingleStore packages onto a device with access to the main deployment host.

singlestoredb-toolbox

singlestoredb-studio

singlestore-client

singlestoredb-server

Transfer SingleStore DB Files

Transfer the singlestore-client, singlestoredb-toolbox, and singlestoredb-studio packages onto the main deployment host and install them using dpkg.

sudo dpkg -i singlestore-client_<version>_amd64.deb && \
sudo dpkg -i singlestoredb-toolbox_<version>_amd64.deb && \
sudo dpkg -i singlestoredb-studio_<version>_amd64.deb

You do not need to install the singlestoredb-server package in this step. It will be installed as part of deployment, which is shown in the next step.

Download SingleStore DB Files

Download the singlestore-client, singlestoredb-toolbox, and singlestoredb-studio files onto the main deployment host, or onto a device with access to the main deployment host.

To obtain the latest version of each file, use the following:

curl https://release.memsql.com/production/index/<singlestore-file>/latest.json

Replace <singlestore-file> with memsqlclient, memsqltoolbox, and memsqlstudio to download the list of available file types.

The JSON you receive contains relative file paths in the following format:

"Path": "production/tar/x86_64/<singlestore-file>-<version>-<commit-hash>.x86_64.tar.gz"

Use wget to download the file by copying, pasting, and appending the path (minus the quotes) to https://release.memsql.com/. Examples are shown below.

wget https://release.memsql.com/production/tar/x86_64/<singlestore-file>-<version>-<commit-hash>.x86_64.tar.gz

Alternatively, download the following SingleStore tarball files onto a device with access to the main deployment host.

singlestoredb-toolbox

singlestoredb-studio

singlestore-client

singlestoredb-server

Transfer SingleStore DB Files

Transfer the singlestore-client, singlestoredb-toolbox, singlestoredb-studio, and singlestoredb-server tarball files into a dedicated memsql directory that has been configured so that non-sudo users can access on the main deployment host, such as /home/<user>/memsql or /opt/memsql.

Unpack SingleStore DB Files

Note: For the remainder of this document, <version>-<commit-hash> will be written simply as <version>.

Unpack singlestore-client, singlestoredb-toolbox, and singlestoredb-studio into the memsql directory.

tar xzvf singlestore-client-<version>.tar.gz && \
tar xzvf singlestoredb-toolbox-<version>.tar.gz && \
tar xzvf singlestoredb-studio-<version>.tar.gz

You do not need to unpack the singlestoredb-server file in this step. It will be installed as part of deployment, which is shown in the next step.