PowerDNS OpenDBX Backend/Configuration/GSQL only

From Linuxnetworks
< PowerDNS OpenDBX Backend
Revision as of 11:18, 28 May 2012 by Nose (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The PowerDNS opendbx backend allows you to adapt the SQL statements so the backend will work with the database schema of the gMySQL/gPgSQL backends too if you modify the statements like listed below.

Note: The statements below don't use the indices as optimal as before and this might lead to a lower performance than before.

Modified SQL statements

opendbx-sql-lookupsoa 
Retrieve SOA record for domain. Default is:
SELECT
  d."id", NULL, r."ttl", r."content"
FROM "records" r
JOIN "domains" d ON r."domain_id"=d."id"
WHERE r."name"=':name' AND r."type"='SOA'
opendbx-sql-zoneinfo 
Get stored information about a domain. Default is:
SELECT
  d."id", d."name", d."type",
  d."master", d."last_check", r."content"
FROM "domains" d
LEFT JOIN "records" r ON ( d."id"=r."domain_id" AND r."type"='SOA' )
WHERE d."name"=':name'
opendbx-sql-master 
Get master record for zone. Default is:
SELECT "master"
FROM "domains"
WHERE "name"=':name' AND "type"='SLAVE'
opendbx-sql-infoslaves 
Get all unfresh slaves. Default is:
SELECT
  d."id", d."name", d."master", d."notified_serial",
  d."last_check", r."change_date", r."content"
FROM "domains" d
LEFT JOIN "records" r ON ( d."id"=r."domain_id" AND r."type"='SOA' )
WHERE d."type"='SLAVE'
opendbx-sql-infomasters 
Get all updates masters. Default is:
SELECT
  d."id", d."name", d."master", d."notified_serial",
  d."last_check", r."change_date", r."content"
FROM "domains" d
JOIN "records" r ON d."id"=r."domain_id"
WHERE d."type"='MASTER' AND r."type"='SOA'