From: Bruce Momjian Date: Tue, 22 Feb 2005 02:54:19 +0000 (+0000) Subject: Update initdb locale/encoding documentation description. Backpatch to X-Git-Tag: REL9_0_0~10739 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=78bb800bc288f141e04411de278b6f55547a775d;p=pg-rex%2Fsyncrep.git Update initdb locale/encoding documentation description. Backpatch to 8.0.X. --- diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index ab6ceb216e..7f22b0400f 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -1,5 +1,5 @@ @@ -43,34 +43,23 @@ PostgreSQL documentation - Creating a database cluster consists of creating the directories in which - the database data will live, generating the shared catalog tables - (tables that belong to the whole cluster rather than to any particular - database), and creating the template1 - database. When you later create a new database, everything in the - template1 database is copied. - It contains catalog tables filled in for things like the - built-in types. + Creating a database cluster consists of creating the directories in + which the database data will live, generating the shared catalog + tables (tables that belong to the whole cluster rather than to any + particular database), and creating the template1 + database. When you later create a new database, everything in the + template1 database is copied. It contains catalog + tables containing things like built-in data types. - initdb initializes the database cluster's default - locale and character set encoding. Some locale categories are fixed - for the lifetime of the cluster. There is also a performance impact - in using locales other than C or POSIX. - Therefore it is important to make the right choice when running - initdb. Other locale categories can be changed - later when the server is started. initdb will - write those locale settings into the - postgresql.conf configuration file so they are - the default, but they can be changed by editing that file. To set the - locale that initdb uses, see the description of - the option. The character set encoding can - be set separately for each database as it is created. - initdb determines the encoding for the - template1 database, which will serve as the - default for all other databases. To alter the default encoding use - the option. + Although initdb will attempt to create the + specified data directory, it might not have permission if the parent + directory of the desired data directory is root-owned. To initialize + in such a setup, create an empty data directory as root, then use + chown to assign ownership of that directory to the + database user account, then su to become the + database user to run initdb. @@ -83,15 +72,28 @@ PostgreSQL documentation - Although initdb will attempt to create the - specified data directory, often it won't have permission to do so, - since the parent of the desired data directory is often a root-owned - directory. To set up an arrangement like this, create an empty data - directory as root, then use chown to hand over - ownership of that directory to the database user account, then - su to become the database user, and - finally run initdb as the database user. + initdb initializes the database cluster's default + locale and character set encoding. The collation order + (LC_COLLATE) and character set classes + (LC_CTYPE, e.g. upper, lower, digit) are fixed for all + databases and can not be changed. Collation orders other than + C or POSIX also have a performance penalty. + For these reasons it is important to choose the right locale when + running initdb. The remaining locale categories + can be changed later when the server is started. All server locale + values (lc_*) can be displayed via SHOW ALL. + More details can be found in . + + + The character set encoding can be set separately for a database when + it is created. initdb determines the encoding for + the template1 database, which will serve as the + default for all other databases. To alter the default encoding use + the option. More details can be found in + . + +