{"id":13919,"date":"2020-04-11T09:47:58","date_gmt":"2020-04-11T07:47:58","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/"},"modified":"2020-04-11T09:47:58","modified_gmt":"2020-04-11T07:47:58","slug":"aws-rds-for-postgresql-4-changing-parameters","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/","title":{"rendered":"AWS RDS for PostgreSQL \u2013 4 \u2013 Changing parameters"},"content":{"rendered":"<p>If you followed that last posts about <a href=\"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-1-db-parameter-groups\/\" target=\"_blank\" rel=\"noopener noreferrer\">DB Parameter Groups<\/a>, <a href=\"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-2-subnet-groups\/\" target=\"_blank\" rel=\"noopener noreferrer\">Subnet Groups<\/a> and <a href=\"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-3-creating-the-rds-postgresql-instance\/\" target=\"_blank\" rel=\"noopener noreferrer\">Setting up the RDS instance<\/a> you should have a running RDS instance. You should also be aware that changing parameters can not be done like you usually do it but you need to do that by changing the DB parameter groups. In this post we&#8217;ll look at how you can do that and, especially, what you should avoid.<\/p>\n<p><!--more--><\/p>\n<p>Looking at our current configuration of the PostgreSQL RDS instance we can see that our DB Parameter Group is &#8220;in-sync&#8221;:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_33.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_33.jpg\" alt=\"\" width=\"1597\" height=\"806\" class=\"aligncenter size-full wp-image-38810\" \/><\/a><\/p>\n<p>That means nothing changed or needs to be applied as all parameters of the instance have the same values as specified in the DB Parameter Group. Let&#8217;s go and change one of the parameters using the AWS console:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_31.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_31.jpg\" alt=\"\" width=\"1607\" height=\"267\" class=\"aligncenter size-full wp-image-38807\" \/><\/a><\/p>\n<p>The parameter we&#8217;ll change is &#8220;<a href=\"https:\/\/www.postgresql.org\/docs\/12\/runtime-config-autovacuum.html#GUC-AUTOVACUUM-NAPTIME\" target=\"_blank\" rel=\"noopener noreferrer\">autovacuum_naptime<\/a>&#8220;, and we&#8217;ll change it from 15 to 20:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_35.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_35.jpg\" alt=\"\" width=\"1619\" height=\"308\" class=\"aligncenter size-full wp-image-38814\" \/><\/a><\/p>\n<p>Once the changes are saved you&#8217;ll notice that the status in the configuration section changes to &#8220;applying&#8221;:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_34.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_34.jpg\" alt=\"\" width=\"1535\" height=\"784\" class=\"aligncenter size-full wp-image-38813\" \/><\/a><\/p>\n<p>A few moments later the DB Parameter Group is &#8220;in-sync&#8221; again and the parameter is applied to the RDS instance:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres=&gt; show autovacuum_naptime ;\n autovacuum_naptime \n--------------------\n 20s\n(1 row)\n<\/pre>\n<p>Using the <a href=\"https:\/\/docs.aws.amazon.com\/cli\/latest\/reference\/rds\/\" target=\"_blank\" rel=\"noopener noreferrer\">AWS command line utilities<\/a> for these tasks usually is much easier and tasks can be automated. Changing the same parameter on the command line:<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">\n$ aws rds modify-db-parameter-group --db-parameter-group-name dbi-dwe-pg12 --parameters=\"ParameterName=autovacuum_naptime, ParameterValue=10, ApplyMethod=immediate\"\n<\/pre>\n<p>You can already spot an important bit in the command: ApplyMethod=immediate. For dynamic parameters you have the choice to apply a new value immediately or &#8220;pending-reboot&#8221;. What happens if we change a static parameter using the AWS console?<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_36-2.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_36-2.jpg\" alt=\"\" width=\"1600\" height=\"235\" class=\"aligncenter size-full wp-image-38819\" \/><\/a><\/p>\n<p>Now we get a status of &#8220;pending-reboot&#8221;:<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_37.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_37.jpg\" alt=\"\" width=\"1073\" height=\"778\" class=\"aligncenter size-full wp-image-38821\" \/><\/a><\/p>\n<p>Rebooting the instance applies the parameter and the DB Parameter Group is in sync again:<\/p>\n<pre class=\"brush: bash; gutter: true; first-line: 1\">\npostgres=&gt; show autovacuum_naptime ;\nFATAL:  terminating connection due to administrator command\nSSL connection has been closed unexpectedly\nThe connection to the server was lost. Attempting reset: Succeeded.\nSSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)\npostgres=&gt; show autovacuum_naptime ;\n autovacuum_naptime \n--------------------\n 10s\n(1 row)\n\npostgres=&gt; show max_locks_per_transaction ;\n max_locks_per_transaction \n---------------------------\n 128\n(1 row)\n<\/pre>\n<p>What you always need to be careful about it the <a href=\"https:\/\/aws.amazon.com\/rds\/instance-types\/\" target=\"_blank\" rel=\"noopener noreferrer\">instance type<\/a>. Currently the instance is running db.m5.xlarge, which means we should have 16GB of memory available. Checking the current setting of <a href=\"https:\/\/www.postgresql.org\/docs\/12\/runtime-config-resource.html\" target=\"_blank\" rel=\"noopener noreferrer\">shared_buffers<\/a> we see that PostgreSQL uses 3GB from that 16GB for caching:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">\npostgres=&gt; show shared_buffers;\n shared_buffers \n----------------\n 3936960kB\n(1 row)\n\npostgres=&gt; select 3936960\/1024\/1024;\n ?column? \n----------\n        3\n(1 row)\n<\/pre>\n<p>What happens when we set that to 32GB?<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_38-1.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_38-1.jpg\" alt=\"\" width=\"1600\" height=\"267\" class=\"aligncenter size-full wp-image-38824\" \/><\/a><\/p>\n<p>Will the instance come up after rebooting and what value will we see for shared_buffers?<br \/>\n<a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_39.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_39.jpg\" alt=\"\" width=\"1600\" height=\"231\" class=\"aligncenter size-full wp-image-38825\" \/><\/a><\/p>\n<p>We&#8217;ve managed to create a configuration set that will prevent the RDS from starting up. On the one hand this is expected, on the other hand I would have expected that there are some sanity checks in the background that prevent you from doing that. Maybe the reason AWS is not checking that is, that DB Parameter Groups can be used by several instances which all can run on different instance types. So, be careful, when you have a DB Parameter Group you are using for more than one instance and you want to change settings like shared_buffers. Keep in mind that you need check the instance type, because that defines your amount of memory and CPUs.<\/p>\n<p>By using the command line utilities we can also check the PostgreSQL log file, which confirms why the instance is not able to start up:<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1; highlight: [1,8]\">\ndwe@dwe:~\/Documents\/aws$ aws rds describe-db-log-files --db-instance-identifier dwe-pg\nDESCRIBEDBLOGFILES      1586431187000   error\/postgres.log      13626\nDESCRIBEDBLOGFILES      1586267878000   error\/postgresql.log.2020-04-07-13      8632\nDESCRIBEDBLOGFILES      1586269968000   error\/postgresql.log.2020-04-07-14      6211\nDESCRIBEDBLOGFILES      1586426381000   error\/postgresql.log.2020-04-09-09      8236\nDESCRIBEDBLOGFILES      1586429793000   error\/postgresql.log.2020-04-09-10      6096\nDESCRIBEDBLOGFILES      1586431182000   error\/postgresql.log.2020-04-09-11      4024\ndwe@dwe:~\/Documents\/aws$ aws rds download-db-log-file-portion --db-instance-identifier dwe-pg --log-file-name error\/postgres.log | tail -15\n2020-04-09 11:19:46 UTC::@:[27607]:LOG:  database system is shut down\n2020-04-09 11:19:47.453 GMT [27773] LOG:  skipping missing configuration file \"\/rdsdbdata\/config\/recovery.conf\"\n2020-04-09 11:19:47.453 GMT [27773] LOG:  skipping missing configuration file \"\/rdsdbdata\/config\/recovery.conf\"\n2020-04-09 11:19:47 UTC::@:[27773]:LOG:  database system is shut down\nPostgres Shared Memory Value: 35386589184 bytes\n2020-04-09 11:19:47.482 GMT [27785] LOG:  skipping missing configuration file \"\/rdsdbdata\/config\/recovery.conf\"\n2020-04-09 11:19:47.482 GMT [27785] LOG:  skipping missing configuration file \"\/rdsdbdata\/config\/recovery.conf\"\n2020-04-09 11:19:47 UTC::@:[27785]:LOG:  starting PostgreSQL 12.2 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.3 20140911 (Red Hat 4.8.3-9), 64-bit\n2020-04-09 11:19:47 UTC::@:[27785]:LOG:  listening on IPv4 address \"0.0.0.0\", port 5432\n2020-04-09 11:19:47 UTC::@:[27785]:LOG:  listening on IPv6 address \"::\", port 5432\n2020-04-09 11:19:47 UTC::@:[27785]:LOG:  listening on Unix socket \"\/tmp\/.s.PGSQL.5432\"\n2020-04-09 11:19:47 UTC::@:[27785]:FATAL:  could not map anonymous shared memory: Cannot allocate memory\n2020-04-09 11:19:47 UTC::@:[27785]:HINT:  This error usually means that PostgreSQL's request for a shared memory segment exceeded available memory, swap space, or huge pages. To reduce the request size (currently 35386589184 bytes), reduce PostgreSQL's shared memory usage, perhaps by reducing shared_buffers or max_connections.\n2020-04-09 11:19:47 UTC::@:[27785]:LOG:  database system is shut down\n<\/pre>\n<p>A bit strange is, that there is <a href=\"https:\/\/www.dbi-services.com\/blog\/no-more-recovery-conf-in-postgresql-12\/\" target=\"_blank\" rel=\"noopener noreferrer\">no recovery.conf in PostgreSQL 12<\/a> but AWS somehow still is referencing that somewhere.<\/p>\n<p>So far for changing parameters. In the next post we&#8217;ll look at backup and restore.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you followed that last posts about DB Parameter Groups, Subnet Groups and Setting up the RDS instance you should have a running RDS instance. You should also be aware that changing parameters can not be done like you usually do it but you need to do that by changing the DB parameter groups. In [&hellip;]<\/p>\n","protected":false},"author":29,"featured_media":13928,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1865,229],"tags":[133,77,1869],"type_dbi":[],"class_list":["post-13919","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-aws","category-database-administration-monitoring","tag-aws","tag-postgresql","tag-rds"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>AWS RDS for PostgreSQL \u2013 4 \u2013 Changing parameters - dbi Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"AWS RDS for PostgreSQL \u2013 4 \u2013 Changing parameters\" \/>\n<meta property=\"og:description\" content=\"If you followed that last posts about DB Parameter Groups, Subnet Groups and Setting up the RDS instance you should have a running RDS instance. You should also be aware that changing parameters can not be done like you usually do it but you need to do that by changing the DB parameter groups. In [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2020-04-11T07:47:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_30.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1597\" \/>\n\t<meta property=\"og:image:height\" content=\"806\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Daniel Westermann\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@westermanndanie\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Daniel Westermann\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/\"},\"author\":{\"name\":\"Daniel Westermann\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/8d08e9bd996a89bd75c0286cbabf3c66\"},\"headline\":\"AWS RDS for PostgreSQL \u2013 4 \u2013 Changing parameters\",\"datePublished\":\"2020-04-11T07:47:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/\"},\"wordCount\":528,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/04\\\/aws_rds_pg_30.jpg\",\"keywords\":[\"AWS\",\"PostgreSQL\",\"RDS\"],\"articleSection\":[\"AWS\",\"Database Administration &amp; Monitoring\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/\",\"name\":\"AWS RDS for PostgreSQL \u2013 4 \u2013 Changing parameters - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/04\\\/aws_rds_pg_30.jpg\",\"datePublished\":\"2020-04-11T07:47:58+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/8d08e9bd996a89bd75c0286cbabf3c66\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/04\\\/aws_rds_pg_30.jpg\",\"contentUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2022\\\/04\\\/aws_rds_pg_30.jpg\",\"width\":1597,\"height\":806},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/aws-rds-for-postgresql-4-changing-parameters\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"AWS RDS for PostgreSQL \u2013 4 \u2013 Changing parameters\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/8d08e9bd996a89bd75c0286cbabf3c66\",\"name\":\"Daniel Westermann\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g\",\"caption\":\"Daniel Westermann\"},\"description\":\"Daniel Westermann is Principal Consultant and Technology Leader Open Infrastructure at dbi services. He has more than 15 years of experience in management, engineering and optimization of databases and infrastructures, especially on Oracle and PostgreSQL. Since the beginning of his career, he has specialized in Oracle Technologies and is Oracle Certified Professional 12c and Oracle Certified Expert RAC\\\/GridInfra. Over time, Daniel has become increasingly interested in open source technologies, becoming \u201cTechnology Leader Open Infrastructure\u201d and PostgreSQL expert. \u00a0Based on community or EnterpriseDB tools, he develops and installs complex high available solutions with PostgreSQL. He is also a certified PostgreSQL Plus 9.0 Professional and a Postgres Advanced Server 9.4 Professional. He is a regular speaker at PostgreSQL conferences in Switzerland and Europe. Today Daniel is also supporting our customers on AWS services such as AWS RDS, database migrations into the cloud, EC2 and automated infrastructure management with AWS SSM (System Manager). He is a certified AWS Solutions Architect Professional. Prior to dbi services, Daniel was Management System Engineer at LC SYSTEMS-Engineering AG in Basel. Before that, he worked as Oracle Developper &amp;\u00a0Project Manager at Delta Energy Solutions AG in Basel (today Powel AG). Daniel holds a diploma in Business Informatics (DHBW, Germany). His branch-related experience mainly covers the pharma industry, the financial sector, energy, lottery and telecommunications.\",\"sameAs\":[\"https:\\\/\\\/x.com\\\/westermanndanie\"],\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/author\\\/daniel-westermann\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"AWS RDS for PostgreSQL \u2013 4 \u2013 Changing parameters - dbi Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/","og_locale":"en_US","og_type":"article","og_title":"AWS RDS for PostgreSQL \u2013 4 \u2013 Changing parameters","og_description":"If you followed that last posts about DB Parameter Groups, Subnet Groups and Setting up the RDS instance you should have a running RDS instance. You should also be aware that changing parameters can not be done like you usually do it but you need to do that by changing the DB parameter groups. In [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/","og_site_name":"dbi Blog","article_published_time":"2020-04-11T07:47:58+00:00","og_image":[{"width":1597,"height":806,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_30.jpg","type":"image\/jpeg"}],"author":"Daniel Westermann","twitter_card":"summary_large_image","twitter_creator":"@westermanndanie","twitter_misc":{"Written by":"Daniel Westermann","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/"},"author":{"name":"Daniel Westermann","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66"},"headline":"AWS RDS for PostgreSQL \u2013 4 \u2013 Changing parameters","datePublished":"2020-04-11T07:47:58+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/"},"wordCount":528,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_30.jpg","keywords":["AWS","PostgreSQL","RDS"],"articleSection":["AWS","Database Administration &amp; Monitoring"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/","url":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/","name":"AWS RDS for PostgreSQL \u2013 4 \u2013 Changing parameters - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_30.jpg","datePublished":"2020-04-11T07:47:58+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_30.jpg","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/aws_rds_pg_30.jpg","width":1597,"height":806},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/aws-rds-for-postgresql-4-changing-parameters\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"AWS RDS for PostgreSQL \u2013 4 \u2013 Changing parameters"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/8d08e9bd996a89bd75c0286cbabf3c66","name":"Daniel Westermann","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/31350ceeecb1dd8986339a29bf040d4cd3cd087d410deccd8f55234466d6c317?s=96&d=mm&r=g","caption":"Daniel Westermann"},"description":"Daniel Westermann is Principal Consultant and Technology Leader Open Infrastructure at dbi services. He has more than 15 years of experience in management, engineering and optimization of databases and infrastructures, especially on Oracle and PostgreSQL. Since the beginning of his career, he has specialized in Oracle Technologies and is Oracle Certified Professional 12c and Oracle Certified Expert RAC\/GridInfra. Over time, Daniel has become increasingly interested in open source technologies, becoming \u201cTechnology Leader Open Infrastructure\u201d and PostgreSQL expert. \u00a0Based on community or EnterpriseDB tools, he develops and installs complex high available solutions with PostgreSQL. He is also a certified PostgreSQL Plus 9.0 Professional and a Postgres Advanced Server 9.4 Professional. He is a regular speaker at PostgreSQL conferences in Switzerland and Europe. Today Daniel is also supporting our customers on AWS services such as AWS RDS, database migrations into the cloud, EC2 and automated infrastructure management with AWS SSM (System Manager). He is a certified AWS Solutions Architect Professional. Prior to dbi services, Daniel was Management System Engineer at LC SYSTEMS-Engineering AG in Basel. Before that, he worked as Oracle Developper &amp;\u00a0Project Manager at Delta Energy Solutions AG in Basel (today Powel AG). Daniel holds a diploma in Business Informatics (DHBW, Germany). His branch-related experience mainly covers the pharma industry, the financial sector, energy, lottery and telecommunications.","sameAs":["https:\/\/x.com\/westermanndanie"],"url":"https:\/\/www.dbi-services.com\/blog\/author\/daniel-westermann\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/13919","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/29"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=13919"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/13919\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/13928"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=13919"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=13919"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=13919"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=13919"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}