Table of Contents
Backend Interface (BKI) files are scripts in a special language that is understood by the PostgreSQL backend when running in the “bootstrap” mode. The bootstrap mode allows system catalogs to be created and filled from scratch, whereas ordinary SQL commands require the catalogs to exist already. BKI files can therefore be used to create the database system in the first place. (And they are probably not useful for anything else.)
initdb uses a BKI file to do part of its job when creating a
new database cluster. The input file used by initdb is created as part of building and
installing PostgreSQL by a program
genbki.pl, which reads some
specially formatted C header files in the
src/include/catalog/ directory of the source
tree. The created BKI file is
postgres.bki and is normally
installed in the
of the installation tree.
Related information can be found in the documentation for initdb.
If you see anything in the documentation that is not correct, does not match your experience with the particular feature or requires further clarification, please use this form to report a documentation issue.