Skip to main content

MySQL Connection

Connect your MySQL database to give SignalPilot access to schemas, tables, and data for AI-powered analysis.
What you’ll need: Database host, port (default 3306), database name, and credentials.

Quick Setup

1

Open Database Connections

In SignalPilot: Database icon → Add ConnectionMySQL
2

Enter connection details

Choose your method:
  • Configuration form (recommended)
  • Connection URL (faster with full string)
3

Test and save

Test ConnectionCreate Connection
SignalPilot validates credentials and discovers schema.

Connection Methods

FieldDescriptionExample
Connection NameFriendly labelStaging DB, Customer DB
HostServer addresslocalhost or mydb.abc123.us-east-1.rds.amazonaws.com
PortDefault: 33063306
DatabaseDatabase namecustomer_data
UsernameMySQL userdb_user
PasswordUser password••••••••
Credentials encrypted locally using AES-256.

Finding Connection Details

  1. RDS ConsoleDatabases → Select instance
  2. Endpoint = host, Port = 3306 (default)
  3. Database name in Configuration tab
  4. Username/password from RDS creation
Host: localhost or 127.0.0.1Port: 3306 (default)Database: List with SHOW DATABASES;Username: Often root or custom user
  1. Cloud SQL → Select instance
  2. Overview shows public IP (host)
  3. May need to whitelist IPs or use Cloud SQL Proxy

Key Capabilities

Schema Inspection

Auto-discover tables, columns, and data types

Query Generation

Generate MySQL-specific SQL queries

Context Awareness

Use schema for accurate code suggestions

Join Intelligence

Infer relationships between tables

Security Best Practices

Never commit MySQL credentials to git. SignalPilot encrypts them locally only.
CREATE USER 'signalpilot_readonly'@'%' IDENTIFIED BY 'secure_password';
GRANT SELECT ON customer_data.* TO 'signalpilot_readonly'@'%';
FLUSH PRIVILEGES;
  • Use IP whitelisting in firewall/security groups
  • Enable SSL connections when possible
  • Consider VPN or SSH tunneling

Troubleshooting

Solutions:
  • Verify host and port are correct
  • Check firewall allows MySQL port (3306)
  • Ensure MySQL is running: mysqladmin ping -h <host>
Solutions:
  • Check username/password (no trailing spaces)
  • Verify user has access: GRANT SELECT ON database.* TO 'user'@'%'
  • Check host permissions in mysql.user table
Solutions:
  • List databases: SHOW DATABASES;
  • Create if needed: CREATE DATABASE customer_data;
  • Check spelling (MySQL is case-sensitive on Linux)

Next Steps