<!--
-$Header: /cvsroot/pgsql/doc/src/sgml/ref/createdb.sgml,v 1.16 2000/12/25 23:15:26 petere Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/ref/createdb.sgml,v 1.17 2001/02/18 17:53:54 tgl Exp $
Postgres documentation
-->
Specifies the hostname of the machine on which the
<application>postmaster</application>
is running. If host begins with a slash, it is used
- as the directory for the unix domain socket.
+ as the directory for the Unix-domain socket.
</para>
</listitem>
</varlistentry>
<term>-D, --location <replaceable class="parameter">datadir</replaceable></term>
<listitem>
<para>
- Specifies the alternative database location. See also <xref
+ Specifies the alternative location for the database. See also <xref
linkend="app-initlocation">.
</para>
</listitem>
</varlistentry>
+ <varlistentry>
+ <term>-T, --template <replaceable class="parameter">template</replaceable></term>
+ <listitem>
+ <para>
+ Specifies the template database from which to build this database.
+ </para>
+ </listitem>
+ </varlistentry>
+
<varlistentry>
<term>-E, --encoding <replaceable class="parameter">encoding</replaceable></term>
<listitem>
<para>
- Specifies the character encoding scheme to be used with this database.
+ Specifies the character encoding scheme to be used in this database.
</para>
</listitem>
</varlistentry>
The options <literal>-h</literal>, <literal>-p</literal>, <literal>-U</literal>,
<literal>-W</literal>, and <literal>-e</literal> are passed on literally to
<xref linkend="app-psql">.
+
+ The options <literal>-D</literal>, <literal>-T</literal>, and
+ <literal>-E</literal> are converted into options for the underlying
+ SQL command <xref linkend="SQL-CREATEDATABASE"
+ endterm="SQL-CREATEDATABASE-title">, which see for more information
+ about them.
</para>
</refsect2>
<listitem>
<para>
The comment/description for the database could not be created.
- the database itself will have been created already. You can use the
+ The database itself will have been created already. You can use the
<acronym>SQL</acronym> command <command>COMMENT ON DATABASE</command> to
create the comment later on.
</para>
the <productname>Postgres</productname> interactive terminal
<xref linkend="APP-PSQL">. Thus, there is nothing
special about creating databases via this or other methods. This means
- that the <application>psql</application> must be found by the script and that
- a database server is running at the targeted host. Also, any default
+ that the <application>psql</application> program must be found by the script and that
+ a database server must be running at the targeted port. Also, any default
settings and environment variables available to <application>psql</application>
- and the <application>libpq</application> front-end library do apply.
+ and the <application>libpq</application> front-end library will apply.
</para>
</refsect1>
# This program runs psql with the "-c" option to create
# the requested database.
#
-# Copyright (c) 1994, Regents of the University of California
+# Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
+# Portions Copyright (c) 1994, Regents of the University of California
#
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/createdb,v 1.13 2001/01/21 05:16:45 momjian Exp $
+# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/createdb,v 1.14 2001/02/18 17:53:54 tgl Exp $
#
#-------------------------------------------------------------------------
PATHNAME=`echo $0 | sed "s,$CMDNAME\$,,"`
MB=
+TEMPLATE=
PSQLOPT=
dbname=
dbcomment=
--location=*)
dbpath=`echo "$1" | sed 's/^--location=//'`
;;
+ --template|-T)
+ TEMPLATE="$2"
+ shift;;
+ -T*)
+ TEMPLATE=`echo "$1" | sed 's/^-T//'`
+ ;;
+ --template=*)
+ TEMPLATE=`echo "$1" | sed 's/^--template=//'`
+ ;;
--encoding|-E)
MB="$2"
shift;;
echo
echo "Options:"
echo " -D, --location=PATH Alternative place to store the database"
+ echo " -T, --template=TEMPLATE Template database to copy"
echo " -E, --encoding=ENCODING Multibyte encoding for the database"
echo " -h, --host=HOSTNAME Database server host"
echo " -p, --port=PORT Database server port"
# escape the quotes
dbpath=`echo "$dbpath" | sed "s/'/\\\\\'/g"`
dbname=`echo "$dbname" | sed 's/\"/\\\"/g'`
+TEMPLATE=`echo "$TEMPLATE" | sed 's/\"/\"\"/g'`
withstring=
[ "$dbpath" ] && withstring="$withstring LOCATION = '$dbpath'"
[ "$MB" ] && withstring="$withstring ENCODING = '$MB'"
+[ "$TEMPLATE" ] && withstring="$withstring TEMPLATE = \"$TEMPLATE\""
[ "$withstring" ] && withstring=" WITH$withstring"
${PATHNAME}psql $PSQLOPT -d template1 -c "CREATE DATABASE \"$dbname\"$withstring"
#! /bin/sh
-# $Header: /cvsroot/pgsql/src/test/regress/Attic/pg_regress.sh,v 1.18 2001/01/19 23:43:36 petere Exp $
+# $Header: /cvsroot/pgsql/src/test/regress/Attic/pg_regress.sh,v 1.19 2001/02/18 17:53:55 tgl Exp $
me=`basename $0`
: ${TMPDIR=/tmp}
# ----------
# Create the regression database
+# We use template0 so that any installation-local cruft in template1
+# will not mess up the tests.
# ----------
message "creating database \"$dbname\""
-"$bindir/createdb" $encoding_opt $psql_options "$dbname"
+"$bindir/createdb" $encoding_opt $psql_options --template template0 "$dbname"
if [ $? -ne 0 ]; then
echo "$me: createdb failed"
(exit 2); exit