📄 destroydb.sgml
字号:
<refentry id="APP-DESTROYDB"> <refmeta> <refentrytitle> <application>destroydb</application> </refentrytitle> <refmiscinfo>Application</refmiscinfo> </refmeta> <refnamediv> <refname> <application>destroydb</application> </refname> <refpurpose> Remove an existing <productname>Postgres</productname> database </refpurpose> </refnamediv> <refsynopsisdiv> <refsynopsisdivinfo> <date>1998-10-02</date> </refsynopsisdivinfo> <synopsis>destroydb [ <replaceable class="parameter">dbname</replaceable> ]destroydb [ -h <replaceable class="parameter">host</replaceable> ] [ -p <replaceable class="parameter">port</replaceable> ] [ -i ] [ <replaceable class="parameter">dbname</replaceable> ] </synopsis> <refsect2 id="R2-APP-DESTROYDB-1"> <refsect2info> <date>1998-10-02</date> </refsect2info> <title> Inputs </title> <para> <variablelist> <varlistentry> <term>-h <replaceable class="parameter">host</replaceable></term> <listitem> <para> Specifies the hostname of the machine on which the <application>postmaster</application> is running. Defaults to using a local Unix domain socket rather than an IP connection. </para> </listitem> </varlistentry> <varlistentry> <term>-p <replaceable class="parameter">port</replaceable></term> <listitem> <para> Specifies the Internet TCP/IP port or local Unix domain socket file extension on which the <application>postmaster</application> is listening for connections. The port number defaults to 5432, or the value of the <envar>PGPORT</envar> environment variable (if set). </para> </listitem> </varlistentry> <varlistentry> <term>-i</term> <listitem> <para> Run in interactive mode. Prompts for confirmation before destroying a database. </para> </listitem> </varlistentry> <varlistentry> <term><replaceable class="parameter">dbname</replaceable></term> <listitem> <para> Specifies the name of the database to be destroyed. The database must be one of the existing <productname>Postgres</productname> databases in this installation. <replaceable class="parameter">dbname</replaceable> defaults to the value of the <envar>USER</envar> environment variable. </para> </listitem> </varlistentry> </variablelist> </para> </refsect2> <refsect2 id="R2-APP-DESTROYDB-2"> <refsect2info> <date>1998-10-02</date> </refsect2info> <title> Outputs </title> <para> <application>destroydb</application> will remove files from the <filename><envar>PGDATA</envar>/<replaceable class="parameter">dbname</replaceable>/</filename> data area for the existing database. <variablelist> <varlistentry> <term><computeroutput>Connection to database 'template1' failed.connectDB() failed: Is the postmaster running and accepting connections at 'UNIX Socket' on port '<replaceable class="parameter">port</replaceable>'?destroydb: database destroy failed on <replaceable class="parameter">dbname</replaceable>. </computeroutput></term> <listitem> <para> <application>destroydb</application> could not attach to the <application>postmaster</application> process on the specified host and port. If you see this message, ensure that the <application>postmaster</application> is running on the proper host and that you have specified the proper port. If your site uses an authentication system, ensure that you have obtained the required authentication credentials. </para> </listitem> </varlistentry> <varlistentry> <term><computeroutput>Connection to database 'template1' failed.FATAL 1: SetUserId: user '<replaceable class="parameter">username</replaceable>' is not in 'pg_shadow'destroydb: database destroy failed on <replaceable class="parameter">dbname</replaceable>. </computeroutput></term> <listitem> <para> You do not have a valid entry in the relation <literal>pg_shadow</literal> and and will not be allowed to access <productname>Postgres</productname>. Contact your <productname>Postgres</productname> administrator. </para> </listitem> </varlistentry> <varlistentry> <term><computeroutput>ERROR: user '<replaceable class="parameter">username</replaceable>' is not allowed to create/destroy databasesdestroydb: database destroy failed on <replaceable class="parameter">dbname</replaceable>. </computeroutput></term> <listitem> <para> You do not have permission to destroy (or create) databases. Contact your <productname>Postgres</productname> site administrator. </para> </listitem> </varlistentry> <varlistentry> <term><computeroutput>ERROR: destroydb: database '<replaceable class="parameter">dbname</replaceable>' does not exist.destroydb: database destroy failed on <replaceable class="parameter">dbname</replaceable>. </computeroutput></term> <listitem> <para> The database to be removed does not have an entry in the <literal>pg_database</literal> class. </para> </listitem> </varlistentry> <varlistentry> <term><computeroutput>ERROR: destroydb: database '<replaceable class="parameter">dbname</replaceable>' is not owned by you.destroydb: database destroy failed on <replaceable class="parameter">dbname</replaceable>. </computeroutput></term> <listitem> <para> You are not the Database Administrator (DBA) for the specified database. </para> </listitem> </varlistentry> <varlistentry> <term><computeroutput>destroydb: database destroy failed on <replaceable class="parameter">dbname</replaceable>. </computeroutput></term> <listitem> <para> An internal error occurred in <application>psql</application> or in the backend server. Ensure that your site administrator has properly installed <productname>Postgres</productname>and initialized the site with <application>initdb</application>. </para> </listitem> </varlistentry> </variablelist> </para> <note> <para> <application>destroydb</application> internally runs <command>DESTROY DATABASE</command> from <application>psql</application> while connected to the <literal>template1</literal> database. </para> </note> </refsect2> </refsynopsisdiv> <refsect1 id="R1-APP-DESTROYDB-1"> <refsect1info> <date>1998-10-02</date> </refsect1info> <title> Description </title> <para> <application>destroydb</application> destroys an existing <productname>Postgres</productname> database. The person who executes this command must be the database administrator, or <acronym>DBA</acronym>, or must be the <productname>Postgres</productname> super-user. The program runs silently; no confirmation message will be displayed. After the database is destroyed, a Unix shell prompt will reappear. </para> <para> All references to the database are removed, including the directory containing this database and its associated files. </para> <para> <application>destroydb</application> is a shell script that invokes <application>psql</application>. Hence, a <application>postmaster</application> process must be running on the database server host before <application>destroydb</application> is executed. The <envar>PGOPTION</envar> and <envar>PGREALM</envar> environment variables will be passed on to <application>psql</application> and processed as described in <xref endterm="psql-ref" linkend="app-psql">. </para> </refsect1> <refsect1 id="R1-APP-DESTROYDB-2"> <refsect1info> <date>1998-10-02</date> </refsect1info> <title> Usage </title> <para> To destroy the database <literal>demo</literal> using the postmaster on the local host, port 5432: <programlisting> destroydb demo </programlisting> </para> <para> To destroy the database <literal>demo</literal> using the postmaster on host eden, port 5000: <programlisting> destroydb -p 5000 -h eden demo </programlisting> </para> </refsect1></refentry><!-- Keep this comment at the end of the fileLocal variables:mode: sgmlsgml-omittag:nilsgml-shorttag:tsgml-minimize-attributes:nilsgml-always-quote-attributes:tsgml-indent-step:1sgml-indent-data:tsgml-parent-document:nilsgml-default-dtd-file:"../reference.ced"sgml-exposed-tags:nilsgml-local-catalogs:"/usr/lib/sgml/catalog"sgml-local-ecat-files:nilEnd:-->
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -