{"id":8224,"date":"2020-01-21T10:49:11","date_gmt":"2020-01-21T09:49:11","guid":{"rendered":"https:\/\/blog.capdata.fr\/?p=8224"},"modified":"2021-02-26T14:45:48","modified_gmt":"2021-02-26T13:45:48","slug":"aws-rds-les-extensions-postgresql","status":"publish","type":"post","link":"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/","title":{"rendered":"AWS RDS : les extensions PostgreSQL"},"content":{"rendered":"<a class=\"synved-social-button synved-social-button-share synved-social-size-24 synved-social-resolution-single synved-social-provider-twitter nolightbox\" data-provider=\"twitter\" target=\"_blank\" rel=\"nofollow\" title=\"Share on Twitter\" href=\"https:\/\/twitter.com\/intent\/tweet?url=https%3A%2F%2Fblog.capdata.fr%2Findex.php%2Fwp-json%2Fwp%2Fv2%2Fposts%2F8224&#038;text=Article%20sur%20le%20blog%20de%20la%20Capdata%20Tech%20Team%20%3A%20\" style=\"font-size: 0px;width:24px;height:24px;margin:0;margin-bottom:5px;margin-right:5px\"><img loading=\"lazy\" decoding=\"async\" alt=\"twitter\" title=\"Share on Twitter\" class=\"synved-share-image synved-social-image synved-social-image-share\" width=\"24\" height=\"24\" style=\"display: inline;width:24px;height:24px;margin: 0;padding: 0;border: none;box-shadow: none\" src=\"https:\/\/blog.capdata.fr\/wp-content\/plugins\/social-media-feather\/synved-social\/image\/social\/regular\/48x48\/twitter.png\" \/><\/a><a class=\"synved-social-button synved-social-button-share synved-social-size-24 synved-social-resolution-single synved-social-provider-linkedin nolightbox\" data-provider=\"linkedin\" target=\"_blank\" rel=\"nofollow\" title=\"Share on Linkedin\" href=\"https:\/\/www.linkedin.com\/shareArticle?mini=true&#038;url=https%3A%2F%2Fblog.capdata.fr%2Findex.php%2Fwp-json%2Fwp%2Fv2%2Fposts%2F8224&#038;title=AWS%20RDS%20%3A%20les%20extensions%20PostgreSQL\" style=\"font-size: 0px;width:24px;height:24px;margin:0;margin-bottom:5px;margin-right:5px\"><img loading=\"lazy\" decoding=\"async\" alt=\"linkedin\" title=\"Share on Linkedin\" class=\"synved-share-image synved-social-image synved-social-image-share\" width=\"24\" height=\"24\" style=\"display: inline;width:24px;height:24px;margin: 0;padding: 0;border: none;box-shadow: none\" src=\"https:\/\/blog.capdata.fr\/wp-content\/plugins\/social-media-feather\/synved-social\/image\/social\/regular\/48x48\/linkedin.png\" \/><\/a><a class=\"synved-social-button synved-social-button-share synved-social-size-24 synved-social-resolution-single synved-social-provider-mail nolightbox\" data-provider=\"mail\" rel=\"nofollow\" title=\"Share by email\" href=\"mailto:?subject=AWS%20RDS%20%3A%20les%20extensions%20PostgreSQL&#038;body=Article%20sur%20le%20blog%20de%20la%20Capdata%20Tech%20Team%20%3A%20:%20https%3A%2F%2Fblog.capdata.fr%2Findex.php%2Fwp-json%2Fwp%2Fv2%2Fposts%2F8224\" style=\"font-size: 0px;width:24px;height:24px;margin:0;margin-bottom:5px\"><img loading=\"lazy\" decoding=\"async\" alt=\"mail\" title=\"Share by email\" class=\"synved-share-image synved-social-image synved-social-image-share\" width=\"24\" height=\"24\" style=\"display: inline;width:24px;height:24px;margin: 0;padding: 0;border: none;box-shadow: none\" src=\"https:\/\/blog.capdata.fr\/wp-content\/plugins\/social-media-feather\/synved-social\/image\/social\/regular\/48x48\/mail.png\" \/><\/a><p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-8225\" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/PG_AWS-300x212.jpg\" alt=\"\" width=\"300\" height=\"212\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/PG_AWS-300x212.jpg 300w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/PG_AWS.jpg 343w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/>\u00a0 \u00a0 Les extensions sont ces petits &#8220;programmes&#8221; qui permettent \u00e0 PostgreSQL d&#8217;acqu\u00e9rir de nouvelles fonctionnalit\u00e9s plus pouss\u00e9s via des proc\u00e9dures ou scripts SQL directement charg\u00e9s et ex\u00e9cut\u00e9s en base.<\/p>\n<p>Voici un nouvel article qui d\u00e9crit les \u00e9tapes n\u00e9cessaires \u00e0 la mise en place d\u2019une extension PostgreSQL pour une instance g\u00e9r\u00e9e dans Amazon RDS pour PostgreSQL.<br \/>\nNous prendrons pour exemple l\u2019extension \u00ab\u00a0pg_stat_statements\u00a0\u00bb qui est une extension utilis\u00e9e pour enregistrer les statistiques sur les diff\u00e9rentes requ\u00eates pass\u00e9es en base.<\/p>\n<p>Cette extension est essentielle pour effectuer des \u00e9tudes de performances au sein d&#8217;une instance.<\/p>\n<p>Nous partirons sur cette extension qui est pr\u00e9sente dans les \u00ab contribs \u00bb par d\u00e9faut sur PostgreSQL, et, qu&#8217;Amazon a int\u00e9gr\u00e9 \u00e0 sa solution AWS RDS. Les \u00e9tapes syst\u00e8me de compilations et d\u2019int\u00e9gration\u00a0 pr\u00e9requis sont donc enti\u00e8rement g\u00e9r\u00e9es par AWS.<\/p>\n<p>&nbsp;<\/p>\n<h1>Cr\u00e9ation de l\u2019extension dans PostgreSQL<\/h1>\n<p>On s\u2019assure d\u2019avoir cr\u00e9\u00e9 une base PostgreSQL sous AWS RDS. Nous pouvons prendre une version 11 pour le moteur PostgreSQL. Le nom de notre instance est \u00ab PGcapdata\u00bb.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8228 size-full\" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/pg_test.jpg\" alt=\"\" width=\"925\" height=\"48\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/pg_test.jpg 925w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/pg_test-300x16.jpg 300w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/pg_test-768x40.jpg 768w\" sizes=\"auto, (max-width: 925px) 100vw, 925px\" \/><\/p>\n<p>A l\u2019aide d\u2019un client PostgreSQL , comme PgAdmin4, nous irons effectuer les op\u00e9rations suivantes.<\/p>\n<p>Lister les extensions disponibles par d\u00e9faut sous Amazon RDS.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8258 \" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image23.png\" alt=\"\" width=\"976\" height=\"159\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image23.png 945w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image23-300x49.png 300w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image23-768x125.png 768w\" sizes=\"auto, (max-width: 976px) 100vw, 976px\" \/><\/p>\n<p>Il est sera pr\u00e9f\u00e9rable d\u2019effectuer un filtrage sur le nom de l\u2019extension avec \u00a0\u2018pg_%\u2019.<\/p>\n<p>Voyons si notre extension \u2018pg_stat_statements\u2019 est disponible sous Amazon RDS.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8245 \" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image2.png\" alt=\"\" width=\"1087\" height=\"460\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image2.png 945w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image2-300x127.png 300w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image2-768x325.png 768w\" sizes=\"auto, (max-width: 1087px) 100vw, 1087px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Nous pouvons, d\u2019ores et d\u00e9j\u00e0, cr\u00e9er l\u2019extension<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8233 \" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image3.jpg\" alt=\"\" width=\"326\" height=\"135\" \/><\/p>\n<p>On v\u00e9rifie sa prise en compte<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8234 \" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image4.jpg\" alt=\"\" width=\"585\" height=\"146\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image4.jpg 521w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image4-300x75.jpg 300w\" sizes=\"auto, (max-width: 585px) 100vw, 585px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>La nouvelle extension est donc bien cr\u00e9\u00e9e sous le sch\u00e9ma public de notre base Postgres\u00a0:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8235 \" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image5.jpg\" alt=\"\" width=\"454\" height=\"142\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image5.jpg 342w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image5-300x94.jpg 300w\" sizes=\"auto, (max-width: 454px) 100vw, 454px\" \/><\/p>\n<p>On ira v\u00e9rifier les valeurs configur\u00e9es pour l\u2019extension<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8237 \" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image6.jpg\" alt=\"\" width=\"621\" height=\"176\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image6.jpg 529w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image6-300x85.jpg 300w\" sizes=\"auto, (max-width: 621px) 100vw, 621px\" \/><\/p>\n<p>Ces valeurs li\u00e9es \u00e0 l\u2019extension, sont celles par d\u00e9faut d\u00e9finis par Amazon.<br \/>\nNous souhaitons, par la suite, changer ces derni\u00e8res.<\/p>\n<h2>Modification des param\u00e8tres<\/h2>\n<p>S\u2019il l\u2019on souhaite modifier les param\u00e8tres de notre instance PostgreSQL, il sera n\u00e9cessaire de cr\u00e9er un nouveau \u00ab\u00a0parameter group\u00a0\u00bb. Puis effectuer la modification dans ce \u00ab\u00a0parameter group\u00a0\u00bb.<\/p>\n<p><strong><span style=\"color: #ff6600;\">Cr\u00e9ation du parameter group<\/span><\/strong><\/p>\n<p>On peut utiliser la console AWS pour cr\u00e9er ce nouveau parameter group.<br \/>\nDans Amazon RDS, rep\u00e9rer l\u2019onglet \u00ab <img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-8238\" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image7.jpg\" alt=\"\" width=\"133\" height=\"16\" \/> \u00a0\u00bb puis cliquer sur \u00ab Create parameter group \u00bb.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8239 \" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image8.jpg\" alt=\"\" width=\"401\" height=\"90\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image8.jpg 339w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image8-300x67.jpg 300w\" sizes=\"auto, (max-width: 401px) 100vw, 401px\" \/><\/p>\n<p>Puis donner les informations relatives \u00e0 votre nouveau parameter group. On l\u2019appellera \u00ab\u00a0ParamGrouPostgreSQL11PGSTAT\u00a0\u00bb<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8240 \" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image9.jpg\" alt=\"\" width=\"611\" height=\"359\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image9.jpg 548w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image9-300x176.jpg 300w\" sizes=\"auto, (max-width: 611px) 100vw, 611px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Celui-ci est pr\u00e9sent dans la liste des parameter groups.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8260 \" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image24.png\" alt=\"\" width=\"971\" height=\"76\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image24.png 945w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image24-300x23.png 300w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image24-768x60.png 768w\" sizes=\"auto, (max-width: 971px) 100vw, 971px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p><strong><span style=\"color: #ff6600;\">awscli<\/span><\/strong><\/p>\n<p>On peut \u00e9galement utiliser \u2018awscli\u2019 pour cr\u00e9er ce nouveau groupe\u00a0:<\/p>\n<p>&nbsp;<\/p>\n<blockquote>\n<pre>aws rds create-db-parameter-group \\\r\n\u00a0 --db-parameter-group-name <span style=\"color: #ff0000;\">ParamGrouPostgreSQL11PGSTAT<\/span> \\\r\n\u00a0 --db-parameter-group-family postgres11 \\\r\n\u00a0 --description <em>\"<\/em><span style=\"color: #ff0000;\">parameter group PostgreSQL with pg_stat_statements<\/span><em>\"\\\r\n<\/em>  --region eu-west-3<\/pre>\n<\/blockquote>\n<p>Une fois cr\u00e9\u00e9, il s\u2019agirait d\u2019aller effectuer les modifications n\u00e9cessaires pour les param\u00e8tres de l\u2019instance PostgreSQL, et surtout, pour notre nouvelle extension \u00ab\u00a0pg_stat_statement\u00a0\u00bb.<br \/>\nVoici les param\u00e8tres que l\u2019on souhaite appliquer pour cette extension\u00a0:<\/p>\n<pre><em>pg_stat_statements.max\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0  = 4000<\/em><em>\r\npg_stat_statements.track\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0  = all\r\npg_stat_statements.track_utility \u00a0= on\r\npg_stat_statements.save\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0  = on\r\ntrack_activity_query_size\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0 = 4096<\/em><\/pre>\n<p>&nbsp;<\/p>\n<p>Choisir notre nouveau parameter group et \u00e9diter les valeurs qui seront \u00e0 modifier, on s\u2019aper\u00e7oit dans le champs Values que tout est vide.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8243 size-full\" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image12.png\" alt=\"\" width=\"945\" height=\"383\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image12.png 945w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image12-300x122.png 300w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image12-768x311.png 768w\" sizes=\"auto, (max-width: 945px) 100vw, 945px\" \/><\/p>\n<p>Cliquer sur &#8220;Edit parameters&#8221; et donner les valeurs comme mentionn\u00e9es au dessus. Ce qui donnera l&#8217;affichage suivant:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8246 size-full\" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image15.png\" alt=\"\" width=\"945\" height=\"382\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image15.png 945w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image15-300x121.png 300w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image15-768x310.png 768w\" sizes=\"auto, (max-width: 945px) 100vw, 945px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p><strong><span style=\"color: #ff6600;\">awscli<\/span><\/strong><\/p>\n<p>La commande \u2018awscli\u2019 relative \u00e0 la modification du parameter group est la suivante\u00a0:<\/p>\n<p>&nbsp;<\/p>\n<blockquote>\n<pre>aws rds modify-db-parameter-group \\\r\n \u00a0\u00a0 --db-parameter-group-name <span style=\"color: #ff0000;\">ParamGrouPostgreSQL11PGSTAT<\/span> \\\r\n  \u00a0\u00a0--parameters\r\n\u00a0\"ParameterName=pg_stat_statements.max,ParameterValue=<span style=\"color: #ff0000;\"><em>4000<\/em><\/span>,ApplyMethod=pending-reboot\" \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\r\n \"ParameterName=pg_stat_statements.track,ParameterValue=<span style=\"color: #ff0000;\"><em>ALL<\/em><\/span>,ApplyMethod=<em>immediate<\/em>\" \\\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\r\n \"ParameterName=pg_stat_statements.track_utility,ParameterValue=<span style=\"color: #ff0000;\"><em>1<\/em><\/span>,ApplyMethod=<em>immediate<\/em>\" \\\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \r\n\u00a0\"ParameterName=pg_stat_statements.save,ParameterValue=<span style=\"color: #ff0000;\"><em>1<\/em><\/span>,ApplyMethod=<em>immediate<\/em>\" \\\r\n\u00a0 \u00a0--region eu-west-3<\/pre>\n<\/blockquote>\n<p>&nbsp;<\/p>\n<p>Attention, le param\u00e8tre \u00ab\u00a0pg_stat_statements.max\u00a0\u00bb est statique. Il ne sera pris en compte qu\u2019apr\u00e8s affectation \u00e0 une instance et reboot de celle-ci.<\/p>\n<h1>Param\u00e9trage instance PostgreSQL<\/h1>\n<p>&nbsp;<\/p>\n<p>La suite consistera \u00e0 attribuer notre nouveau parameter group \u00e0 notre instance PostgreSQL.<br \/>\nDans la liste des instances de bases de donn\u00e9es, choisir la base PostgreSQL que l\u2019on souhaite modifier, puis cliquer sur\u00a0\u00a0 <img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-8249\" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image16.png\" alt=\"\" width=\"96\" height=\"39\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8250 size-full\" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image17.png\" alt=\"\" width=\"857\" height=\"437\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image17.png 857w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image17-300x153.png 300w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image17-768x392.png 768w\" sizes=\"auto, (max-width: 857px) 100vw, 857px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Les options \u00e0 modifier se situent dans \u00ab\u00a0Database options\u00a0\u00bb.<br \/>\nPrendre le nouveau parameter group<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8251 size-full\" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image18.png\" alt=\"\" width=\"945\" height=\"479\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image18.png 945w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image18-300x152.png 300w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image18-768x389.png 768w\" sizes=\"auto, (max-width: 945px) 100vw, 945px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Puis appliquer les changements en cliquant sur\u00a0 <img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-8252\" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image19.png\" alt=\"\" width=\"143\" height=\"31\" \/><\/p>\n<p>Si cette instance n\u2019est pas en production, on pourra appliquer imm\u00e9diatement les modifications.<\/p>\n<p>&nbsp;<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8563 \" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/veoliabrouillee.png\" alt=\"\" width=\"626\" height=\"517\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/veoliabrouillee.png 773w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/veoliabrouillee-300x248.png 300w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/veoliabrouillee-768x634.png 768w\" sizes=\"auto, (max-width: 626px) 100vw, 626px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Un reboot de l\u2019instance est n\u00e9cessaire pour prendre en compte ces op\u00e9rations\u00a0:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8254 \" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image21.png\" alt=\"\" width=\"337\" height=\"214\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image21.png 391w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image21-300x190.png 300w\" sizes=\"auto, (max-width: 337px) 100vw, 337px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Apr\u00e8s reboot, on retournera sur PgAdmin4 v\u00e9rifier nos param\u00e8tres\u00a0:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-8255 size-full\" src=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image22.png\" alt=\"\" width=\"851\" height=\"296\" srcset=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image22.png 851w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image22-300x104.png 300w, https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/Image22-768x267.png 768w\" sizes=\"auto, (max-width: 851px) 100vw, 851px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p><strong><span style=\"color: #ff6600;\">awscli<\/span><\/strong><\/p>\n<p>La commande awscli pour effectuer ce changement est la suivante\u00a0:<\/p>\n<p>&nbsp;<\/p>\n<pre>   aws rds modify-db-instance --db-instance-identifier <span style=\"color: #ff0000;\">PGcapdata<\/span> \\\r\n      --db-parameter-group-name <span style=\"color: #ff0000;\">ParamGrouPostgreSQL11PGSTAT<\/span> \\\r\n      --apply-immediately --region eu-west-3\r\n\r\n<\/pre>\n<p>Puis red\u00e9marrer l\u2019instance PostgreSQL<\/p>\n<p>&nbsp;<\/p>\n<pre>   aws rds reboot-db-instance --db-instance-identifier <span style=\"color: #ff0000;\">PGcapdata\r\n\r\n\r\n<\/span><\/pre>\n<p>La prise en compte de cette nouvelle extension est donc act\u00e9e.<\/p>\n<p>N&#8217;h\u00e9sitez pas \u00e0 laisser vos remarques !<\/p>\n<p>&nbsp;<\/p>\n<p>Emmanuel RAMI<\/p>\n<a class=\"synved-social-button synved-social-button-share synved-social-size-24 synved-social-resolution-single synved-social-provider-twitter nolightbox\" data-provider=\"twitter\" target=\"_blank\" rel=\"nofollow\" title=\"Share on Twitter\" href=\"https:\/\/twitter.com\/intent\/tweet?url=https%3A%2F%2Fblog.capdata.fr%2Findex.php%2Fwp-json%2Fwp%2Fv2%2Fposts%2F8224&#038;text=Article%20sur%20le%20blog%20de%20la%20Capdata%20Tech%20Team%20%3A%20\" style=\"font-size: 0px;width:24px;height:24px;margin:0;margin-bottom:5px;margin-right:5px\"><img loading=\"lazy\" decoding=\"async\" alt=\"twitter\" title=\"Share on Twitter\" class=\"synved-share-image synved-social-image synved-social-image-share\" width=\"24\" height=\"24\" style=\"display: inline;width:24px;height:24px;margin: 0;padding: 0;border: none;box-shadow: none\" src=\"https:\/\/blog.capdata.fr\/wp-content\/plugins\/social-media-feather\/synved-social\/image\/social\/regular\/48x48\/twitter.png\" \/><\/a><a class=\"synved-social-button synved-social-button-share synved-social-size-24 synved-social-resolution-single synved-social-provider-linkedin nolightbox\" data-provider=\"linkedin\" target=\"_blank\" rel=\"nofollow\" title=\"Share on Linkedin\" href=\"https:\/\/www.linkedin.com\/shareArticle?mini=true&#038;url=https%3A%2F%2Fblog.capdata.fr%2Findex.php%2Fwp-json%2Fwp%2Fv2%2Fposts%2F8224&#038;title=AWS%20RDS%20%3A%20les%20extensions%20PostgreSQL\" style=\"font-size: 0px;width:24px;height:24px;margin:0;margin-bottom:5px;margin-right:5px\"><img loading=\"lazy\" decoding=\"async\" alt=\"linkedin\" title=\"Share on Linkedin\" class=\"synved-share-image synved-social-image synved-social-image-share\" width=\"24\" height=\"24\" style=\"display: inline;width:24px;height:24px;margin: 0;padding: 0;border: none;box-shadow: none\" src=\"https:\/\/blog.capdata.fr\/wp-content\/plugins\/social-media-feather\/synved-social\/image\/social\/regular\/48x48\/linkedin.png\" \/><\/a><a class=\"synved-social-button synved-social-button-share synved-social-size-24 synved-social-resolution-single synved-social-provider-mail nolightbox\" data-provider=\"mail\" rel=\"nofollow\" title=\"Share by email\" href=\"mailto:?subject=AWS%20RDS%20%3A%20les%20extensions%20PostgreSQL&#038;body=Article%20sur%20le%20blog%20de%20la%20Capdata%20Tech%20Team%20%3A%20:%20https%3A%2F%2Fblog.capdata.fr%2Findex.php%2Fwp-json%2Fwp%2Fv2%2Fposts%2F8224\" style=\"font-size: 0px;width:24px;height:24px;margin:0;margin-bottom:5px\"><img loading=\"lazy\" decoding=\"async\" alt=\"mail\" title=\"Share by email\" class=\"synved-share-image synved-social-image synved-social-image-share\" width=\"24\" height=\"24\" style=\"display: inline;width:24px;height:24px;margin: 0;padding: 0;border: none;box-shadow: none\" src=\"https:\/\/blog.capdata.fr\/wp-content\/plugins\/social-media-feather\/synved-social\/image\/social\/regular\/48x48\/mail.png\" \/><\/a>","protected":false},"excerpt":{"rendered":"<p>\u00a0 \u00a0 Les extensions sont ces petits &#8220;programmes&#8221; qui permettent \u00e0 PostgreSQL d&#8217;acqu\u00e9rir de nouvelles fonctionnalit\u00e9s plus pouss\u00e9s via des proc\u00e9dures ou scripts SQL directement charg\u00e9s et ex\u00e9cut\u00e9s en base. Voici un nouvel article qui d\u00e9crit les \u00e9tapes n\u00e9cessaires \u00e0&hellip; <a href=\"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/\" class=\"more-link\">Continuer la lecture <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":32,"featured_media":8225,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[295,266],"tags":[],"class_list":["post-8224","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-aws","category-postgresql"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>AWS RDS : les extensions PostgreSQL - Capdata TECH 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:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"AWS RDS : les extensions PostgreSQL - Capdata TECH BLOG\" \/>\n<meta property=\"og:description\" content=\"\u00a0 \u00a0 Les extensions sont ces petits &#8220;programmes&#8221; qui permettent \u00e0 PostgreSQL d&#8217;acqu\u00e9rir de nouvelles fonctionnalit\u00e9s plus pouss\u00e9s via des proc\u00e9dures ou scripts SQL directement charg\u00e9s et ex\u00e9cut\u00e9s en base. Voici un nouvel article qui d\u00e9crit les \u00e9tapes n\u00e9cessaires \u00e0&hellip; Continuer la lecture &rarr;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/\" \/>\n<meta property=\"og:site_name\" content=\"Capdata TECH BLOG\" \/>\n<meta property=\"article:published_time\" content=\"2020-01-21T09:49:11+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-02-26T13:45:48+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/PG_AWS.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"343\" \/>\n\t<meta property=\"og:image:height\" content=\"242\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Emmanuel RAMI\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"Emmanuel RAMI\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\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:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/\"},\"author\":{\"name\":\"Emmanuel RAMI\",\"@id\":\"https:\/\/blog.capdata.fr\/#\/schema\/person\/797b9b6698fa35f7ce3e9a70a8b102ae\"},\"headline\":\"AWS RDS : les extensions PostgreSQL\",\"datePublished\":\"2020-01-21T09:49:11+00:00\",\"dateModified\":\"2021-02-26T13:45:48+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/\"},\"wordCount\":702,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/blog.capdata.fr\/#organization\"},\"articleSection\":[\"AWS\",\"PostgreSQL\"],\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/\",\"url\":\"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/\",\"name\":\"AWS RDS : les extensions PostgreSQL - Capdata TECH BLOG\",\"isPartOf\":{\"@id\":\"https:\/\/blog.capdata.fr\/#website\"},\"datePublished\":\"2020-01-21T09:49:11+00:00\",\"dateModified\":\"2021-02-26T13:45:48+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/blog.capdata.fr\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"AWS RDS : les extensions PostgreSQL\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.capdata.fr\/#website\",\"url\":\"https:\/\/blog.capdata.fr\/\",\"name\":\"Capdata TECH BLOG\",\"description\":\"Le blog technique sur les bases de donn\u00e9es de CAP DATA Consulting\",\"publisher\":{\"@id\":\"https:\/\/blog.capdata.fr\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.capdata.fr\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/blog.capdata.fr\/#organization\",\"name\":\"Capdata TECH BLOG\",\"url\":\"https:\/\/blog.capdata.fr\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/blog.capdata.fr\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2023\/01\/logo_capdata.webp\",\"contentUrl\":\"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2023\/01\/logo_capdata.webp\",\"width\":800,\"height\":254,\"caption\":\"Capdata TECH BLOG\"},\"image\":{\"@id\":\"https:\/\/blog.capdata.fr\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.linkedin.com\/company\/cap-data-consulting\/mycompany\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.capdata.fr\/#\/schema\/person\/797b9b6698fa35f7ce3e9a70a8b102ae\",\"name\":\"Emmanuel RAMI\",\"sameAs\":[\"https:\/\/blog.capdata.fr\"],\"url\":\"https:\/\/blog.capdata.fr\/index.php\/author\/erami\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"AWS RDS : les extensions PostgreSQL - Capdata TECH 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:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/","og_locale":"fr_FR","og_type":"article","og_title":"AWS RDS : les extensions PostgreSQL - Capdata TECH BLOG","og_description":"\u00a0 \u00a0 Les extensions sont ces petits &#8220;programmes&#8221; qui permettent \u00e0 PostgreSQL d&#8217;acqu\u00e9rir de nouvelles fonctionnalit\u00e9s plus pouss\u00e9s via des proc\u00e9dures ou scripts SQL directement charg\u00e9s et ex\u00e9cut\u00e9s en base. Voici un nouvel article qui d\u00e9crit les \u00e9tapes n\u00e9cessaires \u00e0&hellip; Continuer la lecture &rarr;","og_url":"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/","og_site_name":"Capdata TECH BLOG","article_published_time":"2020-01-21T09:49:11+00:00","article_modified_time":"2021-02-26T13:45:48+00:00","og_image":[{"width":343,"height":242,"url":"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2020\/01\/PG_AWS.jpg","type":"image\/jpeg"}],"author":"Emmanuel RAMI","twitter_card":"summary_large_image","twitter_misc":{"\u00c9crit par":"Emmanuel RAMI","Dur\u00e9e de lecture estim\u00e9e":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/#article","isPartOf":{"@id":"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/"},"author":{"name":"Emmanuel RAMI","@id":"https:\/\/blog.capdata.fr\/#\/schema\/person\/797b9b6698fa35f7ce3e9a70a8b102ae"},"headline":"AWS RDS : les extensions PostgreSQL","datePublished":"2020-01-21T09:49:11+00:00","dateModified":"2021-02-26T13:45:48+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/"},"wordCount":702,"commentCount":0,"publisher":{"@id":"https:\/\/blog.capdata.fr\/#organization"},"articleSection":["AWS","PostgreSQL"],"inLanguage":"fr-FR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/","url":"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/","name":"AWS RDS : les extensions PostgreSQL - Capdata TECH BLOG","isPartOf":{"@id":"https:\/\/blog.capdata.fr\/#website"},"datePublished":"2020-01-21T09:49:11+00:00","dateModified":"2021-02-26T13:45:48+00:00","breadcrumb":{"@id":"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/blog.capdata.fr\/index.php\/aws-rds-les-extensions-postgresql\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/blog.capdata.fr\/"},{"@type":"ListItem","position":2,"name":"AWS RDS : les extensions PostgreSQL"}]},{"@type":"WebSite","@id":"https:\/\/blog.capdata.fr\/#website","url":"https:\/\/blog.capdata.fr\/","name":"Capdata TECH BLOG","description":"Le blog technique sur les bases de donn\u00e9es de CAP DATA Consulting","publisher":{"@id":"https:\/\/blog.capdata.fr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.capdata.fr\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/blog.capdata.fr\/#organization","name":"Capdata TECH BLOG","url":"https:\/\/blog.capdata.fr\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/blog.capdata.fr\/#\/schema\/logo\/image\/","url":"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2023\/01\/logo_capdata.webp","contentUrl":"https:\/\/blog.capdata.fr\/wp-content\/uploads\/2023\/01\/logo_capdata.webp","width":800,"height":254,"caption":"Capdata TECH BLOG"},"image":{"@id":"https:\/\/blog.capdata.fr\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.linkedin.com\/company\/cap-data-consulting\/mycompany\/"]},{"@type":"Person","@id":"https:\/\/blog.capdata.fr\/#\/schema\/person\/797b9b6698fa35f7ce3e9a70a8b102ae","name":"Emmanuel RAMI","sameAs":["https:\/\/blog.capdata.fr"],"url":"https:\/\/blog.capdata.fr\/index.php\/author\/erami\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.capdata.fr\/index.php\/wp-json\/wp\/v2\/posts\/8224","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.capdata.fr\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.capdata.fr\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.capdata.fr\/index.php\/wp-json\/wp\/v2\/users\/32"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.capdata.fr\/index.php\/wp-json\/wp\/v2\/comments?post=8224"}],"version-history":[{"count":12,"href":"https:\/\/blog.capdata.fr\/index.php\/wp-json\/wp\/v2\/posts\/8224\/revisions"}],"predecessor-version":[{"id":8565,"href":"https:\/\/blog.capdata.fr\/index.php\/wp-json\/wp\/v2\/posts\/8224\/revisions\/8565"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.capdata.fr\/index.php\/wp-json\/wp\/v2\/media\/8225"}],"wp:attachment":[{"href":"https:\/\/blog.capdata.fr\/index.php\/wp-json\/wp\/v2\/media?parent=8224"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.capdata.fr\/index.php\/wp-json\/wp\/v2\/categories?post=8224"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.capdata.fr\/index.php\/wp-json\/wp\/v2\/tags?post=8224"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}