Table A-4. MySQL backend capabilities
Native | Yes |
Master | No |
Slave | No |
Superslave | No |
Autoserial | Yes |
Case | Insensitive |
Module name | pdns |
Lauch name | pdns |
This is the driver that corresponds to the set of XML-RPC tools available from PowerDNS.
The schema:
CREATE TABLE MailForwards ( Id int(10) unsigned NOT NULL auto_increment, ZoneId int(10) unsigned NOT NULL default '0', Name varchar(255) NOT NULL default '', Destination varchar(255) NOT NULL default '', Flags int(11) NOT NULL default '0', ChangeDate timestamp(14) NOT NULL, CreateDate timestamp(14) NOT NULL, Active tinyint(4) NOT NULL default '0', PRIMARY KEY (Id), KEY NameIndex (Name), KEY ZoneIdIndex (ZoneId) ); -- -- Table structure for table 'Mailboxes' -- CREATE TABLE Mailboxes ( Id int(10) unsigned NOT NULL auto_increment, ZoneId int(10) unsigned NOT NULL default '0', Name varchar(255) NOT NULL default '', Password varchar(255) NOT NULL default '', Quota int(10) unsigned NOT NULL default '0', Flags int(11) NOT NULL default '0', ChangeDate timestamp(14) NOT NULL, CreateDate timestamp(14) NOT NULL, Active tinyint(4) NOT NULL default '0', PRIMARY KEY (Id), UNIQUE KEY Name (Name), KEY ZoneIdIndex (ZoneId), KEY NameIndex (Name) ); -- -- Table structure for table 'Records' -- CREATE TABLE Records ( Id int(10) unsigned NOT NULL auto_increment, ZoneId int(10) unsigned NOT NULL default '0', Name varchar(255) NOT NULL default '', Type varchar(8) NOT NULL default '', Content varchar(255) NOT NULL default '', TimeToLive int(11) NOT NULL default '60', Priority int(11) NOT NULL default '0', Flags int(11) NOT NULL default '0', ChangeDate timestamp(14) NOT NULL, CreateDate timestamp(14) NOT NULL, Active tinyint(4) NOT NULL default '0', PRIMARY KEY (Id), KEY NameIndex (Name) ); -- -- Table structure for table 'WebForwards' -- CREATE TABLE WebForwards ( Id int(10) unsigned NOT NULL auto_increment, ZoneId int(10) unsigned NOT NULL default '0', Name varchar(255) NOT NULL default '', Destination varchar(255) NOT NULL default '', Type varchar(7) NOT NULL default 'NORMAL', Title varchar(255) NOT NULL default '', Description varchar(255) NOT NULL default '', Keywords varchar(255) NOT NULL default '', FavIcon varchar(255) NOT NULL default '', Flags int(11) NOT NULL default '0', ChangeDate timestamp(14) NOT NULL, CreateDate timestamp(14) NOT NULL, Active tinyint(4) NOT NULL default '0', PRIMARY KEY (Id), KEY NameIndex (Name), KEY ZoneIdIndex (ZoneId) ); -- -- Table structure for table 'Zones' -- CREATE TABLE Zones ( Id int(10) unsigned NOT NULL auto_increment, Name varchar(255) NOT NULL default '', Hostmaster varchar(255) NOT NULL default '', Serial int(10) unsigned NOT NULL default '0', AutoSerial tinyint(4) NOT NULL default '0', Flags int(11) NOT NULL default '0', ChangeDate timestamp(14) NOT NULL, CreateDate timestamp(14) NOT NULL, Active tinyint(4) NOT NULL default '0', TimeToLive int(11) NOT NULL default '0', OwnerId varchar(255) NOT NULL default '', PRIMARY KEY (Id), UNIQUE KEY Name (Name), KEY NameIndex (Name) );
It takes a number of parameters:
Database name to connect to
Database host to connect to
Password to connect with
MySQL socket to use for connecting
MySQL user to connect as
It has been observed that InnoDB tables outperform the default MyISAM tables by a large margin. Furthermore, the default number of backends (3) should be raised to 10 or 15 for busy servers.