Skip to content

Database Connectors

Database connectors extract data directly from relational and document databases. Each connector uses the database’s native wire protocol for efficient data transfer and supports schema discovery to auto-detect tables, columns, and data types.

All database connectors follow the same 5-step configuration flow. This page covers the connection settings specific to each database type.

PostgreSQL

PostgreSQL is the most commonly used database connector. It supports all PostgreSQL-compatible databases, including Amazon RDS, Aurora PostgreSQL, Google Cloud SQL, and Azure Database for PostgreSQL.

Required fields

FieldDescription
HostHostname or IP address of the PostgreSQL server
PortTCP port (default: 5432)
DatabaseName of the database to connect to
UsernameDatabase user with read access to the target tables
PasswordPassword for the database user

Optional settings

FieldDescription
SchemaRestrict discovery to a specific schema. If omitted, Rime discovers tables in all schemas the user can read (excluding pg_catalog and information_schema)
SSL ModeConnection encryption setting. Options: disable, prefer (default), require, verify-ca, verify-full

SSL/TLS notes

For cloud-hosted PostgreSQL (RDS, Cloud SQL, Aurora), set SSL mode to require at minimum. If your provider supplies a CA certificate, use verify-ca or verify-full to validate the server’s identity. Upload the CA certificate through the connector configuration form.

Common connection issues

  • Connection refused: verify the host and port are correct, and that the PostgreSQL server allows connections from Rime’s IP addresses. Check pg_hba.conf for host-based authentication rules.
  • Authentication failed: confirm the username and password. Some managed services require IAM authentication rather than password auth.
  • SSL required: if the server requires SSL and you selected disable, the connection will be rejected. Set SSL mode to require or higher.
  • No tables discovered: the user may lack SELECT privileges on the target tables, or the specified schema may not exist.

MySQL

Supports MySQL 5.7+, MySQL 8.x, MariaDB 10.3+, Amazon RDS MySQL, Aurora MySQL, Google Cloud SQL for MySQL, and Azure Database for MySQL.

Required fields

FieldDescription
HostHostname or IP address of the MySQL server
PortTCP port (default: 3306)
DatabaseName of the database to connect to
UsernameDatabase user with read access
PasswordPassword for the database user

Optional settings

FieldDescription
SSLEnable or disable SSL for the connection. Options: disabled, required, verify-identity

SSL/TLS notes

MySQL’s SSL configuration is simpler than PostgreSQL’s. Set SSL to required for cloud-hosted instances. The verify-identity option checks the server’s certificate against the hostname, which requires a valid CA certificate chain.

Common connection issues

  • Access denied: MySQL uses a combination of username, password, and source host for authentication. Ensure the user is granted access from Rime’s IP address (e.g., 'user'@'%' or a specific IP).
  • Unknown database: the database name is case-sensitive on Linux-based MySQL servers.
  • Too many connections: the MySQL server has reached its max_connections limit. Rime uses a small connection pool, but this may conflict with other applications using the same server.

Microsoft SQL Server

Supports SQL Server 2016+, Azure SQL Database, Azure SQL Managed Instance, and Amazon RDS for SQL Server.

Required fields

FieldDescription
HostHostname or IP address of the SQL Server
PortTCP port (default: 1433)
DatabaseName of the database
UsernameSQL Server login with read access
PasswordPassword for the login

Optional settings

FieldDescription
Instance nameNamed instance (e.g., MSSQLSERVER). Leave blank for the default instance. When set, the port field is typically ignored because SQL Server Browser resolves the port for named instances
EncryptionConnection encryption. Options: optional (default), required, strict

SSL/TLS notes

Azure SQL Database enforces encryption by default. For on-premises SQL Server, set encryption to required if TLS is configured on the server. The strict option (SQL Server 2022+) uses TDS 8.0 with full certificate validation.

Common connection issues

  • Named instance not found: SQL Server Browser service must be running on the server for named instance resolution. Alternatively, specify the port directly and leave the instance name blank.
  • Login failed: SQL Server authentication must be enabled (not just Windows Authentication). Check SQL Server’s authentication mode in server properties.
  • Cannot reach host: SQL Server may be listening on a non-default port or behind a firewall. Verify with telnet host port from a machine on the same network.

MongoDB

Supports MongoDB 4.4+, MongoDB Atlas, Amazon DocumentDB (with MongoDB compatibility), and Azure Cosmos DB for MongoDB.

Required fields

FieldDescription
Connection stringFull MongoDB URI (e.g., mongodb+srv://user:[email protected]/dbname). The connection string includes authentication credentials, host, and connection options
DatabaseDatabase name to extract from. This can also be specified in the connection string, but the form field takes precedence if both are provided

Optional settings

FieldDescription
Authentication sourceThe database used for authentication (default: admin). Change this if your user is defined in a different database

Sync behaviour

MongoDB is a document database, so Rime handles it differently from relational sources:

  • Collections as tables: each MongoDB collection maps to a Snowflake table.
  • Schema inference: Rime samples documents from each collection to infer a tabular schema. Nested objects are flattened with dot notation (e.g., address.city becomes a column named address_city).
  • Arrays: arrays of scalar values are stored as JSON strings. Arrays of objects are not flattened — they remain as JSON in the destination column.

Common connection issues

  • Authentication failed: MongoDB Atlas uses SCRAM authentication by default. Ensure the user exists in the correct authentication database.
  • DNS resolution failed: mongodb+srv:// URIs require DNS SRV record resolution. If your environment cannot resolve SRV records, use a standard mongodb:// URI with explicit host and port.
  • Timeout: MongoDB Atlas clusters have IP whitelisting enabled by default. Add Rime’s IP addresses to the Atlas Network Access list.

Oracle

Supports Oracle Database 12c+, Oracle Autonomous Database, Amazon RDS for Oracle, and Oracle Cloud Infrastructure Database.

Required fields

FieldDescription
HostHostname or IP address of the Oracle server
PortTCP port (default: 1521)
UsernameDatabase user with read access
PasswordPassword for the database user

Connection identifier

Provide one of the following to identify the database:

FieldDescription
SIDSystem Identifier for the database instance
Service nameOracle service name (preferred for RAC and pluggable databases). Use service name if your DBA provides one; SID is legacy but still common

If both are provided, the service name takes precedence.

Common connection issues

  • ORA-12541: TNS no listener: the Oracle listener is not running on the specified host and port, or a firewall is blocking access.
  • ORA-01017: invalid username/password: Oracle passwords are case-sensitive by default in 12c+.
  • ORA-12514: TNS listener does not currently know of service: the service name or SID does not match a running database. Check with lsnrctl status on the Oracle server.
  • Character encoding: Rime reads data using UTF-8. If your Oracle database uses a different character set (e.g., WE8ISO8859P1), special characters may require mapping.

Next steps