Installing Third-Party Database Drivers
Some Tabsdata connectors depend on Python database drivers that Tabsdata cannot redistribute because of their licensing terms. These drivers are not included in the Tabsdata distribution, and are not installed by default.
If you use one of the affected connectors, you must install its driver explicitly as part of the Tabsdata installation.
Which drivers do I need?
| Connector | Required package |
|---|---|
| MySQL, MySQL CDC, MariaDB | mysql-connector-python |
| PostgreSQL, PostgreSQL CDC | psycopg2-binary |
| Oracle | oracledb |
Declaring the drivers
The Tabsdata package must be installed twice when creating a Tabsdata server: once in your own terminal before running tdkserver quickstart, and once more by the Tabsdata server's own shell process when it is being created. As a result, driver installation instructions must be passed as a plain pip requirements file listing the drivers and their versions that should be installed on Tabsdata's shell process.
Adding a driver to a Tabsdata server
Use tdkserver venv update to add or change database drivers.
mysql-connector-python==9.6.0
psycopg2-binary==2.9.12
oracledb==3.2.0
tdkserver venv update commandtdkserver venv update --instance <TABSDATA_INSTANCE> --name fn --requirements <REQS_FILE>
tdkserver venv update --instance <TABSDATA_INSTANCE> --name ag --requirements <REQS_FILE>
You need to add the requirements to both fn and ag, otherwise the Tabsdata AI Agent and
MCP server won't be able to access your external systems to fetch metadata and sample data.
Until the driver is present in the environment that executes functions, any connector that needs it will fail at run time.
When using Kminus (quickstart), Tabsdata is restarted as part of this update. When using EKS, Tabsdata is not restarted.
EKS installation
For an EKS installation the requirements file lives inside the instance's init assets.
tdkserver init
~/.tabsdata/instances/<TABSDATA_INSTANCE>/init/assets/configs/requirements-td.txt
Add the necessary database drivers as shown in Declaring the drivers:
mysql-connector-python==9.6.0
psycopg2-binary==2.9.12
oracledb==3.2.0
See Install on EKS.
The drivers are baked into the function runner environment during setup, so they are available to connector functions at execution time.
Troubleshooting
A connector fails with a missing-module error. The driver for that connector
is not installed in the environment running the function. Confirm that the
package is listed in the requirements file, that tdkserver venv update ran
against both fn and ag (or, for EKS, that the file is in the instance configs
directory), and that the update has been re-run since the file changed.
The driver fails to build during installation. Prefer the binary
distributions named above (psycopg2-binary rather than psycopg2). If a build
is still attempted, the installation environment is missing the compiler or
client-library headers that the driver's source distribution needs.