

There are also some additional functionalities, like RDS Performance Insights to show the database activity with a time x-axis and active session y-axis, drilling down to wait events.īy curiosity I’ve run the regression tests that are provided by the PostgreSQL distribution: This is still the community edition that allows extensibility. Rds.tablespace_path_prefix | /rdsdbdata/db/base/tablespace Rds.superuser_variables | session_replication_role Rds.rds_superuser_reserved_connections | 2 Rds.internal_databases | rdsadmin,template0 Rds.force_autovacuum_logging_level | info Rds.extensions | address_standardizer, address_standardizer_data_us, amcheck, aws_commons, aws_s3, bloom, btree_gin, btree_gist, citext, cube, dblink, dict_int, dict_xsyn, earthdistance, fuzzystrmatch, hll, hstore, hstore_plperl, intagg, intarray, ip4r, isn, jsonb_plperl, log_fdw, ltree, orafce, pageinspect, pgaudit, pgcrypto, pglogical, pgrouting, pgrowlocks, pgstattuple, pgtap, pg_buffercache, pg_freespacemap, pg_hint_plan, pg_prewarm, pg_proctab, pg_repack, pg_similarity, pg_stat_statements, pg_transport, pg_trgm, pg_visibility, plcoffee, plls, plperl, plpgsql, plprofiler, pltcl, plv8, postgis, postgis_tiger_geocoder, postgis_raster, postgis_topology, postgres_fdw, prefix, rdkit, sslinfo, tablefunc, test_parser, tsm_system_rows, tsm_system_time, unaccent, uuid-ossp Postgres=> select name,setting from pg_settings where name like 'rds.%' Postgres=> show shared_preload_libraries There are a few additional RDS specific libraries (which are not open source): Postgres | Create role, Create DB +| | samehost | | md5 | |īut this is exactly the same as a PostgreSQL installed from the community sources where you are not the superuser. The only difference in the features is that, as it is a managed database, you don’t have all privileges: SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off) $ PGHOST=. PGPORT=5432 PGPASSWORD=postgres psql -U postgres You can check the version and compilation:
AWS POSTGRESQL VERSION FREE
And you can even do that on the Free tier. If you create an Amazon RDS PostgreSQL service, you have the “real” PostgreSQL. You cannot mistakenly select Aurora here. There is no ambiguity there: only one service has the PostgreSQL name and logo. Here is how you create a PostgreSQL database in RDS: you select “PostgreSQL” with the PostgreSQL logo and can choose mostly any supported version (at the time of writing this: any minor version between 9.5.2 to 12.4): RDS is the family name for all managed relational databases and this includes Open Source databases (PostgreSQL, MySQL, MariaDB), some commercial databases (Oracle Database, Microsoft SQL Server), and Amazon Aurora (I will talk about it later). Here is where I’ve heard some wrong messages, so let’s be clear: Amazon RDS for PostgreSQL is running the real PostgreSQL, compiled from the postgres community sources.

There are no doubts about this: you run the community postgres. But if you consider cloud as a hosting solution, installing PostgreSQL in EC2 + EBS is a valid solution. There’s a trend to build microservices with the database embedded with the stateless application and people forget that the database is a stateful component (we called that persistent 15 years ago, or durable 30 years ago) that cannot be stopped and started elsewhere. Please take care of your backups if you do that. But you need to do all the “Ops” work (so the TCO may be higher than what you think). This has the lowest cost because PostgreSQL is free of any subscription.
AWS POSTGRESQL VERSION FULL
You have the full choice of version, you can even compile it from sources, and add whatever extensions you want.
AWS POSTGRESQL VERSION INSTALL
Obviously, you can install PostgreSQL on an EC2 instance, as a database running on IaaS (Infrastructure as a Service). This is wrong and I’m writing this post to clarify it. I’ve heard and read people saying that the PostgreSQL managed service is not the true open-source PostgreSQL from the community.
