---
title: "Discussion on \"Automate Supabase Database Backups Using GitHub Actions\" | Hashnode"
description: "Discussion on \"Automate Supabase Database Backups Using GitHub Actions\". Automate Supabase database backups with GitHub Actions using Supabase CLI for secure, zero-effort, production-ready solutions"
url: "https://hashnode.com/posts/automate-supabase-database-backups-using-github-actions/6966fd0107e1f88430202be6"
---

[Feed](https://hashnode.com/feed) /

Discussion

# [Automate Supabase Database Backups Using GitHub Actions](https://blog.akashy.com.np/automate-supabase-database-backups-using-github-actions?utm_source=hashnode&utm_medium=feed)

Automate Supabase database backups with GitHub Actions using Supabase CLI for secure, zero-effort, production-ready solutions

Jan 14 · 4 min read · blog.akashy.com.np  
Read the article

-   [#github-actions-1](https://hashnode.com/tag/github-actions-1)
-   [#database-backup](https://hashnode.com/tag/database-backup)
-   [#postgresql](https://hashnode.com/tag/postgresql)
-   [#devops](https://hashnode.com/tag/devops)
-   [#automation](https://hashnode.com/tag/automation)
-   [#backend](https://hashnode.com/tag/backend)
-   [#cloud-engineering](https://hashnode.com/tag/cloud-engineering)

## Written by

[Akash Yadav](https://hashnode.com/@akashyadav)

@akashyadav · Biratnagar, Nepal

  
[View profile](https://hashnode.com/@akashyadav)

Developer who likes building useful things and learning along the way on the web.

🤖 Curious AI enthusiast and Software Engineer with 7+ years of experience. 🛠️ I enjoy getting my hands dirty with new technologies — experimenting, building side projects, and learning by doing. 🚀 Currently exploring how AI can enhance real-world web applications.

## Responses 1

Markdown supported · ⌘↵ to post

[Vlad Tkachenko](https://hashnode.com/@vladtkdev)

[3d ago](https://hashnode.com/posts/automate-supabase-database-backups-using-github-actions/6966fd0107e1f88430202be6/comment/6af0897fc4e20d95d72b3310)

Useful post, and the IPv6 diagnosis is the part most of these guides miss.

One thing to check in Step 1 though: the string you landed on uses the pooler's user with the direct connection's host. The shared pooler answers on `aws-[INDEX]-[REGION].pooler.supabase.com`, not `db.[ref].supabase.co`. And 6543 is transaction mode, which Supabase's connection guide puts outside pg\_dump, under "migrations, pg\_dump, backup and restore, or replication... single sessions and Postgres native commands". Session mode, 5432 on that pooler host, is the one it offers "when you connect from an IPv4-only network". Same fix you were reaching for, one port down.

Two for the restore post, from a drill we ran on 4 October: `roles.sql` stops on `ALTER ROLE "supabase_admin"` and on `GRANT SET ON PARAMETER`, and pg\_cron jobs do not come back, because they are rows in `cron.job` the data dump skips. Written up at [reeve.page/blog/how-to-restore-a-supabase-backup](https://reeve.page/blog/how-to-restore-a-supabase-backup)
