diff --git a/doc/src/sgml/external-projects.sgml b/doc/src/sgml/external-projects.sgml index f649de386d..23d67b44ce 100644 --- a/doc/src/sgml/external-projects.sgml +++ b/doc/src/sgml/external-projects.sgml @@ -1,29 +1,34 @@ - + - External Projects + PgFoundry and External Projects PostgreSQL is a complex software project, - and managing it is difficult. We have found that many + and managing the project is difficult. We have found that many enhancements to PostgreSQL can be more - efficiently developed separately from the core project. Separate - projects can - have their own developer teams, email lists, bug tracking, - and release schedules. While their independence makes - development easier, it makes users' jobs harder. They have to hunt - around looking for database enhancements to meet their needs. - This section describes some of the more popular externally - developed enhancements and guides you on how to find them. + efficiently developed separately from the core project. + + + + To help our community with the development of their external projects, + we have created the PgFoundry. + PgFoundry is built using the + GForge software project and is similar to SourceForge in its feature set. If + you have a PostgreSQL related Open Source project that you would like to + develop and need project management resources such as mailing lists, forums, + bug tracking, and CVS, please feel free to create a new project. - Many PostgreSQL-related projects are - hosted at either - GBorg - or pgFoundry. - There are other PostgreSQL-related projects that are hosted - elsewhere, but you will have to do an Internet search to find them. + Secondly, many PostgreSQL-related projects are + still hosted at GBorg. + GBorg is the original external community developer site, and while it is + currently closed to new projects in favor of PgFoundry, it still contains + many active and relevant projects. There are other popular PostgreSQL + related projects that are hosted independently as well at other community + sites such as SourceForge. You should + google if you don't find the project you are looking for. @@ -36,11 +41,10 @@ PostgreSQL includes very few interfaces with the base distribution. libpq is packaged because - it is the primary C interface and many other - interfaces are built on top of it. ecpg is packaged - because it is tied to the server-side grammar so is very dependent - on the database version. All the other interfaces are independent - projects and must be installed separately. + it is the primary dependecy of most interfaces available to PostgreSQL. + We also package ecpg because it is tied to the + server-side grammar. All other interfaces, such as PHP, Perl, Python, + and Ruby, are external projects. @@ -52,7 +56,17 @@ This is the most common interface for Windows - applications. + applications. Website. + + + + + + ODBCng + + + Another ODBC driver for PostgreSQL. + Website. @@ -62,6 +76,7 @@ A JDBC interface. + Website. @@ -70,8 +85,8 @@ Npgsql - .Net interface for more recent - Windows applications. + .Net interface for more recent mono/C# applications. + Website. @@ -81,35 +96,17 @@ A newer C++ interface. + Website. - libpq++ + DBD::Pg - An older C++ interface. - - - - - - pgperl - - - A Perl interface with an API similar - to libpq. - - - - - - DBD-Pg - - - A Perl interface that uses the - DBD-standard API. + A Perl DBI driver for PostgreSQL. + Website. @@ -119,33 +116,21 @@ A newer version of the Tcl interface. + Website. - pgtcl + Pyscopg - The original version of the Tcl interface. + A Python interface library that is DB API 2.0 compliant. + Website. - - - PyGreSQL - - - A Python interface library. - - - - - - All of these can be found at - GBorg - or pgFoundry. @@ -175,8 +160,8 @@ There are several administration tools available for PostgreSQL. The most popular is - pgAdmin, and there are several commercially - available ones. + pgAdmin III, + and there are several commercially available ones as well. diff --git a/doc/src/sgml/maintenance.sgml b/doc/src/sgml/maintenance.sgml index 784b21bb5c..1576d72dd4 100644 --- a/doc/src/sgml/maintenance.sgml +++ b/doc/src/sgml/maintenance.sgml @@ -1,4 +1,4 @@ - + Routine Database Maintenance Tasks @@ -7,42 +7,40 @@ maintenance + + Routine maintenance + + - There are a few routine maintenance chores that must be performed on - a regular basis to keep a PostgreSQL - server running smoothly. The tasks discussed here are repetitive - in nature and can easily be automated using standard Unix tools such - as cron scripts. But it is the database - administrator's responsibility to set up appropriate scripts, and to - check that they execute successfully. + PostgreSQL, like any database software, requires that certain tasks + be performed regularly to achieve optimum performance. The tasks + discussed here are required, but they + are repetitive in nature and can easily be automated using standard + Unix tools such as cron scripts. + + + + PostgreSQL is low-maintenance compared + to other database management systems. It is also fairly easy, provided + you read the documentation. - One obvious maintenance task is creation of backup copies of the data on a - regular schedule. Without a recent backup, you have no chance of recovery - after a catastrophe (disk failure, fire, mistakenly dropping a critical - table, etc.). The backup and recovery mechanisms available in - PostgreSQL are discussed at length in - . + There are three tasks that must be performed on + a periodic basis. The first is backups. If you do not have a current backup + and your system experiences a catastrophic failure, you will lose your data. + You can read further about backups procedures in . + The second is vacuum which is discussed in . + The third is to update the planner statistics using the analyze command as + discussed in . - The other main category of maintenance task is periodic vacuuming - of the database. This activity is discussed in - . - - - - Something else that might need periodic attention is log file management. + Another task that may need periodic attention is log file management. This is discussed in . - - PostgreSQL is low-maintenance compared - to some other database management systems. Nonetheless, - appropriate attention to these tasks will go far towards ensuring a - pleasant and productive experience with the system. - + Routine Vacuuming @@ -53,11 +51,11 @@ PostgreSQL's VACUUM command - must be run on a regular basis for several reasons: + must be run on a regular basis for several reasons: - To recover disk space occupied by updated or deleted + To recover or reuse disk space occupied by updated or deleted rows. @@ -82,11 +80,12 @@ - The standard form of VACUUM can run in parallel with - normal database operations (SELECTs, INSERTs, UPDATEs, DELETEs, but not - changes to table definitions). - Beginning in PostgreSQL 8.0, there are - configuration parameters that can be adjusted to further reduce the + The standard form of VACUUM does not intefere with production + database operations. Items such as SELECTS, INSERTS, UPDATES and DELETES + will continue to function as normal, though you will not be able to modify the + definition (Such as ALTER TABLE ADD COLUMN) of a table while it is being vacuumed. + The release of PostgreSQL 8.0, introduced new + configuration parameters to further reduce the potentially negative performance impact of background vacuuming. See . @@ -187,9 +186,9 @@ - If you have a table whose contents are deleted on a periodic - basis, consider doing it with TRUNCATE rather - than using DELETE followed by + If you have a table whose entire contents are deleted on a periodic + basis, consider doing it with the TRUNCATE rather + than using the DELETE followed by VACUUM. TRUNCATE removes the entire content of the table immediately, without requiring a subsequent VACUUM or VACUUM