1			SQLite BIND SDB driver
2
3The SQLite BIND SDB "driver" is intended as an alternative both to the
4pgsqldb and dirdb drivers, for situations that would like the management
5simplicity and convenience of single filesystem files, with the additional
6capability of SQL databases.  It is also intended as an alternative to
7the standard dynamic DNS update capability in bind, which effectively
8requires use of DNSSEC keys for authorization and is limited to 'nsupdate'
9for updates.  An sqlite database, by contrast, uses and requires only
10normal filesystem permissions, and may be updated however a typical SQLite
11database might be updated, e.g., via a web service with an SQLite backend.
12
13This driver is not considered suitable for very high volume public
14nameserver use, while likely useful for smaller private nameserver
15applications, whether or not in a production environment.  It should
16generally be suitable wherever SQLite is preferable over larger database
17engines, and not suitable where SQLite is not preferable.
18
19Usage:
20
21o Use the named_sdb process ( put ENABLE_SDB=yes in /etc/sysconfig/named )
22
23o Edit your named.conf to contain a database zone, eg.:
24
25zone "mydomain.net." IN {
26        type master;
27        database "sqlite /etc/named.d/mydomain.db mydomain";
28        #                ^- DB file               ^-Table
29};
30
31o Create the database zone table
32  The table must contain the columns "name", "rdtype", and "rdata", and
33  is expected to contain a properly constructed zone.  The program
34  "zone2sqlite" creates such a table.
35
36  zone2sqlite usage:
37
38    zone2sqlite origin zonefile dbfile dbtable
39
40    where
41	origin   : zone origin, eg "mydomain.net."
42	zonefile : master zone database file, eg. mydomain.net.zone
43	dbfile   : name of SQLite database file
44        dbtable  : name of table in database
45
46---
47# mydomain.net.zone:
48$TTL 1H
49@       SOA     localhost.      root.localhost. (       1
50                                                3H
51                                                1H
52                                                1W
53                                                1H )
54        NS      localhost.
55host1   A       192.168.2.1
56host2   A       192.168.2.2
57host3   A       192.168.2.3
58host4   A       192.168.2.4
59host5   A       192.168.2.5
60host6   A       192.168.2.6
61host7   A       192.168.2.7
62---
63
64# zone2sqlite mydomain.net. mydomain.net.zone mydomain.net.db mydomain
65
66will create/update the 'mydomain' table in database file 'mydomain.net.db'.
67
68