Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
ZONE2SQL(1)		  PowerDNS Authoritative Server 	     ZONE2SQL(1)

NAME
     zone2sql - convert BIND zones to SQL

SYNOPSIS
     zone2sql {--named-conf=PATH,--zone-file=PATH [--zone-name=NAME]} [Options]

DESCRIPTION
     zone2sql  parses  BIND  named.conf  files	and zonefiles and outputs SQL on
     standard output, which can then be fed to your database.

     zone2sql understands the BIND master file extension $GENERATE and will also
     honour $ORIGIN and $TTL.

     For backends supporting secondary operation there is also an option to keep
     secondary zones as secondaries, and not convert them to native operation.

     zone2sql can generate  SQL  for  the  Generic  MySQL,  Generic  PostgreSQL,
     Generic SQLite3 backend.

OPTIONS
INPUT OPTIONS
     --named-conf=<PATH>
	    Read PATH to get the BIND configuration

     --zone=<PATH>
	    Parse only the zone file at PATH Conflicts with --named-conf parame-
	    ter.

     --zone-name=<NAME>
	    When  parsing  a  single zone without $ORIGIN statement, set ZONE as
	    the zone name.

BACKENDS
     --gmysql
	    Output in format suitable  for  the  default  configuration  of  the
	    Generic MySQL backend.

     --gpgsql
	    Output  in	format	suitable  for  the  default configuration of the
	    Generic PostgreSQL backend.

     --gsqlite
	    Output in format suitable  for  the  default  configuration  of  the
	    Generic SQLite3 backend.

OUTPUT OPTIONS
     --json-comments
	    Parse  JSON in zonefile comments to set the 'disabled' and 'comment'
	    fields in the database. See JSON COMMENTS for more information.

     --transactions
	    If the target SQL backend supports transactions, wrap  every  domain
	    into a transaction for integrity and possibly higher speed.

OTHER OPTIONS
     --delete-matching-domains
	    Adds  a  delete  statement	to  the sql output to allow re-importing
	    zones.  Mostly only useful during testing.	 Since	this  will  only
	    delete the domain, but not its records, you should have the optional
	    foreign  key  relationship	enabled in your schema in order to avoid
	    leaving dangling records.

     --filter-duplicate-soa
	    If there's more than one SOA record in the zone (possibly because it
	    was AXFR'd), ignore it. If this option is not set, all  SOA  records
	    in the zone are emitted.

     --help
	    List all options

     --on-error-resume-next
	    Ignore missing zone files during parsing. Dangerous.

     --secondary
	    Maintain  secondary  status  of  zones listed in named.conf as being
	    slaves.  The default behaviour is to convert all zones to native op-
	    eration.

     --verbose
	    Be verbose during conversion.

JSON COMMENTS
     The Generic SQL backends have the 'comment' and 'disabled'  fields  in  the
     'records' table. The 'comment' field contains a comment for this record (if
     any) and the 'disabled' field tells PowerDNS if the record can be served to
     clients.

     When  a  zonefile	contains  a comment like ; json={"comment": "Something",
     "disabled": true} and --json-comments is provided, the 'comment' field will
     contain "Something" and the 'disabled' field will be set to the  database's
     native true value.

     WARNING: Using JSON comments to disable records means that the zone in Pow-
     erDNS is different from the one served by BIND, as BIND does not handle the
     disabled status in the comment.

SEE ALSO
     pdns_server(1)

AUTHOR
     PowerDNS.COM BV

COPYRIGHT
     PowerDNS.COM BV

				  Jun 29, 2026			     ZONE2SQL(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=zone2sql&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help