
{"id":5933,"date":"2024-08-14T08:43:52","date_gmt":"2024-08-14T08:43:52","guid":{"rendered":"https:\/\/test.opensource-db.in\/wp1\/?p=5933"},"modified":"2024-08-14T08:43:53","modified_gmt":"2024-08-14T08:43:53","slug":"migration-from-supabase-to-rds-user-guide","status":"publish","type":"post","link":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/","title":{"rendered":"Migration from Supabase to RDS : User Guide"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">In today&#8217;s rapidly evolving tech landscape, organizations often find themselves needing to adapt their infrastructure to better meet their needs. Whether driven by requirements for greater control, performance, scalability, or compliance, migrating from a managed service like Supabase to an on-premises or managed database service such as AWS RDS is a significant undertaking. Even though Supabase is a powerful, open-source Backend-as-a-Service platform built on PostgreSQL, and provides a range of features including real-time capabilities, authentication, and auto-scaling, there might be several reasons to migrate away from Supabase. In this blog, let&#8217;s explore the step by step approach for executing the PostgreSQL commands for a smooth migration process.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Migrating from one environment to another involves various strategies, each suited to different constraints and requirements. The approach you choose will depend on factors such as system limitations, acceptable downtime, and specific migration needs.  Considering the less downtime, we are going for the logical replication strategy to migrate.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step1 : Export Users<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Before setting up the replication, let&#8217;s export Users from Supabase to RDS using the pg_dumpall<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#Using pg_dumpall to get the users.\npg_dumpall --globals-only \\\n  -U postgres -h &lt;your_supabase_hostname&gt; \\\n  2&gt;stderr_globals.txt &gt; supabase_globals.sql\n\n#To restore them in RDS\npsql -f supabase_globals.sql -h &lt;your_RDS_hostname&gt; -U postgres -d postgres -W<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Since Supabase is a managed service, it includes its own default users, which will be present in the exported <code>supabase_globals.sql<\/code> file. These default users may not be compatible with AWS RDS, which is also a managed service. You can either remove these users from the SQL file before restoring it, or delete them from RDS after the restoration process is complete.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step2 : Export Schema<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">After the users are imported in RDS, we have to export the schema as well<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Using pg_dump to export the schema\npg_dump --schema-only \\\n  -U postgres -h &lt;your_supabase_hostname&gt; \\\n--schema=&lt;schema_name&gt; --schema=&lt;schema_name&gt; \\\n  2&gt;stderr_schema.txt &gt; postgres_schema_only.sql\n\n# To restore them in RDS\npsql -f postgres_schema_only.sql -h &lt;your_RDS_hostname&gt; -U postgres -d postgres -W<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Export the necessary schemas and restore them similar to what was done for the Users. You may ignore some default schemas, if they wouldn&#8217;t be needed.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step3 : Setup for logical replication<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>On Source<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Create publication for the tables in required schemas.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>#Create publication for tables in schema_1 and schema_2. Add the schema names as per your environment.\nCREATE PUBLICATION &lt;publication_name&gt; FOR TABLES IN SCHEMA schema_1,schema_2;<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Checking the replication slot status after creating subscription<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>#To check the status of replication_slot\nselect * from pg_replication_slots;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Make sure that replication is active.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>On Target<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Create subscription for the publication <\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>CREATE SUBSCRIPTION &lt;subscription_name&gt;\nCONNECTION 'dbname=postgres host=&lt;your_supabase_hostname&gt; user=postgres password=&lt;postgres_password&gt;'\nPUBLICATION &lt;publication_name&gt;\nWITH (copy_data = true);<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Replication_slot will be automatically created<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Check the subscription status<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>select * from pg_subscription_rel;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">You can get the information about the relationship between subscriptions and the tables they replicate.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step4 : Validate the data migration <\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ensure that all tables, indexes, and constraints have been imported correctly. Compare the data in your AWS RDS instance with the original data in Supabase to ensure accuracy. You can use <code>DBeaver<\/code> tool for validation. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step5 : Migrate Sequences<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">There are a few limitations with the replication of sequence values with this approach. To overcome that , you can use the <code>SELECT setval<\/code> feature in PostgreSQL to set the value of a sequence. This is particularly useful when you want to ensure that a sequence is synchronised with the maximum value in a table column, which is often necessary after data has been imported or modified. <br>Note: You may wanna create a dynamic SQL (as following) to be generated beforehand and execute just before the cutover.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>SELECT setval('&lt;sequence_name>', (SELECT max(&lt;column_name>) FROM &lt;table_name>) , false);<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">However, we need to the stop the connections to the source while setting this sequence value to make sure there is no data push from application to source , source to target because the max sequence value may change if there is any data incoming . However, we need to have some downtime to map the application  to the target (i.e., on-premise or a different cloud) database. And also , we need to create such setval statements for each and every sequence existing in the database.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step6 : Cutover<\/h2>\n\n\n\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<p class=\"wp-block-paragraph\">After swapping the connection strings in your application from the old database to the new one and redirecting all traffic , we need to cutover the replication with the old database.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>On New database (Target)<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We need to disable the subscription and drop the subscription<\/p>\n<\/div>\n\n\n\n<pre class=\"wp-block-code\"><code>ALTER SUBSCRIPTION &lt;subscription_name> DISABLE;\n\nDROP SUBSCRIPTION &lt;subscription_name>;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The replication_slot will automatically dropped once the subscription is dropped.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>On Old database(Source)<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We need to drop the publication<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>DROP PUBLICATION &lt;publication_name>;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Migrating from a managed service like Supabase to an on-premises or managed database service such as AWS RDS is a complex endeavor. It requires a strategic approach to ensure minimal disruption and data integrity. Begin by exporting users and schema from Supabase, noting that Supabase\u2019s default users does not allow <code>postgres<\/code> to have superuser privileges .Thus, using the <code>postgres<\/code> user for migration tasks is advisable. Next, leverage logical replication to synchronize data with minimal downtime, and carefully validate data and sequences in the target environment.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Challenges include ensuring user permissions and system compatibility, as Supabase users cannot be granted replication roles and version differences may require specific handling. By meticulously planning, executing, and validating each step, organizations can smoothly transition their database infrastructure to AWS RDS, achieving better control, performance, and scalability.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Stay tuned and Happy Migrating &#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In today&#8217;s rapidly evolving tech landscape, organizations often find themselves needing to adapt their infrastructure to better meet their needs. [&hellip;]<\/p>\n","protected":false},"author":9,"featured_media":5943,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[1,23,42,89],"tags":[],"class_list":["post-5933","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-others","category-postgresql-14","category-postgresql-15","category-postgresql-16"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Migration from Supabase to RDS : User Guide - OpenSource DB<\/title>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Migration from Supabase to RDS : User Guide - OpenSource DB\" \/>\n<meta property=\"og:description\" content=\"In today&#8217;s rapidly evolving tech landscape, organizations often find themselves needing to adapt their infrastructure to better meet their needs. [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/\" \/>\n<meta property=\"og:site_name\" content=\"OpenSource DB\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/people\/OpenSource-DB\/100072970755470\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-08-14T08:43:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-08-14T08:43:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1800\" \/>\n\t<meta property=\"og:image:height\" content=\"945\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Venkat Akhil\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@opensource_db\" \/>\n<meta name=\"twitter:site\" content=\"@opensource_db\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Venkat Akhil\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/\"},\"author\":{\"name\":\"Venkat Akhil\",\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/#\/schema\/person\/a37b142ecbf953189a4f9209b0b8d328\"},\"headline\":\"Migration from Supabase to RDS : User Guide\",\"datePublished\":\"2024-08-14T08:43:52+00:00\",\"dateModified\":\"2024-08-14T08:43:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/\"},\"wordCount\":764,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/#organization\"},\"image\":{\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png\",\"articleSection\":[\"Others\",\"PostgreSQL 14\",\"PostgreSQL 15\",\"PostgreSQL 16\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/\",\"url\":\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/\",\"name\":\"Migration from Supabase to RDS : User Guide - OpenSource DB\",\"isPartOf\":{\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png\",\"datePublished\":\"2024-08-14T08:43:52+00:00\",\"dateModified\":\"2024-08-14T08:43:53+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#primaryimage\",\"url\":\"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png\",\"contentUrl\":\"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png\",\"width\":1800,\"height\":945},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/test.opensource-db.in\/wp1\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Migration from Supabase to RDS : User Guide\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/#website\",\"url\":\"https:\/\/test.opensource-db.in\/wp1\/\",\"name\":\"OpenSource DB\",\"description\":\"Your Trusted OpenSource Databases partner\",\"publisher\":{\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/test.opensource-db.in\/wp1\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/#organization\",\"name\":\"OPENSOURCE DB PRIVATE LIMITED\",\"url\":\"https:\/\/test.opensource-db.in\/wp1\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2021\/10\/osdb-logo-tm-2.png\",\"contentUrl\":\"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2021\/10\/osdb-logo-tm-2.png\",\"width\":368,\"height\":120,\"caption\":\"OPENSOURCE DB PRIVATE LIMITED\"},\"image\":{\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/people\/OpenSource-DB\/100072970755470\/\",\"https:\/\/x.com\/opensource_db\",\"https:\/\/www.youtube.com\/channel\/UCmTI5h\",\"https:\/\/www.linkedin.com\/company\/opensource-db\",\"https:\/\/www.instagram.com\/opensource_db\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/#\/schema\/person\/a37b142ecbf953189a4f9209b0b8d328\",\"name\":\"Venkat Akhil\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/test.opensource-db.in\/wp1\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/522c0947d21b2c2c89f10698fd9131f9db4110f65c8d02b53d9b4559c7650865?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/522c0947d21b2c2c89f10698fd9131f9db4110f65c8d02b53d9b4559c7650865?s=96&d=mm&r=g\",\"caption\":\"Venkat Akhil\"},\"url\":\"https:\/\/test.opensource-db.in\/wp1\/author\/sudheer-sopensource-db-com\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Migration from Supabase to RDS : User Guide - OpenSource DB","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_US","og_type":"article","og_title":"Migration from Supabase to RDS : User Guide - OpenSource DB","og_description":"In today&#8217;s rapidly evolving tech landscape, organizations often find themselves needing to adapt their infrastructure to better meet their needs. [&hellip;]","og_url":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/","og_site_name":"OpenSource DB","article_publisher":"https:\/\/www.facebook.com\/people\/OpenSource-DB\/100072970755470\/","article_published_time":"2024-08-14T08:43:52+00:00","article_modified_time":"2024-08-14T08:43:53+00:00","og_image":[{"width":1800,"height":945,"url":"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png","type":"image\/png"}],"author":"Venkat Akhil","twitter_card":"summary_large_image","twitter_creator":"@opensource_db","twitter_site":"@opensource_db","twitter_misc":{"Written by":"Venkat Akhil","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#article","isPartOf":{"@id":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/"},"author":{"name":"Venkat Akhil","@id":"https:\/\/test.opensource-db.in\/wp1\/#\/schema\/person\/a37b142ecbf953189a4f9209b0b8d328"},"headline":"Migration from Supabase to RDS : User Guide","datePublished":"2024-08-14T08:43:52+00:00","dateModified":"2024-08-14T08:43:53+00:00","mainEntityOfPage":{"@id":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/"},"wordCount":764,"commentCount":2,"publisher":{"@id":"https:\/\/test.opensource-db.in\/wp1\/#organization"},"image":{"@id":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png","articleSection":["Others","PostgreSQL 14","PostgreSQL 15","PostgreSQL 16"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/","url":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/","name":"Migration from Supabase to RDS : User Guide - OpenSource DB","isPartOf":{"@id":"https:\/\/test.opensource-db.in\/wp1\/#website"},"primaryImageOfPage":{"@id":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#primaryimage"},"image":{"@id":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png","datePublished":"2024-08-14T08:43:52+00:00","dateModified":"2024-08-14T08:43:53+00:00","breadcrumb":{"@id":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#primaryimage","url":"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png","contentUrl":"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png","width":1800,"height":945},{"@type":"BreadcrumbList","@id":"https:\/\/test.opensource-db.in\/wp1\/migration-from-supabase-to-rds-user-guide\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/test.opensource-db.in\/wp1\/"},{"@type":"ListItem","position":2,"name":"Migration from Supabase to RDS : User Guide"}]},{"@type":"WebSite","@id":"https:\/\/test.opensource-db.in\/wp1\/#website","url":"https:\/\/test.opensource-db.in\/wp1\/","name":"OpenSource DB","description":"Your Trusted OpenSource Databases partner","publisher":{"@id":"https:\/\/test.opensource-db.in\/wp1\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/test.opensource-db.in\/wp1\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/test.opensource-db.in\/wp1\/#organization","name":"OPENSOURCE DB PRIVATE LIMITED","url":"https:\/\/test.opensource-db.in\/wp1\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/test.opensource-db.in\/wp1\/#\/schema\/logo\/image\/","url":"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2021\/10\/osdb-logo-tm-2.png","contentUrl":"https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2021\/10\/osdb-logo-tm-2.png","width":368,"height":120,"caption":"OPENSOURCE DB PRIVATE LIMITED"},"image":{"@id":"https:\/\/test.opensource-db.in\/wp1\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/people\/OpenSource-DB\/100072970755470\/","https:\/\/x.com\/opensource_db","https:\/\/www.youtube.com\/channel\/UCmTI5h","https:\/\/www.linkedin.com\/company\/opensource-db","https:\/\/www.instagram.com\/opensource_db\/"]},{"@type":"Person","@id":"https:\/\/test.opensource-db.in\/wp1\/#\/schema\/person\/a37b142ecbf953189a4f9209b0b8d328","name":"Venkat Akhil","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/test.opensource-db.in\/wp1\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/522c0947d21b2c2c89f10698fd9131f9db4110f65c8d02b53d9b4559c7650865?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/522c0947d21b2c2c89f10698fd9131f9db4110f65c8d02b53d9b4559c7650865?s=96&d=mm&r=g","caption":"Venkat Akhil"},"url":"https:\/\/test.opensource-db.in\/wp1\/author\/sudheer-sopensource-db-com\/"}]}},"rttpg_featured_image_url":{"full":["https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png",1800,945,false],"landscape":["https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png",1800,945,false],"portraits":["https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png",1800,945,false],"thumbnail":["https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4-150x150.png",150,150,true],"medium":["https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4-300x158.png",300,158,true],"large":["https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4-1024x538.png",1024,538,true],"1536x1536":["https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4-1536x806.png",1536,806,true],"2048x2048":["https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png",1800,945,false],"ultp_layout_landscape_large":["https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png",1200,630,false],"ultp_layout_landscape":["https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png",870,457,false],"ultp_layout_portrait":["https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png",600,315,false],"ultp_layout_square":["https:\/\/test.opensource-db.in\/wp1\/wp-content\/uploads\/2024\/08\/image-4.png",600,315,false]},"rttpg_author":{"display_name":"Venkat Akhil","author_link":"https:\/\/test.opensource-db.in\/wp1\/author\/sudheer-sopensource-db-com\/"},"rttpg_comment":3,"rttpg_category":"<a href=\"https:\/\/test.opensource-db.in\/wp1\/category\/business\/others\/\" rel=\"category tag\">Others<\/a> <a href=\"https:\/\/test.opensource-db.in\/wp1\/category\/postgres\/postgresql-14\/\" rel=\"category tag\">PostgreSQL 14<\/a> <a href=\"https:\/\/test.opensource-db.in\/wp1\/category\/postgres\/postgresql-15\/\" rel=\"category tag\">PostgreSQL 15<\/a> <a href=\"https:\/\/test.opensource-db.in\/wp1\/category\/postgres\/postgresql-16\/\" rel=\"category tag\">PostgreSQL 16<\/a>","rttpg_excerpt":"In today&#8217;s rapidly evolving tech landscape, organizations often find themselves needing to adapt their infrastructure to better meet their needs. [&hellip;]","_links":{"self":[{"href":"https:\/\/test.opensource-db.in\/wp1\/wp-json\/wp\/v2\/posts\/5933","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/test.opensource-db.in\/wp1\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/test.opensource-db.in\/wp1\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/test.opensource-db.in\/wp1\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/test.opensource-db.in\/wp1\/wp-json\/wp\/v2\/comments?post=5933"}],"version-history":[{"count":5,"href":"https:\/\/test.opensource-db.in\/wp1\/wp-json\/wp\/v2\/posts\/5933\/revisions"}],"predecessor-version":[{"id":5945,"href":"https:\/\/test.opensource-db.in\/wp1\/wp-json\/wp\/v2\/posts\/5933\/revisions\/5945"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/test.opensource-db.in\/wp1\/wp-json\/wp\/v2\/media\/5943"}],"wp:attachment":[{"href":"https:\/\/test.opensource-db.in\/wp1\/wp-json\/wp\/v2\/media?parent=5933"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/test.opensource-db.in\/wp1\/wp-json\/wp\/v2\/categories?post=5933"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/test.opensource-db.in\/wp1\/wp-json\/wp\/v2\/tags?post=5933"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}