|
1 | 1 | .\" This is -*-nroff-*- |
2 | | -.\" XXX standard disclaimer belongs here.... |
3 | | -.\" $Header: /cvsroot/pgsql/doc/man/Attic/bki.5,v 1.1.1.1 1996/08/18 22:14:20 scrappy Exp $ |
4 | | -.TH BKI FILES 01/23/93 Postgres95 Postgres95 |
| 2 | +.\" $Header: /cvsroot/pgsql/doc/man/Attic/bki.5,v 1.2 1996/11/09 10:29:44 scrappy Exp $ |
| 3 | +.TH BKI 5 11/04/96 Postgres Postgres |
5 | 4 | .SH NAME |
6 | | -\&.../src/backend/obj/{local,dbdb}.bki\(em template scripts |
| 5 | +*.bki |
7 | 6 | .SH DESCRIPTION |
8 | | -Backend Interface (BKI) files are scripts that describe the contents |
9 | | -of the initial Postgres database. This database is constructed during |
10 | | -system installation, by the |
11 | | -.IR initdb |
12 | | -command. |
13 | | -.IR Initdb |
14 | | -executes the Postgres backend with a special set of flags, that cause it |
15 | | -to consume the BKI scripts and bootstrap a database. |
| 7 | +Backend Interface (BKI) files are scripts that are input to the postgres |
| 8 | +backend running in the special "bootstrap" mode that allows it to perform |
| 9 | +database functions without a database system already existing. BKI files |
| 10 | +can therefore be used to create the database system in the first place. |
16 | 11 | .PP |
17 | | -These files are automatically generated from system header files |
18 | | -during installation. They are not intended for use by humans, and you |
19 | | -do not need to understand their contents in order to use Postgres. These |
20 | | -files are copied to |
21 | | -.nf |
22 | | -\&.../files/{global1,local1_XXX}.bki |
23 | | -.fi |
24 | | -during system installation. |
25 | | -.PP |
26 | | -All new user databases will be created by copying the template |
27 | | -database that Postgres constructs from the BKI files. Thus, a simple way |
28 | | -to customize the template database is to let the Postgres initialization |
29 | | -script create it for you, and then to run the terminal monitor to make |
30 | | -the changes you want. |
| 12 | +.IR Initdb |
| 13 | +uses BKI files to do just that -- create a database system. However, |
| 14 | +.IR initdb's |
| 15 | +BKI files are generated internally. It generates them using the files |
| 16 | +global1.bki.source and local1.template1.bki.source, which it finds in the |
| 17 | +Postgres "library" directory. They get installed there as part of installing |
| 18 | +Postgres. These .source files get build as part of the Postgres build |
| 19 | +process, by a build program called |
| 20 | +.IR genbki.Genbki |
| 21 | +takes as input Postgres source files that double as |
| 22 | +.IR genbki |
| 23 | +input that builds tables and C header files that describe those |
| 24 | +tables. |
31 | 25 | .PP |
32 | 26 | The Postgres backend interprets BKI files as described below. This |
33 | | -description will be easier to understand if the example in |
34 | | -\*(lq.../files/global1.bki\*(rq is at hand. |
| 27 | +description will be easier to understand if the global1.bki.source file is |
| 28 | +at hand as an example. (As explained above, this .source file isn't quite |
| 29 | +a BKI file, but you'll be able to guess what the resulting BKI file would be |
| 30 | +anyway). |
35 | 31 | .PP |
36 | 32 | Commands are composed of a command name followed by space separated |
37 | 33 | arguments. Arguments to a command which begin with a\*(lq$\*(rq are |
@@ -220,5 +216,4 @@ close pg_opclass |
220 | 216 | .SH "SEE ALSO" |
221 | 217 | initdb(1), |
222 | 218 | createdb(1), |
223 | | -createdb(l), |
224 | | -template(files). |
| 219 | +create_database(l). |