Deploy a Database Server with Quick Start in InMotion Central
Updated October 29, 2026 by Suraj Bangade
5 Minutes to Read
Introduction
Most applications store their data in a database. Keeping that database on its own server, separate from your web or app servers, makes it easier to size, back up, and protect. Building one by hand means installing the database software, opening it to your private network but not the internet, and setting an administrator password.
The Database Server Quick Start template in InMotion Central does that for you. It launches an Ubuntu 24.04 LTS server with either MySQL (installed as MariaDB) or PostgreSQL, lets your other servers on the private network connect to it, and can attach a separate block storage volume for the database files.
In this tutorial, we'll show you how to deploy a database server, connect to it from another server on your private network, and check what was installed.
Steps to Deploy the Database Server Template
1. Open Quick Start in Your Cloud Project
- Log in to InMotion Central and select Projects from the left navigation bar.
- Open your cloud project and click Quick Start in the project sidebar.
- Locate the Database Server template card and click Deploy.

2. Configure Your Deployment Settings
In the Deploy Database Server dialog, review or customize the settings:
Basic
- Stack name: Enter a name for this deployment (for example, database-server). Use letters, numbers, dots, underscores, or hyphens.
- Server name: Enter a hostname for the new server (defaults to db-1).
- Image: Choose Ubuntu 24.04 LTS.
- Flavor: Choose the server size (vCPU, RAM, and NVMe storage) that fits your workload.
Storage
- Attach data volume: Leave this on to create a separate volume for the database files.
- Volume size (GB): Enter the size of the data volume, from 1 to 1000 GB (defaults to 20).

Application
- Database engine: Choose mysql (installs MariaDB, which works with MySQL clients and tools) or postgresql.
- Database password: Enter a password of at least 8 characters for the database administrator: root for MySQL, or postgres for PostgreSQL.
Networking
- Public network: Keep External selected. This is the network your public IP address comes from.
- If your project already has a private network, select it from the Private network dropdown.
- If your project does not have a private network yet, InMotion Central offers to create a Private Network + Router deployment first, using the prefilled subnet (192.168.10.0/24) and DNS servers (1.1.1.1, 8.8.8.8).
- Private network CIDR: The address range allowed to reach the database port (defaults to 192.168.10.0/24). Use the same range as your private network.
SSH
- SSH key: Select an existing SSH key, click Generate New Key, or click Paste Public Key. You need a key to sign in to the server.
- SSH whitelist: Confirm the comma-separated IP addresses or CIDR ranges allowed on port 22 (prefilled with your current public IP address). Leave this field empty if you want port 22 closed.
3. Launch and Monitor Your Deployment
- Click Deploy (or Create Network And Deploy if you are creating a private network at the same time).
- Scroll down to My Deployments at the bottom of the Quick Start page to track progress.
- Wait a few minutes while the server boots and installs the database. When setup finishes, the Status column for database-server changes to CREATE_COMPLETE.

4. Copy Your Server's Public IP Address
- Next to your database-server deployment under My Deployments, click Outputs.
- Copy the floating_ip value. This is your server's public floating IP address.

5. Finish Setup over SSH
If you chose mysql, sign in to the server and complete two steps that the template does not finish on its own:
If you attached an SSH key and whitelisted your IP address during setup, connect to the server as the ubuntu user:
1$ ssh ubuntu@<floating_ip>
Let MariaDB accept connections from the private network
1$ sudo systemctl restart mariadb
MariaDB is configured to listen on every address, but that setting only takes effect after a restart. Until then, it accepts connections only from the server itself.
Move the database onto the data volume. The volume is attached to the server as /dev/vdb, but it is not formatted or used yet. These commands stop MariaDB, format the volume, copy the database files onto it, and mount it at /var/lib/mysql so it is used every time the server starts. Only run them on a new server, because they erase anything already on /dev/vdb:
1$ sudo systemctl stop mariadb
1$ sudo mkfs.ext4 /dev/vdb
1$ sudo mount /dev/vdb /mnt && sudo rsync -a /var/lib/mysql/ /mnt/ && sudo umount /mnt
1$ echo "UUID=$(sudo blkid -s UUID -o value /dev/vdb) /var/lib/mysql ext4 defaults,nofail 0 2" | sudo tee -a /etc/fstab
1$ sudo systemctl daemon-reload && sudo mount /var/lib/mysql && sudo systemctl start mariadb
These steps are for the mysql engine, which is the one we tested. With postgresql, the volume is also attached as /dev/vdb but not used, so follow the same volume steps with postgresql in place of mariadb and /var/lib/postgresql in place of /var/lib/mysql.
How to Know the Installation Was Successful
Check that the database is listening on the private network and the volume is in use:
Check the database port
1$ sudo ss -ltn | grep 3306
LISTEN 0 80 0.0.0.0:3306 0.0.0.0:*
Check that the data volume holds the database files
1$ df -h /var/lib/mysql
Filesystem Size Used Avail Use% Mounted on/dev/vdb 20G 125M 19G 1% /var/lib/mysql
Then connect from another server on the same private network. Replace <private_ip> with the database server's private address (run hostname -I on the database server to find it):
1$ mariadb -h <private_ip> -u root -p
Enter the database password you chose. A MariaDB [(none)]> prompt means the connection works. Our test, run from another server on the private network, connected to db-1.
What Was Automatically Installed
Running these checks on our test deployment (with the mysql engine) confirmed what first boot set up:
Check the Ubuntu version installed
1$ lsb_release -ds
Ubuntu 24.04.3 LTS
Check the version of MariaDB installed
1$ mariadb --version
mariadb Ver 15.1 Distrib 10.11.14-MariaDB, for debian-linux-gnu (x86_64) using EditLine wrapper
Check that MariaDB is running
1$ systemctl is-active mariadb
active
The template set up:
- A root password for MariaDB. Sign in on the server with sudo mariadb -u root -p, or from the private network with mariadb -h <private_ip> -u root -p.
- A firewall that allows the database port (3306 for MySQL, 5432 for PostgreSQL) only from your private network range, SSH (port 22) only from your whitelist, and ping. The database is never open to the internet.
- A data volume of the size you chose, attached to the server as /dev/vdb.
Create a separate database and user for each application rather than connecting as root. For example, in the mariadb prompt: CREATE DATABASE app; CREATE USER 'app'@'192.168.10.%' IDENTIFIED BY '<password>'; GRANT ALL ON app.* TO 'app'@'192.168.10.%';
I love to tinker with cool stuff.
Talk with an InMotion Cloud specialist
Reach out to the InMotion Cloud support team and we’ll walk through your scenario together.