PowerDNS OpenDBX Backend/Configuration/Database specific
Contents
MySQL
Supported without changes since OpenDBX 1.0.0.
The file below also contains trigger definitions which are necessary for "auto serial" support, but they are only available in MySQL 5 and later. If you are still using MySQL 4.x and don't want to utilize the automatically generated zone serials, you can safely remove the "CREATE TRIGGER" statements from the file before creating the database tables.
PostgreSQL
Supported without changes since OpenDBX 1.0.0
SQLite and SQLite3
Supported without changes since OpenDBX 1.0.0 but requires to set opendbx-host to the path of the SQLite file (including the trailing slash or backslash, depending on your operating system) and opendbx-database to the name of the file, e.g.
opendbx-host-read = /path/to/file/ opendbx-host-write = /path/to/file/ opendbx-database = powerdns.sqlite
Firebird/Interbase
Supported by PowerDNS 2.9.20 and OpenDBX 1.1.4 but requires to set opendbx-database to the path of the database file and doesn't support the default statement for starting transactions. Please add the following lines to your pdns.conf:
opendbx-database = /var/lib/firebird2/data/powerdns.gdb opendbx-sql-transactbegin = SET TRANSACTION
When creating the database please make sure that you call the isql tool with the parameter "-page 4096". Otherwise, you will get an error (key size exceeds implementation restriction for index "pdns_unq_domains_name") when creating the tables.
isql -u SYSDBA -page 4096
MS SQL Server
Supported by PowerDNS 2.9.20 (with latest patch) and OpenDBX 1.1.4 by using the FreeTDS library. It uses a different scheme for host configuration (requires the name of the host section in the configuration file of the dblib client library) and doesn't support the default statement for starting transactions. Please add the following lines to your pdns.conf:
opendbx-host-read = MSSQL2k opendbx-host-write = MSSQL2k opendbx-sql-transactbegin = BEGIN TRANSACTION
MS SQL Server table definitions
Sybase ASE
Supported by PowerDNS 2.9.20 (with latest patch) and OpenDBX 1.1.5 by using the native Sybase ctlib or the FreeTDS library. It uses a different scheme for host configuration (requires the name of the host section in the configuration file of the ctlib client library) and doesn't support the default statement for starting transactions. Please add the following lines to your pdns.conf:
opendbx-host-read = SYBASE opendbx-host-write = SYBASE opendbx-sql-transactbegin = BEGIN TRANSACTION
Oracle
Supported by PowerDNS 2.9.20 (with latest patch) and OpenDBX 1.1.6. It uses a different syntax for transactions and requires the following additional line in your pdns.conf:
opendbx-sql-transactbegin = SET TRANSACTION NAME 'AXFR'