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
Enter connection details
Choose your method:
- Configuration form (recommended)
- Connection URL (faster with full string)
Connection Methods
- Configuration Form
- Connection URL
| Field | Description | Example |
|---|---|---|
| Connection Name | Friendly label | Staging DB, Customer DB |
| Host | Server address | localhost or mydb.abc123.us-east-1.rds.amazonaws.com |
| Port | Default: 3306 | 3306 |
| Database | Database name | customer_data |
| Username | MySQL user | db_user |
| Password | User password | •••••••• |
Credentials encrypted locally using AES-256.
Finding Connection Details
AWS RDS
AWS RDS
- RDS Console → Databases → Select instance
- Endpoint = host, Port = 3306 (default)
- Database name in Configuration tab
- Username/password from RDS creation
Local MySQL
Local MySQL
Host:
localhost or 127.0.0.1Port: 3306 (default)Database: List with SHOW DATABASES;Username: Often root or custom userGoogle Cloud SQL
Google Cloud SQL
- Cloud SQL → Select instance
- Overview shows public IP (host)
- 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
Read-only user
Read-only user
Network security
Network security
- Use IP whitelisting in firewall/security groups
- Enable SSL connections when possible
- Consider VPN or SSH tunneling
Troubleshooting
Connection timeout
Connection timeout
Solutions:
- Verify host and port are correct
- Check firewall allows MySQL port (3306)
- Ensure MySQL is running:
mysqladmin ping -h <host>
Access denied
Access denied
Solutions:
- Check username/password (no trailing spaces)
- Verify user has access:
GRANT SELECT ON database.* TO 'user'@'%' - Check host permissions in
mysql.usertable
'Unknown database'
'Unknown database'
Solutions:
- List databases:
SHOW DATABASES; - Create if needed:
CREATE DATABASE customer_data; - Check spelling (MySQL is case-sensitive on Linux)