Database Connections
FactoryThread supports connections to major relational databases. This guide covers configuration for each supported database type.

SQL Server
Microsoft SQL Server is fully supported, including Azure SQL Database.
Connection Settings
| Field | Description | Example |
|---|---|---|
| Name | Your descriptive name | "Production Sales DB" |
| Server | Hostname or IP address | sql.company.com or 192.168.1.100 |
| Port | Server port (default: 1433) | 1433 |
| Database | Database name | SalesDB |
| Authentication | Method to authenticate | See below |
Authentication Options
SQL Server Authentication
- Enter username and password
- Most common for applications
- User must exist in the database
Windows Authentication
- Uses Windows/Active Directory credentials
- Server must trust the domain
- Requires NTLM or Kerberos
Azure Active Directory
- For Azure SQL Database
- Uses Azure AD credentials
- Supports MFA (interactive mode only)
Advanced Options
Encrypt Connection Enable TLS encryption for data in transit.
Trust Server Certificate Accept self-signed certificates. Only use in development.
Connection Timeout How long to wait for initial connection (default: 30 seconds).
Command Timeout How long queries can run before timing out.
Example Configuration
Name: Production Sales
Server: sql-prod.company.com
Port: 1433
Database: SalesDB
Authentication: SQL Server
Username: factorythread_svc
Password: ********
Encrypt: Yes
PostgreSQL
PostgreSQL connections support versions 10 and above.
Connection Settings
| Field | Description | Example |
|---|---|---|
| Name | Your descriptive name | "Analytics Warehouse" |
| Host | Hostname or IP | pg.company.com |
| Port | Server port (default: 5432) | 5432 |
| Database | Database name | analytics |
| Username | Database user | factorythread |
| Password | User password | ******** |
SSL Options
SSL Mode:
| Mode | Description |
|---|---|
| Disable | No SSL |
| Require | SSL required, no verification |
| Verify-CA | SSL with CA verification |
| Verify-Full | SSL with CA and hostname verification |
For production, use Verify-Full when possible.
Connection Pooling
PostgreSQL supports connection pooling:
- Min Pool Size - Minimum connections to maintain
- Max Pool Size - Maximum concurrent connections
Adjust based on your usage patterns and database limits.
Amazon Redshift
Connect to your Redshift data warehouse for analytics workloads.
Connection Settings
| Field | Description | Example |
|---|---|---|
| Name | Your descriptive name | "Sales Data Warehouse" |
| Cluster Endpoint | Redshift endpoint | cluster.abc123.region.redshift.amazonaws.com |
| Port | Cluster port (default: 5439) | 5439 |
| Database | Database name | warehouse |
| Username | Database user | factorythread |
| Password | User password | ******** |
IAM Authentication
For enhanced security, use IAM authentication:
- Create an IAM role with Redshift access
- Enable IAM authentication on your cluster
- Configure the connection to use IAM
Best Practices
- Use a dedicated Redshift user for FactoryThread
- Grant SELECT permissions only on necessary schemas
- Use WLM queues to manage query priority
- Monitor query performance in Redshift console
IBM DB2
Connect to IBM DB2 databases, including DB2 for z/OS and DB2 for i.
Connection Settings
| Field | Description | Example |
|---|---|---|
| Name | Your descriptive name | "ERP System" |
| Host | Database server | db2.company.com |
| Port | Server port | 50000 |
| Database | Database name | ERPDB |
| Username | Database user | factorythread |
| Password | User password | ******** |
Platform-Specific Notes
DB2 for LUW (Linux, Unix, Windows)
- Standard configuration as above
- Supports connection pooling
DB2 for z/OS
- May require additional client configuration
- Consult your DBA for specific settings
DB2 for i (AS/400)
- Use the system name as host
- Library list affects table visibility
Microsoft Access
Connect to Access databases (.accdb, .mdb files).
Connection Settings
| Field | Description | Example |
|---|---|---|
| Name | Your descriptive name | "Legacy Customer DB" |
| File Path | Path to database file | \\server\share\database.accdb |
| Password | Database password (if set) | ******** |
Limitations
- Access databases have size limits (2GB)
- Concurrent connections are limited
- Network file shares may have latency
- Consider migrating to SQL Server for production workloads
General Configuration
Naming Connections
Use clear, descriptive names:
- Include environment: "Production", "Staging", "Dev"
- Include purpose: "Sales Data", "ERP", "Analytics"
- Example: "Production - Sales Database"
Testing Connections
Always test before saving:
- Click Test Connection
- Success: Green checkmark, entity count displayed
- Failure: Error message with details
Firewall Configuration
Ensure your database allows connections from FactoryThread:
Cloud-hosted databases:
- Add FactoryThread IP addresses to allowed list
- Or use VPC peering/private endpoints
On-premises databases:
- Configure firewall rules
- Ensure network routing allows traffic
Service Accounts
Best practices for database users:
-
Create dedicated users
- Don't use personal accounts
- Don't use admin/sa accounts
-
Minimal permissions
- Grant SELECT on tables you need
- Grant EXECUTE on stored procedures if needed
- Avoid broad permissions
-
Password policies
- Use strong passwords
- Rotate periodically
- Don't reuse across environments
Entity Discovery
After connecting, FactoryThread discovers available entities:
What's Discovered
- Tables - Base tables in accessible schemas
- Views - Database views
- Stored Procedures - Procedures with result sets (varies by database)
Controlling Discovery
Schema filtering: Some databases let you specify which schemas to discover:
- Reduces discovery time
- Hides irrelevant objects
Permission-based: Discovery only shows objects the connection user can access.
Refreshing Entities
When database schema changes:
- Open the connection
- Click Refresh Entities
- New tables/columns appear
- Removed objects are flagged
Troubleshooting
Common Connection Errors
"Cannot connect to server"
- Verify hostname/IP is correct
- Check port number
- Ensure server is running
- Test network connectivity (ping, telnet)
"Login failed"
- Verify username and password
- Check user exists in database
- Verify authentication method matches
"Database does not exist"
- Check database name spelling
- Verify user has access to database
- Check case sensitivity
"SSL certificate error"
- Certificate may be expired
- CA not trusted
- Hostname mismatch
Performance Issues
Slow entity discovery:
- Large databases take longer
- Filter to specific schemas
- Check database performance
Slow queries:
- Database may need optimization
- Add indexes on frequently queried columns
- Review query execution plans
Timeout errors:
- Increase timeout settings
- Optimize slow queries
- Check network latency
Next Steps
- Connections Overview - General connection management
- Entity Node - Using entities in workflows
- Troubleshooting - Connection issues