Skip to main content

Connection Management

TablePro provides a streamlined interface for managing all your database connections. This guide covers creating, organizing, and managing connections across different database types.

Supported Databases

TablePro supports four database systems:

MySQL

Full support including MySQL 5.7+ and MySQL 8.0+. Default port: 3306

MariaDB

Compatible with MariaDB 10.x and later. Default port: 3306

PostgreSQL

PostgreSQL 12+ with full feature support. Default port: 5432

SQLite

File-based databases, no server required

Creating a Connection

From the Welcome Screen

When you first launch TablePro or have no active connections, the Welcome screen provides quick access to create new connections.
  1. Click New Connection
  2. Fill in the connection details
  3. Click Test Connection to verify
  4. Click Create to save and connect
Welcome screen

From the Menu Bar

You can create a new connection at any time:
  • File > New Connection (Cmd+N)

Connection Form Fields

General Section

FieldDescription
NameA friendly name to identify this connection
TypeDatabase type: MySQL, MariaDB, PostgreSQL, or SQLite

Appearance Section

FieldDescription
ColorColor-code your connection for easy identification
TagOrganize connections with custom tags
Read-OnlyToggle to prevent all write operations on this connection
Use colors to visually distinguish between environments (e.g., red for production, green for development). Enable Read-Only mode for production databases to prevent accidental writes.

Connection Section

FieldDescription
HostServer address (default: localhost)
PortServer port (auto-filled based on database type)
DatabaseDefault database to connect to (optional for MySQL/MariaDB)
For SQLite, this section shows a file browser instead:
FieldDescription
File PathPath to the SQLite database file

Authentication Section

For MySQL, MariaDB, and PostgreSQL:
FieldDescription
UsernameDatabase username (default: root for MySQL)
PasswordDatabase password (stored securely in Keychain)
SQLite databases don’t require authentication.

SSL/TLS Section

For MySQL, MariaDB, and PostgreSQL connections, you can configure SSL/TLS encryption:
FieldDescription
SSL ModeEncryption mode (see table below)
CA CertificatePath to Certificate Authority file (for Verify CA/Verify Identity modes)
Client CertificatePath to client certificate file (optional)
Client KeyPath to client private key file (optional)
Available SSL Modes:
ModeDescription
DisabledNo SSL encryption (default)
PreferredUse SSL if available, fall back to unencrypted
RequiredRequire SSL encryption, but don’t verify certificates
Verify CARequire SSL and verify the server certificate against a CA
Verify IdentityRequire SSL, verify CA, and verify the server hostname matches the certificate
For production databases, use Verify CA or Verify Identity mode for maximum security. For development servers, Required provides encryption without needing certificate files.
SSL/TLS is not available for SQLite connections (file-based, no network involved).

Connection Colors

TablePro allows you to assign colors to connections for visual organization:
ColorSuggested Use
NoneDefault, neutral connections
RedProduction databases
OrangeStaging environments
YellowTesting databases
GreenDevelopment/local
BlueShared databases
PurpleSpecial purpose
PinkPersonal projects
Color picker

Connection Tags

Tags help organize connections into logical groups:
  1. In the connection form, click the Tag field
  2. Select an existing tag or create a new one
  3. Tags appear in the sidebar for easy filtering
Common tag examples:
  • “Work”
  • “Personal”
  • “Client Projects”
  • “Archive”

Quick Connection Switching

Switch between active or saved connections directly from the toolbar without returning to the Welcome screen:
  1. Click the connection name button in the toolbar
  2. A popover appears showing your active sessions and saved connections
  3. Click any connection to switch to it immediately
  4. Click Manage Connections… to open the full connection manager
The connection switcher popover is the fastest way to jump between databases during development. If the popover is already open, clicking the connection button again will dismiss it.

Switching Databases

To switch between databases on the same connection:
  1. Click the database name in the toolbar (next to the connection name)
  2. Select a different database from the dropdown
  3. The sidebar updates to show the new database’s tables
This is faster than creating separate connections for each database on the same server.

Creating Databases

To create a new database:
  1. Right-click on the connection in the sidebar
  2. Select Create Database
  3. Enter the database name
  4. Choose charset and collation (MySQL/MariaDB)
  5. Click Create
Database creation requires appropriate user privileges on the server.

Testing Connections

Before saving a connection, always test it:
  1. Fill in all required connection details
  2. Click Test Connection
  3. Wait for the result:
    • Green checkmark: Connection successful
    • Red X: Connection failed (see error message)
Connection test

Common Test Failures

ErrorPossible CauseSolution
”Connection refused”Server not runningStart your database server
”Authentication failed”Wrong credentialsVerify username/password
”Host not found”Invalid server addressCheck hostname/IP
”Connection timed out”Network/firewall issueCheck network connectivity

Connection Health Monitoring

TablePro continuously monitors your database connections and automatically recovers from interruptions.

Automatic Health Checks

For MySQL, MariaDB, and PostgreSQL connections, TablePro sends a lightweight ping (SELECT 1) every 30 seconds to verify the connection is alive. SQLite connections are file-based and don’t require health monitoring.

Auto-Reconnect

When a health check detects a lost connection, TablePro automatically attempts to reconnect:
  1. Attempt 1 — waits 2 seconds, then reconnects
  2. Attempt 2 — waits 4 seconds, then reconnects
  3. Attempt 3 — waits 8 seconds, then reconnects
If all three attempts fail, the connection enters an error state and you’ll see a Reconnect button in the toolbar. SSH tunnels have their own independent health monitoring and are automatically re-established if the tunnel process dies.

Manual Reconnect

If auto-reconnect fails, click the Reconnect button (↻) in the toolbar to manually re-establish the connection. For SSH connections, this also recreates the SSH tunnel.
The toolbar status indicator shows the current connection state: green for connected, orange for reconnecting, and red for error/disconnected.
SQLite connections are file-based and don’t require health monitoring or auto-reconnect.

Editing Connections

To modify an existing connection:
  1. Right-click the connection in the sidebar
  2. Select Edit Connection
  3. Make your changes
  4. Click Save
Changes to connection settings take effect the next time you connect. If currently connected, you’ll need to disconnect and reconnect.

Deleting Connections

To remove a connection:
  1. Right-click the connection in the sidebar
  2. Select Delete Connection
  3. Confirm the deletion
Deleting a connection removes the saved settings and credentials but does not affect your actual database.

Connection Storage

Where Connections are Stored

DataLocationStorage Type
Connection settings~/Library/Preferences/com.TablePro.plistUserDefaults
All app settings~/Library/Preferences/com.TablePro.plistUserDefaults
PasswordsmacOS KeychainEncrypted
SSH keysReferenced by pathNot copied

Backup and Restore

To backup your connections and settings:
# Backup connections and all settings
cp ~/Library/Preferences/com.TablePro.plist ~/Desktop/tablepro-backup.plist
To restore:
# Close TablePro first, then restore
cp ~/Desktop/tablepro-backup.plist ~/Library/Preferences/com.TablePro.plist
The backup file does not include passwords (stored in Keychain) or SSH private keys. You’ll need to re-enter passwords after restoring.

Default Ports

TablePro automatically sets the default port when you select a database type:
DatabaseDefault Port
MySQL3306
MariaDB3306
PostgreSQL5432
SQLiteN/A (file-based)