Newer
Older
Frequently Asked Questions (FAQ) for PostgreSQL
Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
The most recent version of this document can be viewed at
http://www.PostgreSQL.org/docs/faq-english.html.
Platform-specific questions are answered at
http://www.PostgreSQL.org/docs/.
_________________________________________________________________
1.2) What's the copyright on PostgreSQL?
1.3) What Unix platforms does PostgreSQL run on?
1.4) What non-unix ports are available?
1.5) Where can I get PostgreSQL?
1.6) Where can I get support?
1.7) What is the latest release?
1.8) What documentation is available?
1.9) How do I find out about known bugs or missing features?
1.10) How can I learn SQL?
1.11) Is PostgreSQL Y2K compliant?
1.12) How do I join the development team?
1.13) How do I submit a bug report?
1.14) How does PostgreSQL compare to other DBMS's?
User Client Questions
2.1) Are there ODBC drivers for PostgreSQL?
2.2) What tools are available for hooking PostgreSQL to Web pages?
2.3) Does PostgreSQL have a graphical user interface? A report
generator? An embedded query language interface?
2.4) What languages are available to communicate with PostgreSQL?
Administrative Questions
3.1) Why does initdb fail?
3.2) How do I install PostgreSQL somewhere other than
3.3) When I start the postmaster, I get a Bad System Call or core
3.4) When I try to start the postmaster, I get IpcMemoryCreate errors.
Why?
3.5) When I try to start the postmaster, I get IpcSemaphoreCreate
3.6) How do I prevent other hosts from accessing my PostgreSQL
database?
3.7) Why can't I connect to my database from another machine?
3.8) Why can't I access the database as the root user?
3.9) All my servers crash under concurrent table access. Why?
3.10) How do I tune the database engine for better performance?
3.11) What debugging features are available?
3.12) I get "Sorry, too many clients" when trying to connect. Why?
3.13) What are the pg_sorttempNNN.NN files in my database directory?
4.1) Why is the system confused about commas, decimal points, and date
formats.
4.2) What is the exact difference between binary cursors and normal
4.3) How do I SELECT only the first few rows of a query?
4.4) How do I get a list of tables or other things I can see in psql?
4.5) How do you remove a column from a table?
4.6) What is the maximum size for a row, table, database?
4.7) How much database disk space is required to store data from a
4.8) How do I find out what indices or operations are defined in the
database?
4.9) My queries are slow or don't make use of the indexes. Why?
4.10) How do I see how the query optimizer is evaluating my query?
4.11) What is an R-tree index?
4.12) What is Genetic Query Optimization?
4.13) How do I do regular expression searches and case-insensitive
4.14) In a query, how do I detect if a field is NULL?
4.15) What is the difference between the various character types?
4.16.1) How do I create a serial/auto-incrementing field?
4.16.3) Don't currval() and nextval() lead to a race condition with
4.18) What is the meaning of some of the terms used in PostgreSQL?
4.19) Why do I get the error "FATAL: palloc failure: memory
4.20) How do I tell what PostgreSQL version I am running?
4.21) My large-object operations get invalid large obj descriptor.
Why?
4.22) How do I create a column that will default to the current time?
4.23) Why are my subqueries using IN so slow?
5.1) I wrote a user-defined function. When I run it in psql, why does
5.2) What does the message "NOTICE:PortalHeapMemoryFree: 0x402251d0
not in alloc set!" mean?
5.3) How can I contribute some nifty new types and functions to
PostgreSQL?
5.4) How do I write a C function to return a tuple?
5.5) I have changed a source file. Why does the recompile not see the
change?
_________________________________________________________________
General Questions
1.1) What is PostgreSQL?
PostgreSQL is an enhancement of the POSTGRES database management
system, a next-generation DBMS research prototype. While PostgreSQL
retains the powerful data model and rich data types of POSTGRES, it
replaces the PostQuel query language with an extended subset of SQL.
PostgreSQL is free and the complete source is available.
PostgreSQL development is performed by a team of Internet developers
who all subscribe to the PostgreSQL development mailing list. The
current coordinator is Marc G. Fournier (scrappy@PostgreSQL.org). (See
below on how to join). This team is now responsible for all
development of PostgreSQL.
The authors of PostgreSQL 1.01 were Andrew Yu and Jolly Chen. Many
others have contributed to the porting, testing, debugging and
enhancement of the code. The original Postgres code, from which
PostgreSQL is derived, was the effort of many graduate students,
undergraduate students, and staff programmers working under the
direction of Professor Michael Stonebraker at the University of
California, Berkeley.
The original name of the software at Berkeley was Postgres. When SQL
functionality was added in 1995, its name was changed to Postgres95.
The name was changed at the end of 1996 to PostgreSQL.
1.2) What's the copyright on PostgreSQL?
PostgreSQL is subject to the following COPYRIGHT.
PostgreSQL Data Base Management System
Portions copyright (c) 1996-2000, PostgreSQL, Inc Portions Copyright
(c) 1994-6 Regents of the University of California
Permission to use, copy, modify, and distribute this software and its
documentation for any purpose, without fee, and without a written
agreement is hereby granted, provided that the above copyright notice
and this paragraph and the following two paragraphs appear in all
copies.
IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY
FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES,
INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND
ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE
PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF
CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT,
UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
1.3) What Unix platforms does PostgreSQL run on?
The authors have compiled and tested PostgreSQL on the following
platforms (some of these compiles require gcc):
* aix - IBM on AIX 3.2.5 or 4.x
* alpha - DEC Alpha AXP on Digital Unix 2.0, 3.2, 4.0
* BSD44_derived - OSs derived from 4.4-lite BSD (NetBSD, FreeBSD)
* bsdi - BSD/OS 2.x, 3.x, 4.x
* dgux - DG/UX 5.4R4.11
* hpux - HP PA-RISC on HP-UX 9.*, 10.*
* i386_solaris - i386 Solaris
* irix5 - SGI MIPS on IRIX 5.3
* linux - Intel i86 Alpha SPARC PPC M68k
* sco - SCO 3.2v5 Unixware
* sparc_solaris - SUN SPARC on Solaris 2.4, 2.5, 2.5.1
* sunos4 - SUN SPARC on SunOS 4.1.3
* svr4 - Intel x86 on Intel SVR4 and MIPS
* ultrix4 - DEC MIPS on Ultrix 4.4
1.4) What non-unix ports are available?
It is possible to compile the libpq C library, psql, and other
interfaces and binaries to run on MS Windows platforms. In this case,
the client is running on MS Windows, and communicates via TCP/IP to a
server running on one of our supported Unix platforms.
A file win31.mak is included in the distribution for making a Win32
libpq library and psql.
The database server is now working on Windows NT using the Cygnus
Unix/NT porting library. See pgsql/doc/FAQ_NT in the distribution.
Loading
Loading full blame...