You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Steve Boyd beb0f84f2d Merge branch '2.3' into 2 2 months ago
.github/workflows MNT Standardise modules 2 months ago
_config FIX Quote yample starting with % 5 years ago
code FIX Ignore invalid byte character 5 months ago
docs API Increased support to 9.2 3 years ago
tests BUG Fix issues preventing a site from being migrated from SS3 to SS4 (#104) 3 years ago
.editorconfig BUG Fix postgres + PDO not working 5 years ago
.gitattributes Added standard .gitattributes file 7 years ago
.upgrade.yml Upgrade code for new namespaces 6 years ago
CHANGELOG MINOR: changelog for the 0.9.2 release 12 years ago
LICENSE MINOR: Documentation update for the 0.9.1 release 13 years ago Merge branch '2.3' into 2 2 months ago
_register_database.php BUG Fix installer for 4.0 (#58) 6 years ago Added standard code of conduct file 7 years ago
composer.json Merge branch '2.3' into 2 3 months ago
phpcs.xml.dist MNT Travis shared config, use sminnee/phpunit 2 years ago
phpunit.xml.dist MNT Standardise modules 2 months ago

PostgreSQL Module Module

CI Silverstripe supported module


  • Silverstripe 4.0
  • PostgreSQL >=9.2
  • Note: PostgreSQL 10 has not been tested


composer require silverstripe/postgresql


Environment file

Add the following settings to your .env file:


See environment variables for more details. Note that a database will automatically be created via dev/build.

Through the installer

Open the installer by browsing to install.php, e.g. http://localhost/install.php Select PostgreSQL in the database list and enter your database details

Usage Overview

See docs/en for more information about configuring the module.

Known issues

All column and table names must be double-quoted. PostgreSQL automatically lower-cases columns, and your queries will fail if you don't.

Collations have known issues when installed on Alpine, MacOS X and BSD derivatives (see PostgreSQL FAQ). We do not support such installations, although they still may work correctly for you. As a workaround for PostgreSQL 10+ you could manually switch to ICU collations (e.g. und-x-icu). There are no known workarounds for PostgreSQL <10.

Ts_vector columns are not automatically detected by the built-in search filters. That means if you're doing a search through the CMS on a ModelAdmin object, it will use LIKE queries which are very slow. If you're writing your own front-end search system, you can specify the columns to use for search purposes, and you get the full benefits of T-Search.

If you are using unsupported modules, there may be instances of MySQL-specific SQL queries which will need to be made database-agnostic where possible.