<!--
$Header: /home/projects/pgsql/cvsroot/pgsql/doc/src/sgml/notation.sgml,v 1.10 2000/05/02 20:01:52 thomas Exp $
-->

<sect1 id="terminology">
 <title>Terminology</title>

 <para>
  In the following documentation,
  <firstterm>site</firstterm>
  may be interpreted as the host machine on which 
  <Productname>Postgres</Productname> is installed.
  Since it is possible to install more than one set of 
  <Productname>Postgres</Productname>
  databases on a single host, this term more precisely denotes any
  particular set of installed 
  <Productname>Postgres</Productname> binaries and databases.
 </para>

 <para>
  The 
  <Productname>Postgres</Productname> <firstterm>superuser</firstterm>
  is the user named <replaceable>postgres</replaceable>
  who owns the <Productname>Postgres</Productname>
  binaries and database files.  As the database superuser, all
  protection mechanisms may be bypassed and any data accessed
  arbitrarily.  
  In addition, the <Productname>Postgres</Productname> superuser is
  allowed to execute
  some support programs which are generally not available to all users.
  Note that the <Productname>Postgres</Productname> superuser is
  <emphasis>not</emphasis>
  the same as the Unix superuser (which will be referred to as
  <firstterm>root</firstterm>).
  The superuser should have a non-zero user identifier
  (<firstterm>UID</firstterm>) for security reasons.
 </para>

 <para>
  The
  <firstterm>database administrator</firstterm>
  or <acronym>DBA</acronym>, is the person who is responsible for installing 
  <Productname>Postgres</Productname> with mechanisms to
  enforce a security policy for a site.  The DBA can add new users by
  the method described below 
  and maintain a set of template databases for use by
  <application>createdb</application>.
 </para>

 <para>
  The <application>postmaster</application>
  is the process that acts as a clearing-house for requests 
  to the <Productname>Postgres</Productname> system.
  Frontend applications connect to the <application>postmaster</application>,
  which keeps tracks of any system errors and communication between the
  backend processes.  The <application>postmaster</application>
  can take several command-line arguments to tune its behavior.
  However, supplying arguments is necessary only if you intend to run multiple
  sites or a non-default site.
 </para>

 <para>
  The <Productname>Postgres</Productname> backend
  (the actual executable program <application>postgres</application>) may be executed
  directly from the user shell by the 
  <Productname>Postgres</Productname> super-user 
  (with the database name as an argument).  However,
  doing this bypasses the shared buffer pool and lock table associated
  with a postmaster/site, therefore this is not recommended in a multiuser
  site.
 </para>
</sect1>

<sect1 id="notation">
 <title>Notation</title>

 <para>
  "<literal>...</literal>" or <filename>/usr/local/pgsql/</filename> 
  at the front of a file name is used to represent the
  path to the <Productname>Postgres</Productname> superuser's home directory.
 </para>

 <para>
  In a command synopsis, brackets
  ("<literal>[</literal>" and "<literal>]</literal>") indicate an optional phrase or keyword.
  Anything in braces
  ("<literal>{</literal>" and "<literal>}</literal>") and containing vertical bars
  ("<literal>|</literal>")
  indicates that you must choose one.
 </para>

 <para>
  In examples, parentheses ("<literal>(</literal>" and "<literal>)</literal>") are
  used to group boolean
  expressions.  "<literal>|</literal>" is the boolean operator OR.
 </para>

 <para>
  Examples will show commands executed from various accounts and programs.
  Commands executed from the root account will be preceeded with
  "<literal>&gt;</literal>".
  Commands executed from the <Productname>Postgres</Productname>
  superuser account will be preceeded with "<literal>%</literal>", while commands
  executed from an unprivileged user's account will be preceeded with
  "<literal>$</literal>".
  <acronym>SQL</acronym> commands will be preceeded with "<literal>=&gt;</literal>"
  or will have no leading prompt, depending on the context.
 </para>

 <note>
  <para>
   At the time of writing (<Productname>Postgres</Productname> v7.0)
   the notation for
   flagging commands is not universally consistant throughout the
   documentation set.
   Please report problems to
   <ulink url="mailto:docs@postgresql.org">the Documentation Mailing List</ulink>.
  </para>
 </note>

</sect1>

<!-- Keep this comment at the end of the file
Local variables:
mode:sgml
sgml-omittag:nil
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"./reference.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:("/usr/lib/sgml/catalog")
sgml-local-ecat-files:nil
End:
-->
