Configuring Microsoft SQL Server access
This section describes how to configure RDRS to access Microsoft SQL Server databases on Windows and Linux/Unix platforms. This section also includes ODBC driver requirements, repository definitions, CDC configuration, and troubleshooting.
Prerequisites
Before configuring Microsoft SQL Server connectivity, ensure the following prerequisites are met:
ODBC Driver Software
RDRS connects to Microsoft SQL Server using the ODBC interface. The appropriate ODBC driver must be installed on the system where the RDRS agent runs.
| Platform | Microsoft SQL Server Client Library Requirements |
|---|---|
| Windows |
|
| Linux/Unix |
|
Supported Versions
RDRS supports Microsoft SQL Server 2008 and later for CDC operations. Bulk transfer and batch compare are supported on SQL Server 2005 and later.
Network Requirements
The RDRS agent must be able to reach the SQL Server instance over TCP/IP on the configured port (default: 1433). Verify that firewalls and network security groups allow this connection.
RDRS License and Agent Verification
The RDRS license must include the appropriate Microsoft SQL Server features.
Input features (bulk, compare, CDC) and the output feature are licensed separately:
- Input: RDRS Microsoft SQL Server Bulk, Compare, DBMS, or Log feature.
- Output: RDRS Microsoft SQL Server Update feature.
When the RDRS agent starts, it attempts to load the Microsoft SQL-Server client library. Successful loading is reported in the agent log (tcAgent.log).
Verifying Microsoft SQL-Server availability
Check the agent log at startup for one of the following messages:
- TVS066I Access to Microsoft SQL-Server is possible, Load of module
<library> was successful. Microsoft SQL-Server access is available. The
library name varies by platform.
The agent reports both ODBC driver and SQL Server client availability separately.
- TVS067I Access to Microsoft SQL-Server not possible, Unable to load module <library>. The ODBC driver or SQL Server client library could not be found or loaded. Verify the ODBC driver installation.
If Microsoft SQL-Server does not appear as a data source or output target type in the Dashboard, verify that the license includes Microsoft SQL-Server and that the client library is accessible to the agent.
Setting up SQL Server Connectivity
Setting up SQL Server connectivity in RDRS requires information that is typically only available from the SQL Server database administrator (DBA).
Before starting the configuration, gather the following:
- Server host and instance name: the host name or IP address of the SQL Server, and the instance name if a named instance is used.
- Database name: the name of the database to connect to.
- Authentication method: whether SQL Server authentication, Windows trusted connection, or Entra ID authentication is used.
- Database user and password: a database user with sufficient privileges (SELECT for bulk, db_owner or CDC reader roles for CDC).
- ODBC driver version: which Microsoft ODBC Driver for SQL Server is installed on the RDRS agent machine.
- CDC configuration (for CDC): whether SQL Server CDC is enabled on the database (sys.sp_cdc_enable_db) and on the tables to be captured (sys.sp_cdc_enable_table).
- SQL Server version: the version of the SQL Server instance (2008 or later for CDC, 2005 or later for bulk).
Configuring SQL Server Connectivity
The RDRS agent connects to SQL Server using an ODBC connection string. The connection parameters are configured through the RDRS Dashboard in the data source definition.
The connection string is assembled from the following parameters:
- SERVER: The host name or IP address of the SQL Server instance.
- DATABASE: The name of the database to connect to.
- UID / PWD: User name and password for SQL Server authentication.
- Trusted_Connection=Yes: Used when Windows authentication (trusted connection) is selected instead of SQL Server authentication.
For Azure SQL Server connections, the following additional authentication methods are available:
- Entra ID Authentication (formerly Azure AD): Uses managed identity or service principal credentials.
- SQL Server Authentication with trusted connection: The authentication is performed through the Windows domain.
RDRS Repository Definitions
Repository definitions connect the RDRS metadata to the SQL Server database. These definitions are required before import or process definitions can reference the SQL Server database.
CDC Setup — SQL Server Change Data Capture
RDRS uses the built-in SQL Server CDC feature to capture changes from SQL Server databases. SQL Server CDC tracks INSERT, UPDATE, and DELETE operations on user tables and records them in change tables.
How RDRS Uses SQL Server CDC
SQL Server writes all changes to marked user tables into CDC change tables. RDRS polls these change tables and processes the captured changes for replication to the configured output target.
Database Prerequisites
CDC must be enabled at both the database level and on each individual table to be captured.
Enable CDC on the database:
EXEC sys.sp_cdc_enable_db
Enable CDC on each table to be captured:
EXEC sys.sp_cdc_enable_table @source_schema = N'dbo', @source_name = N'<tablename>', @role_name = NULL
The SQL Server Agent service must be running. CDC uses SQL Server Agent jobs for the capture and cleanup processes. Verify that the capture and cleanup jobs are created and running after enabling CDC.
Database User Privileges
The database user configured in the RDRS data source must have the following permissions:
- Membership in the fixed server role sysadmin is mandatory for local SQL Server & Azure SQL Managed Instance.
- Membership in the db_owner database role is sufficient for Azure SQL Database (PaaS).
In this scenario there is no server-wide sysadmin role.
Troubleshooting
- SQL Server not available in Dashboard: Verify that the RDRS license includes the SQL Server feature and that the agent was able to load the ODBC driver libraries. Check the agent log for the library load message.
- Connection test fails: Verify the host name, port, and credentials. Ensure the SQL Server instance allows TCP/IP connections and that the firewall permits access on the configured port.
- CDC changes not captured: Verify that CDC is enabled on both the database and the individual tables. Check that the SQL Server Agent service is running and the capture job is active.
- Driver not found on Linux: Ensure the Microsoft ODBC Driver for SQL Server is installed and that libodbc.so is accessible via LD_LIBRARY_PATH.