FEATURE (databasus): Migrate to new name

This commit is contained in:
Rostislav Dugin
2025-12-25 23:13:04 +03:00
parent e2f9989d5c
commit 895bdfbd4f
37 changed files with 1078 additions and 1007 deletions

View File

@@ -4,11 +4,11 @@ import DocsSidebarComponent from "../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "Access Management - Postgresus Documentation",
title: "Access Management - Databasus Documentation",
description:
"Learn how to manage access, roles, and permissions in Postgresus. Control who can sign up, create workspaces, and manage databases with workspace-level and system-level roles.",
"Learn how to manage access, roles, and permissions in Databasus. Control who can sign up, create workspaces, and manage databases with workspace-level and system-level roles.",
keywords: [
"Postgresus access management",
"Databasus access management",
"user roles",
"workspace permissions",
"audit logs",
@@ -18,20 +18,20 @@ export const metadata: Metadata = {
"workspace management",
],
openGraph: {
title: "Access Management - Postgresus Documentation",
title: "Access Management - Databasus Documentation",
description:
"Learn how to manage access, roles, and permissions in Postgresus. Control who can sign up, create workspaces, and manage databases with workspace-level and system-level roles.",
"Learn how to manage access, roles, and permissions in Databasus. Control who can sign up, create workspaces, and manage databases with workspace-level and system-level roles.",
type: "article",
url: "https://postgresus.com/access-management",
url: "https://databasus.com/access-management",
},
twitter: {
card: "summary",
title: "Access Management - Postgresus Documentation",
title: "Access Management - Databasus Documentation",
description:
"Learn how to manage access, roles, and permissions in Postgresus. Control who can sign up, create workspaces, and manage databases with workspace-level and system-level roles.",
"Learn how to manage access, roles, and permissions in Databasus. Control who can sign up, create workspaces, and manage databases with workspace-level and system-level roles.",
},
alternates: {
canonical: "https://postgresus.com/access-management",
canonical: "https://databasus.com/access-management",
},
robots: "index, follow",
};
@@ -46,19 +46,19 @@ export default function AccessManagementPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
headline: "Access Management - Postgresus Documentation",
headline: "Access Management - Databasus Documentation",
description:
"Learn how to manage access, roles, and permissions in Postgresus. Control who can sign up, create workspaces, and manage databases with workspace-level and system-level roles.",
"Learn how to manage access, roles, and permissions in Databasus. Control who can sign up, create workspaces, and manage databases with workspace-level and system-level roles.",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -78,21 +78,21 @@ export default function AccessManagementPage() {
<h1 id="settings">Settings</h1>
<p>
Postgresus is suitable both for single users and teams. This
Databasus is suitable both for single users and teams. This
section is dedicated to the access management for teams.{" "}
<strong>
So if you are the only user in your Postgresus instance
So if you are the only user in your Databasus instance
</strong>
, you can skip this section.
</p>
<p>
Postgresus does not have a lot of settings. Actually, it only
Databasus does not have a lot of settings. Actually, it only
allows you to control:
</p>
<ul>
<li>Who can sign up in your Postgresus instance</li>
<li>Who can sign up in your Databasus instance</li>
<li>Who can create workspaces</li>
<li>
Who can manage databases, notifiers and storages within
@@ -137,7 +137,7 @@ export default function AccessManagementPage() {
/>
<p>
If you allow users to sign up for your Postgresus and create
If you allow users to sign up for your Databasus and create
their own workspaces (see{" "}
<a href="#global-settings">global settings</a>), they will be
able to create their own workspaces.
@@ -189,7 +189,7 @@ export default function AccessManagementPage() {
<h2 id="user-roles">User roles</h2>
<p>
All users in Postgresus have roles <u>within the system</u>:
All users in Databasus have roles <u>within the system</u>:
</p>
<table>
@@ -216,7 +216,7 @@ export default function AccessManagementPage() {
<p>
Usually, there is only one <code>admin</code> user in the system
which you create when you first launch Postgresus.
which you create when you first launch Databasus.
</p>
<p>
@@ -286,7 +286,7 @@ export default function AccessManagementPage() {
<ol>
<li>
<strong>Allow external registrations</strong> - by default,
all users can sign up for your Postgresus (but they still do
all users can sign up for your Databasus (but they still do
not have access to any workspaces until they are invited or
create their own workspaces).
<br />
@@ -307,7 +307,7 @@ export default function AccessManagementPage() {
<br />
Imagine you already have some users and you know they are
reliable (for example, your team). You want to allow them to
invite other users to join Postgresus. In this case, you can
invite other users to join Databasus. In this case, you can
enable this option and they will be able to invite other users
to join workspaces via invitations.
<br />

View File

@@ -9,21 +9,21 @@ export default function DocsNavbarComponent() {
<Link href="/" className="flex items-center">
<img
src="/logo.svg"
alt="Postgresus logo"
alt="Databasus logo"
className="shrink-0 sm:h-[35px] sm:w-[35px] md:h-[35px] md:w-[35px]"
fetchPriority="high"
loading="eager"
/>
<div className="ml-4 select-none text-lg font-bold text-white sm:ml-3 sm:text-xl md:ml-4 md:text-2xl">
Postgresus
Databasus
</div>
</Link>
<div className="ml-auto mr-4 hidden gap-3 sm:mr-6 md:mr-10 lg:flex lg:gap-5">
<a
className="text-gray-300 hover:text-white transition-colors"
href="https://t.me/postgresus_community"
href="https://t.me/databasus_community"
target="_blank"
rel="noopener noreferrer"
>
@@ -32,7 +32,7 @@ export default function DocsNavbarComponent() {
</div>
<a
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
className="ml-auto lg:ml-0 flex items-center gap-2 hover:opacity-70 rounded-lg px-2 md:px-3 py-2 text-[14px] border border-[#ffffff20] bg-[#0C0E13] transition-opacity"

View File

@@ -64,10 +64,10 @@ const navItems: NavItem[] = [
href: "/pgdump-alternative",
children: [
{ title: "pg_dump alternative", href: "/pgdump-alternative" },
{ title: "Postgresus vs Barman", href: "/postgresus-vs-barman" },
{ title: "Postgresus vs PgBackWeb", href: "/postgresus-vs-pgbackweb" },
{ title: "Postgresus vs pgBackRest", href: "/postgresus-vs-pgbackrest" },
{ title: "Postgresus vs WAL-G", href: "/postgresus-vs-wal-g" },
{ title: "Databasus vs Barman", href: "/databasus-vs-barman" },
{ title: "Databasus vs PgBackWeb", href: "/databasus-vs-pgbackweb" },
{ title: "Databasus vs pgBackRest", href: "/databasus-vs-pgbackrest" },
{ title: "Databasus vs WAL-G", href: "/databasus-vs-wal-g" },
],
},
];

View File

@@ -34,17 +34,17 @@ const installationMethods: Record<InstallMethod, Installation> = {
title: "Automated script (recommended)",
language: "bash",
description:
"The installation script will install Docker with Docker Compose (if not already installed), set up Postgresus and configure automatic startup on system reboot.",
"The installation script will install Docker with Docker Compose (if not already installed), set up Databasus and configure automatic startup on system reboot.",
code: [
{
label: "with sudo",
code: `sudo apt-get install -y curl && \\
sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/heads/main/install-postgresus.sh | sudo bash`,
sudo curl -sSL https://raw.githubusercontent.com/databasus/databasus/refs/heads/main/install-databasus.sh | sudo bash`,
},
{
label: "without sudo",
code: `apt-get install -y curl && \\
curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/heads/main/install-postgresus.sh | bash`,
curl -sSL https://raw.githubusercontent.com/databasus/databasus/refs/heads/main/install-databasus.sh | bash`,
},
],
},
@@ -53,13 +53,13 @@ curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/heads
title: "Docker",
language: "bash",
description:
"The easiest way to run Postgresus. This single command will start Postgresus, store all data in ./postgresus-data directory and automatically restart on system reboot.",
"The easiest way to run Databasus. This single command will start Databasus, store all data in ./databasus-data directory and automatically restart on system reboot.",
code: `docker run -d \\
--name postgresus \\
--name databasus \\
-p 4005:4005 \\
-v ./postgresus-data:/postgresus-data \\
-v ./databasus-data:/databasus-data \\
--restart unless-stopped \\
rostislavdugin/postgresus:latest`,
databasus/databasus:latest`,
},
"Docker Compose": {
label: "Docker Compose",
@@ -68,13 +68,13 @@ curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/heads
description:
"Create a docker-compose.yml file with the following configuration, then run: docker compose up -d",
code: `services:
postgresus:
container_name: postgresus
image: rostislavdugin/postgresus:latest
databasus:
container_name: databasus
image: databasus/databasus:latest
ports:
- "4005:4005"
volumes:
- ./postgresus-data:/postgresus-data
- ./databasus-data:/databasus-data
restart: unless-stopped`,
},
Helm: {
@@ -87,25 +87,25 @@ curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/heads
codeBlocks: [
{
label: "With ClusterIP + port-forward (development)",
code: `helm install postgresus oci://ghcr.io/rostislavdugin/charts/postgresus \\
-n postgresus --create-namespace
code: `helm install databasus oci://ghcr.io/databasus/charts/databasus \\
-n databasus --create-namespace
kubectl port-forward svc/postgresus-service 4005:4005 -n postgresus
kubectl port-forward svc/databasus-service 4005:4005 -n databasus
# Access at http://localhost:4005`,
},
{
label: "With LoadBalancer (cloud environments)",
code: `helm install postgresus oci://ghcr.io/rostislavdugin/charts/postgresus \\
-n postgresus --create-namespace \\
code: `helm install databasus oci://ghcr.io/databasus/charts/databasus \\
-n databasus --create-namespace \\
--set service.type=LoadBalancer
kubectl get svc postgresus-service -n postgresus
kubectl get svc databasus-service -n databasus
# Access at http://<EXTERNAL-IP>:4005`,
},
{
label: "With Ingress (domain-based access)",
code: `helm install postgresus oci://ghcr.io/rostislavdugin/charts/postgresus \\
-n postgresus --create-namespace \\
code: `helm install databasus oci://ghcr.io/databasus/charts/databasus \\
-n databasus --create-namespace \\
--set ingress.enabled=true \\
--set ingress.hosts[0].host=backup.example.com`,
},
@@ -297,7 +297,7 @@ export default function InstallationComponent() {
<div className="flex-1 relative rounded-lg overflow-hidden shadow-lg border border-[#ffffff20]">
<LiteYouTubeEmbed
videoId="KaNLPkuu03M"
title="How to install Postgresus"
title="How to install Databasus"
thumbnailSrc="/images/index/how-to-install-preview.svg"
/>
</div>

View File

@@ -4,11 +4,11 @@ import DocsSidebarComponent from "../../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "How to add new notifier to Postgresus | Contribution Guide",
title: "How to add new notifier to Databasus | Contribution Guide",
description:
"Developer guide for contributing new notification integrations to Postgresus. Learn how to implement backend models, create migrations and build frontend UI components.",
"Developer guide for contributing new notification integrations to Databasus. Learn how to implement backend models, create migrations and build frontend UI components.",
keywords: [
"Postgresus contribution",
"Databasus contribution",
"add notifier",
"developer guide",
"notification integration",
@@ -18,20 +18,20 @@ export const metadata: Metadata = {
"React components",
],
openGraph: {
title: "How to add new notifier to Postgresus | Contribution Guide",
title: "How to add new notifier to Databasus | Contribution Guide",
description:
"Developer guide for contributing new notification integrations to Postgresus. Learn how to implement backend models, create migrations and build frontend UI components.",
"Developer guide for contributing new notification integrations to Databasus. Learn how to implement backend models, create migrations and build frontend UI components.",
type: "article",
url: "https://postgresus.com/contribute/how-to-add-notifier",
url: "https://databasus.com/contribute/how-to-add-notifier",
},
twitter: {
card: "summary",
title: "How to add new notifier to Postgresus | Contribution Guide",
title: "How to add new notifier to Databasus | Contribution Guide",
description:
"Developer guide for contributing new notification integrations to Postgresus. Learn how to implement backend models, create migrations and build frontend UI components.",
"Developer guide for contributing new notification integrations to Databasus. Learn how to implement backend models, create migrations and build frontend UI components.",
},
alternates: {
canonical: "https://postgresus.com/contribute/how-to-add-notifier",
canonical: "https://databasus.com/contribute/how-to-add-notifier",
},
robots: "index, follow",
};
@@ -46,19 +46,19 @@ export default function HowToAddNotifierPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
headline: "How to add new notifier to Postgresus",
headline: "How to add new notifier to Databasus",
description:
"Developer guide for contributing new notification integrations to Postgresus",
"Developer guide for contributing new notification integrations to Databasus",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -76,12 +76,12 @@ export default function HowToAddNotifierPage() {
<div className="mx-auto max-w-4xl">
<article className="prose prose-blue max-w-none">
<h1 id="how-to-add-notifier">
How to add new notifier to Postgresus
How to add new notifier to Databasus
</h1>
<p className="text-lg text-gray-400">
This guide will walk you through the process of contributing a
new notification integration to Postgresus. You&apos;ll learn
new notification integration to Databasus. You&apos;ll learn
how to implement the backend logic, create database migrations
and build the frontend UI components.
</p>
@@ -90,7 +90,7 @@ export default function HowToAddNotifierPage() {
<p className="text-sm text-gray-300 m-0">
<strong className="text-amber-400">💡 Note:</strong> This is a
contribution guide for developers who want to add new
notification integrations to the Postgresus project. If you
notification integrations to the Databasus project. If you
only want to use existing notifiers, check out the{" "}
<a
href="/notifiers"
@@ -452,11 +452,11 @@ export default function HowToAddNotifierPage() {
<li>
Fork the{" "}
<a
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
>
Postgresus repository
Databasus repository
</a>
</li>
<li>Create a feature branch with a descriptive name</li>
@@ -470,7 +470,7 @@ export default function HowToAddNotifierPage() {
<div className="rounded-lg border border-[#ffffff20] bg-[#1f2937] p-4 my-6">
<p className="text-sm text-gray-300 m-0">
<strong className="text-green-400">🎉 Thank you!</strong> Your
contributions help make Postgresus more versatile and valuable
contributions help make Databasus more versatile and valuable
for the community. We appreciate your effort in expanding the
notification capabilities!
</p>

View File

@@ -4,11 +4,11 @@ import DocsSidebarComponent from "../../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "How to add new storage to Postgresus | Contribution Guide",
title: "How to add new storage to Databasus | Contribution Guide",
description:
"Developer guide for contributing new storage integrations to Postgresus. Learn how to implement backend models, create migrations and build frontend UI components for storage providers.",
"Developer guide for contributing new storage integrations to Databasus. Learn how to implement backend models, create migrations and build frontend UI components for storage providers.",
keywords: [
"Postgresus contribution",
"Databasus contribution",
"add storage",
"developer guide",
"storage integration",
@@ -19,20 +19,20 @@ export const metadata: Metadata = {
"storage backend",
],
openGraph: {
title: "How to add new storage to Postgresus | Contribution Guide",
title: "How to add new storage to Databasus | Contribution Guide",
description:
"Developer guide for contributing new storage integrations to Postgresus. Learn how to implement backend models, create migrations and build frontend UI components for storage providers.",
"Developer guide for contributing new storage integrations to Databasus. Learn how to implement backend models, create migrations and build frontend UI components for storage providers.",
type: "article",
url: "https://postgresus.com/contribute/how-to-add-storage",
url: "https://databasus.com/contribute/how-to-add-storage",
},
twitter: {
card: "summary",
title: "How to add new storage to Postgresus | Contribution Guide",
title: "How to add new storage to Databasus | Contribution Guide",
description:
"Developer guide for contributing new storage integrations to Postgresus. Learn how to implement backend models, create migrations and build frontend UI components for storage providers.",
"Developer guide for contributing new storage integrations to Databasus. Learn how to implement backend models, create migrations and build frontend UI components for storage providers.",
},
alternates: {
canonical: "https://postgresus.com/contribute/how-to-add-storage",
canonical: "https://databasus.com/contribute/how-to-add-storage",
},
robots: "index, follow",
};
@@ -47,19 +47,19 @@ export default function HowToAddStoragePage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
headline: "How to add new storage to Postgresus",
headline: "How to add new storage to Databasus",
description:
"Developer guide for contributing new storage integrations to Postgresus",
"Developer guide for contributing new storage integrations to Databasus",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -77,12 +77,12 @@ export default function HowToAddStoragePage() {
<div className="mx-auto max-w-4xl">
<article className="prose prose-blue max-w-none">
<h1 id="how-to-add-storage">
How to add new storage to Postgresus
How to add new storage to Databasus
</h1>
<p className="text-lg text-gray-400">
This guide will walk you through the process of contributing a
new storage integration to Postgresus. You&apos;ll learn how to
new storage integration to Databasus. You&apos;ll learn how to
implement the backend logic, create database migrations and
build the frontend UI components for managing storage providers.
</p>
@@ -91,7 +91,7 @@ export default function HowToAddStoragePage() {
<p className="text-sm text-gray-300 m-0">
<strong className="text-amber-400">💡 Note:</strong> This is a
contribution guide for developers who want to add new storage
integrations to the Postgresus project. If you only want to
integrations to the Databasus project. If you only want to
use existing storage providers, check out the{" "}
<a
href="/storages"
@@ -560,11 +560,11 @@ export default function HowToAddStoragePage() {
<li>
Fork the{" "}
<a
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
>
Postgresus repository
Databasus repository
</a>
</li>
<li>Create a feature branch with a descriptive name</li>
@@ -582,7 +582,7 @@ export default function HowToAddStoragePage() {
<div className="rounded-lg border border-[#ffffff20] bg-[#1f2937] p-4 my-6">
<p className="text-sm text-gray-300 m-0">
<strong className="text-green-400">🎉 Thank you!</strong> Your
contributions help make Postgresus more versatile and valuable
contributions help make Databasus more versatile and valuable
for the community. We appreciate your effort in expanding the
storage capabilities!
</p>

View File

@@ -4,33 +4,33 @@ import DocsSidebarComponent from "../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "Contribute to Postgresus | Contribution Guide",
title: "Contribute to Databasus | Contribution Guide",
description:
"Learn how to contribute to Postgresus through promotion, documentation, social sharing or code development. Add new storages, notifiers or fix bugs.",
"Learn how to contribute to Databasus through promotion, documentation, social sharing or code development. Add new storages, notifiers or fix bugs.",
keywords: [
"Postgresus contribution",
"Databasus contribution",
"open source contribution",
"contribute to Postgresus",
"contribute to Databasus",
"add storage",
"add notifier",
"PostgreSQL backup contribution",
"developer guide",
],
openGraph: {
title: "Contribute to Postgresus | Contribution Guide",
title: "Contribute to Databasus | Contribution Guide",
description:
"Learn how to contribute to Postgresus through promotion, documentation, social sharing or code development.",
"Learn how to contribute to Databasus through promotion, documentation, social sharing or code development.",
type: "article",
url: "https://postgresus.com/contribute",
url: "https://databasus.com/contribute",
},
twitter: {
card: "summary",
title: "Contribute to Postgresus | Contribution Guide",
title: "Contribute to Databasus | Contribution Guide",
description:
"Learn how to contribute to Postgresus through promotion, documentation, social sharing or code development.",
"Learn how to contribute to Databasus through promotion, documentation, social sharing or code development.",
},
alternates: {
canonical: "https://postgresus.com/contribute",
canonical: "https://databasus.com/contribute",
},
robots: "index, follow",
};
@@ -45,19 +45,19 @@ export default function ContributePage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
headline: "Contribute to Postgresus",
headline: "Contribute to Databasus",
description:
"Learn how to contribute to Postgresus through promotion, documentation, social sharing or code development",
"Learn how to contribute to Databasus through promotion, documentation, social sharing or code development",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -77,7 +77,7 @@ export default function ContributePage() {
<h1 id="contribute">Contribute</h1>
<p className="text-lg text-gray-400">
Contribution to Postgresus is welcome! I would appreciate any
Contribution to Databasus is welcome! I would appreciate any
help with the project.
</p>
@@ -95,15 +95,15 @@ export default function ContributePage() {
</h3>
<p>
The most of users of Postgresus are developers, DevOps engineers
The most of users of Databasus are developers, DevOps engineers
or DBAs. Meaning we are technical people. As well as I -
developer of Postgresus.
developer of Databasus.
</p>
<p>
I know how to develop and build IT projects. But I&apos;m not a
marketing expert. It&apos;s really hard for me to promote the
project and get more users. That is vital for Postgresus.
project and get more users. That is vital for Databasus.
</p>
<p>So I would appreciate any help with:</p>
@@ -113,7 +113,7 @@ export default function ContributePage() {
writing tutorials and guides to Medium, Dev.to, Hackernoon and
other platforms
</li>
<li>writing articles and blog posts about Postgresus</li>
<li>writing articles and blog posts about Databasus</li>
<li>creating videos and tutorials</li>
<li>
posting social media posts on LinkedIn, X, Telegram, etc.
@@ -126,7 +126,7 @@ export default function ContributePage() {
- it&apos;s already a big help!
</li>
<li>
share answers to questions about Postgresus on Stack Overflow,
share answers to questions about Databasus on Stack Overflow,
Reddit, etc.
</li>
</ul>
@@ -134,7 +134,7 @@ export default function ContributePage() {
<p>
Feel free to share your publications with our community in{" "}
<a
href="https://t.me/postgresus_community"
href="https://t.me/databasus_community"
target="_blank"
rel="noopener noreferrer"
>
@@ -335,7 +335,7 @@ export default function ContributePage() {
with back compatibility
</li>
<li>Add SSH tunneling</li>
<li>Add HTTPS for Postgresus</li>
<li>Add HTTPS for Databasus</li>
<li>Add support of other languages</li>
</ul>
</article>

View File

@@ -5,11 +5,11 @@ import DocTableOfContentComponent from "../../components/DocTableOfContentCompon
import { CopyButton } from "../../components/CopyButton";
export const metadata: Metadata = {
title: "How to backup localhost databases | Postgresus",
title: "How to backup localhost databases | Databasus",
description:
"Learn how to backup PostgreSQL databases running on localhost using Postgresus. Configure Docker host network mode for local database backups.",
"Learn how to backup PostgreSQL databases running on localhost using Databasus. Configure Docker host network mode for local database backups.",
keywords: [
"Postgresus",
"Databasus",
"localhost backup",
"local PostgreSQL backup",
"backup local database",
@@ -19,40 +19,40 @@ export const metadata: Metadata = {
"localhost database",
],
openGraph: {
title: "How to backup localhost databases | Postgresus",
title: "How to backup localhost databases | Databasus",
description:
"Learn how to backup PostgreSQL databases running on localhost using Postgresus. Configure Docker host network mode for local database backups.",
"Learn how to backup PostgreSQL databases running on localhost using Databasus. Configure Docker host network mode for local database backups.",
type: "article",
url: "https://postgresus.com/faq/localhost",
url: "https://databasus.com/faq/localhost",
},
twitter: {
card: "summary",
title: "How to backup localhost databases | Postgresus",
title: "How to backup localhost databases | Databasus",
description:
"Learn how to backup PostgreSQL databases running on localhost using Postgresus. Configure Docker host network mode for local database backups.",
"Learn how to backup PostgreSQL databases running on localhost using Databasus. Configure Docker host network mode for local database backups.",
},
alternates: {
canonical: "https://postgresus.com/faq/localhost",
canonical: "https://databasus.com/faq/localhost",
},
robots: "index, follow",
};
export default function LocalhostPage() {
const dockerComposeHost = `services:
postgresus:
container_name: postgresus
image: rostislavdugin/postgresus:latest
databasus:
container_name: databasus
image: databasus/databasus:latest
network_mode: host
volumes:
- ./postgresus-data:/postgresus-data
- ./databasus-data:/databasus-data
restart: unless-stopped`;
const dockerRunHost = `docker run -d \\
--name postgresus \\
--name databasus \\
--network host \\
-v ./postgresus-data:/postgresus-data \\
-v ./databasus-data:/databasus-data \\
--restart unless-stopped \\
rostislavdugin/postgresus:latest`;
databasus/databasus:latest`;
return (
<>
@@ -63,9 +63,9 @@ export default function LocalhostPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "HowTo",
name: "How to backup localhost databases with Postgresus",
name: "How to backup localhost databases with Databasus",
description:
"Step-by-step guide to backup PostgreSQL databases running on localhost using Postgresus",
"Step-by-step guide to backup PostgreSQL databases running on localhost using Databasus",
step: [
{
"@type": "HowToStep",
@@ -80,7 +80,7 @@ export default function LocalhostPage() {
{
"@type": "HowToStep",
name: "Connect to localhost database",
text: "Use 127.0.0.1 or localhost as the database host in your Postgresus backup configuration.",
text: "Use 127.0.0.1 or localhost as the database host in your Databasus backup configuration.",
},
],
}),
@@ -100,14 +100,14 @@ export default function LocalhostPage() {
<h1 id="localhost-backup">How to backup localhost databases</h1>
<p className="text-lg text-gray-400">
Learn how to configure Postgresus to backup PostgreSQL databases
Learn how to configure Databasus to backup PostgreSQL databases
running on your host machine (localhost) when using Docker.
</p>
<h2 id="the-problem">The problem</h2>
<p>
If you&apos;re running Postgresus in Docker and want to back up
If you&apos;re running Databasus in Docker and want to back up
databases running on your host machine (localhost), you need to
configure Docker to use <strong>host network mode</strong>.
</p>
@@ -158,8 +158,8 @@ export default function LocalhostPage() {
<code className="bg-[#374151] text-gray-200">127.0.0.1</code>{" "}
or{" "}
<code className="bg-[#374151] text-gray-200">localhost</code>{" "}
as the host in your Postgresus backup configuration.
You&apos;ll also access the Postgresus UI directly at{" "}
as the host in your Databasus backup configuration.
You&apos;ll also access the Databasus UI directly at{" "}
<code className="bg-[#374151] text-gray-200">
http://localhost:4005
</code>{" "}

View File

@@ -4,11 +4,11 @@ import DocsSidebarComponent from "../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "FAQ - Frequently Asked Questions | Postgresus",
title: "FAQ - Frequently Asked Questions | Databasus",
description:
"Frequently asked questions about Postgresus PostgreSQL backup tool with MySQL, MariaDB and MongoDB support. Learn how to backup localhost databases, understand backup formats, compression methods and more.",
"Frequently asked questions about Databasus PostgreSQL backup tool with MySQL, MariaDB and MongoDB support. Learn how to backup localhost databases, understand backup formats, compression methods and more.",
keywords: [
"Postgresus FAQ",
"Databasus FAQ",
"PostgreSQL backup questions",
"localhost database backup",
"backup formats",
@@ -18,20 +18,20 @@ export const metadata: Metadata = {
"database backup guide",
],
openGraph: {
title: "FAQ - Frequently Asked Questions | Postgresus",
title: "FAQ - Frequently Asked Questions | Databasus",
description:
"Frequently asked questions about Postgresus PostgreSQL backup tool with MySQL, MariaDB and MongoDB support. Learn how to backup localhost databases, understand backup formats, compression methods and more.",
"Frequently asked questions about Databasus PostgreSQL backup tool with MySQL, MariaDB and MongoDB support. Learn how to backup localhost databases, understand backup formats, compression methods and more.",
type: "article",
url: "https://postgresus.com/faq",
url: "https://databasus.com/faq",
},
twitter: {
card: "summary",
title: "FAQ - Frequently Asked Questions | Postgresus",
title: "FAQ - Frequently Asked Questions | Databasus",
description:
"Frequently asked questions about Postgresus PostgreSQL backup tool with MySQL, MariaDB and MongoDB support. Learn how to backup localhost databases, understand backup formats, compression methods and more.",
"Frequently asked questions about Databasus PostgreSQL backup tool with MySQL, MariaDB and MongoDB support. Learn how to backup localhost databases, understand backup formats, compression methods and more.",
},
alternates: {
canonical: "https://postgresus.com/faq",
canonical: "https://databasus.com/faq",
},
robots: "index, follow",
};
@@ -49,26 +49,26 @@ export default function FAQPage() {
mainEntity: [
{
"@type": "Question",
name: "Why does Postgresus not use raw SQL dump format for PostgreSQL?",
name: "Why does Databasus not use raw SQL dump format for PostgreSQL?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus uses the directory format with zstd compression because it provides the most efficient backup and restore speed after extensive testing. The directory format with zstd compression level 5 offers the optimal balance between backup creation speed, restore speed and file size.",
text: "Databasus uses the directory format with zstd compression because it provides the most efficient backup and restore speed after extensive testing. The directory format with zstd compression level 5 offers the optimal balance between backup creation speed, restore speed and file size.",
},
},
{
"@type": "Question",
name: "Where is Postgresus installed?",
name: "Where is Databasus installed?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus is installed in /opt/postgresus/",
text: "Databasus is installed in /opt/databasus/",
},
},
{
"@type": "Question",
name: "Why doesn't Postgresus support PITR (Point-in-Time Recovery)?",
name: "Why doesn't Databasus support PITR (Point-in-Time Recovery)?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus intentionally focuses on logical backups rather than PITR for several practical reasons: PITR tools typically need to be installed on the same server as your database; incremental backups cannot be restored without direct access to the database storage drive; managed cloud databases don't allow restoring external PITR backups; cloud providers already offer native PITR capabilities; and for 99% of projects, hourly or daily logical backups provide adequate recovery points without the operational complexity of WAL archiving.",
text: "Databasus intentionally focuses on logical backups rather than PITR for several practical reasons: PITR tools typically need to be installed on the same server as your database; incremental backups cannot be restored without direct access to the database storage drive; managed cloud databases don't allow restoring external PITR backups; cloud providers already offer native PITR capabilities; and for 99% of projects, hourly or daily logical backups provide adequate recovery points without the operational complexity of WAL archiving.",
},
},
],
@@ -89,16 +89,16 @@ export default function FAQPage() {
<h1 id="faq">Frequently Asked Questions</h1>
<p className="text-lg text-gray-400">
Find answers to the most common questions about Postgresus,
Find answers to the most common questions about Databasus,
including installation, configuration and backup strategies.
</p>
<h2 id="why-no-raw-sql-dump">
Why does Postgresus not use raw SQL dump format for PostgreSQL?
Why does Databasus not use raw SQL dump format for PostgreSQL?
</h2>
<p>
Postgresus uses the <code>pg_dump</code>&apos;s{" "}
Databasus uses the <code>pg_dump</code>&apos;s{" "}
<strong>directory format</strong> with{" "}
<strong>zstd compression at level 5</strong> instead of the
plain SQL format because it provides the most efficient balance
@@ -129,7 +129,7 @@ export default function FAQPage() {
.
</p>
<p>Postgresus will not include raw SQL dump format, because:</p>
<p>Databasus will not include raw SQL dump format, because:</p>
<ul>
<li>extra variety is bad for UX;</li>
@@ -138,21 +138,21 @@ export default function FAQPage() {
</ul>
<h2 id="installation-directory">
Where is Postgresus installed if installed via .sh script?
Where is Databasus installed if installed via .sh script?
</h2>
<p>
Postgresus is installed in <code>/opt/postgresus/</code>{" "}
Databasus is installed in <code>/opt/databasus/</code>{" "}
directory.
</p>
<h2 id="why-no-pitr">
Why doesn&apos;t Postgresus support PITR (Point-in-Time
Why doesn&apos;t Databasus support PITR (Point-in-Time
Recovery)?
</h2>
<p>
Postgresus intentionally focuses on logical backups rather than
Databasus intentionally focuses on logical backups rather than
PITR for several practical reasons:
</p>
@@ -188,7 +188,7 @@ export default function FAQPage() {
<p>
So instead of second-by-second restoration complexity,
Postgresus prioritizes an intuitive UX for individuals and
Databasus prioritizes an intuitive UX for individuals and
teams, making it the most reliable tool for managing multiple
databases and day to day use.
</p>

View File

@@ -4,11 +4,11 @@ import DocsSidebarComponent from "../../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "How to backup Supabase with Postgresus | Postgresus",
title: "How to backup Supabase with Databasus | Databasus",
description:
"Learn how to backup your Supabase PostgreSQL database using Postgresus. Step-by-step guide for configuring session pooler or IPv4 address for Supabase backups.",
"Learn how to backup your Supabase PostgreSQL database using Databasus. Step-by-step guide for configuring session pooler or IPv4 address for Supabase backups.",
keywords: [
"Postgresus",
"Databasus",
"Supabase backup",
"Supabase PostgreSQL backup",
"backup Supabase database",
@@ -18,20 +18,20 @@ export const metadata: Metadata = {
"database backup",
],
openGraph: {
title: "How to backup Supabase with Postgresus | Postgresus",
title: "How to backup Supabase with Databasus | Databasus",
description:
"Learn how to backup your Supabase PostgreSQL database using Postgresus. Step-by-step guide for configuring session pooler or IPv4 address for Supabase backups.",
"Learn how to backup your Supabase PostgreSQL database using Databasus. Step-by-step guide for configuring session pooler or IPv4 address for Supabase backups.",
type: "article",
url: "https://postgresus.com/faq/supabase",
url: "https://databasus.com/faq/supabase",
},
twitter: {
card: "summary",
title: "How to backup Supabase with Postgresus | Postgresus",
title: "How to backup Supabase with Databasus | Databasus",
description:
"Learn how to backup your Supabase PostgreSQL database using Postgresus. Step-by-step guide for configuring session pooler or IPv4 address for Supabase backups.",
"Learn how to backup your Supabase PostgreSQL database using Databasus. Step-by-step guide for configuring session pooler or IPv4 address for Supabase backups.",
},
alternates: {
canonical: "https://postgresus.com/faq/supabase",
canonical: "https://databasus.com/faq/supabase",
},
robots: "index, follow",
};
@@ -46,9 +46,9 @@ export default function SupabasePage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "HowTo",
name: "How to backup Supabase with Postgresus",
name: "How to backup Supabase with Databasus",
description:
"Step-by-step guide to backup your Supabase PostgreSQL database using Postgresus",
"Step-by-step guide to backup your Supabase PostgreSQL database using Databasus",
step: [
{
"@type": "HowToStep",
@@ -62,8 +62,8 @@ export default function SupabasePage() {
},
{
"@type": "HowToStep",
name: "Configure Postgresus",
text: "Enter the Supabase connection details in Postgresus to start backing up your database.",
name: "Configure Databasus",
text: "Enter the Supabase connection details in Databasus to start backing up your database.",
},
{
"@type": "HowToStep",
@@ -88,7 +88,7 @@ export default function SupabasePage() {
<h1 id="supabase-backup">How to backup Supabase</h1>
<p className="text-lg text-gray-400">
Postgresus supports backups for Supabase PostgreSQL databases.
Databasus supports backups for Supabase PostgreSQL databases.
The main requirement is to use an IPv4 address to connect to
your Supabase instance.
</p>
@@ -96,7 +96,7 @@ export default function SupabasePage() {
<h2 id="connection-options">Connection options</h2>
<p>
There are two ways to connect Postgresus to your Supabase
There are two ways to connect Databasus to your Supabase
database:
</p>
@@ -140,7 +140,7 @@ export default function SupabasePage() {
<h3 id="step-2">2. Copy connection details</h3>
<p>
Copy connection details and use them in Postgresus when adding
Copy connection details and use them in Databasus when adding
your database. See screenshot to differ connection details.
</p>
@@ -171,7 +171,7 @@ export default function SupabasePage() {
Enable the <strong>IPv4</strong> add-on
</li>
<li>
Use the direct database connection details in Postgresus
Use the direct database connection details in Databasus
</li>
</ol>
@@ -187,7 +187,7 @@ export default function SupabasePage() {
<h2 id="default-schema">Default schema limitation</h2>
<p>
By default, Postgresus backs up only the <code>public</code>{" "}
By default, Databasus backs up only the <code>public</code>{" "}
schema when working with Supabase databases. This is because
Supabase restricts access to other schemas (such as{" "}
<code>auth</code>, <code>storage</code>, and{" "}

View File

@@ -5,11 +5,11 @@ import DocsSidebarComponent from "../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "Installation - Postgresus Documentation",
title: "Installation - Databasus Documentation",
description:
"Learn how to install Postgresus using automated script, Docker run, Docker Compose or Helm for Kubernetes. Simple zero-config installation for your self-hosted PostgreSQL backup system.",
"Learn how to install Databasus using automated script, Docker run, Docker Compose or Helm for Kubernetes. Simple zero-config installation for your self-hosted PostgreSQL backup system.",
keywords: [
"Postgresus installation",
"Databasus installation",
"Docker installation",
"PostgreSQL backup setup",
"self-hosted backup",
@@ -21,64 +21,64 @@ export const metadata: Metadata = {
"K8s deployment",
],
openGraph: {
title: "Installation - Postgresus Documentation",
title: "Installation - Databasus Documentation",
description:
"Learn how to install Postgresus using automated script, Docker run, Docker Compose or Helm for Kubernetes. Simple zero-config installation for your self-hosted PostgreSQL backup system.",
"Learn how to install Databasus using automated script, Docker run, Docker Compose or Helm for Kubernetes. Simple zero-config installation for your self-hosted PostgreSQL backup system.",
type: "article",
url: "https://postgresus.com/installation",
url: "https://databasus.com/installation",
},
twitter: {
card: "summary",
title: "Installation - Postgresus Documentation",
title: "Installation - Databasus Documentation",
description:
"Learn how to install Postgresus using automated script, Docker run, Docker Compose or Helm for Kubernetes. Simple zero-config installation for your self-hosted PostgreSQL backup system.",
"Learn how to install Databasus using automated script, Docker run, Docker Compose or Helm for Kubernetes. Simple zero-config installation for your self-hosted PostgreSQL backup system.",
},
alternates: {
canonical: "https://postgresus.com/installation",
canonical: "https://databasus.com/installation",
},
robots: "index, follow",
};
export default function InstallationPage() {
const installScript = `sudo apt-get install -y curl && \\
sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/heads/main/install-postgresus.sh | sudo bash`;
sudo curl -sSL https://raw.githubusercontent.com/databasus/databasus/refs/heads/main/install-databasus.sh | sudo bash`;
const dockerRun = `docker run -d \\
--name postgresus \\
--name databasus \\
-p 4005:4005 \\
-v ./postgresus-data:/postgresus-data \\
-v ./databasus-data:/databasus-data \\
--restart unless-stopped \\
rostislavdugin/postgresus:latest`;
databasus/databasus:latest`;
const dockerCompose = `services:
postgresus:
container_name: postgresus
image: rostislavdugin/postgresus:latest
databasus:
container_name: databasus
image: databasus/databasus:latest
ports:
- "4005:4005"
volumes:
- ./postgresus-data:/postgresus-data
- ./databasus-data:/databasus-data
restart: unless-stopped`;
const helmInstallClusterIP = `helm install postgresus oci://ghcr.io/rostislavdugin/charts/postgresus \\
-n postgresus --create-namespace`;
const helmInstallClusterIP = `helm install databasus oci://ghcr.io/databasus/charts/databasus \\
-n databasus --create-namespace`;
const helmPortForward = `kubectl port-forward svc/postgresus-service 4005:4005 -n postgresus
const helmPortForward = `kubectl port-forward svc/databasus-service 4005:4005 -n databasus
# Access at http://localhost:4005`;
const helmInstallLoadBalancer = `helm install postgresus oci://ghcr.io/rostislavdugin/charts/postgresus \\
-n postgresus --create-namespace \\
const helmInstallLoadBalancer = `helm install databasus oci://ghcr.io/databasus/charts/databasus \\
-n databasus --create-namespace \\
--set service.type=LoadBalancer`;
const helmGetSvc = `kubectl get svc postgresus-service -n postgresus
const helmGetSvc = `kubectl get svc databasus-service -n databasus
# Access at http://<EXTERNAL-IP>:4005`;
const helmInstallIngress = `helm install postgresus oci://ghcr.io/rostislavdugin/charts/postgresus \\
-n postgresus --create-namespace \\
const helmInstallIngress = `helm install databasus oci://ghcr.io/databasus/charts/databasus \\
-n databasus --create-namespace \\
--set ingress.enabled=true \\
--set ingress.hosts[0].host=backup.example.com`;
const helmUpgrade = `helm upgrade postgresus oci://ghcr.io/rostislavdugin/charts/postgresus -n postgresus`;
const helmUpgrade = `helm upgrade databasus oci://ghcr.io/databasus/charts/databasus -n databasus`;
return (
<>
@@ -89,19 +89,19 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
headline: "Installation - Postgresus Documentation",
headline: "Installation - Databasus Documentation",
description:
"Learn how to install Postgresus using automated script, Docker run, Docker Compose or Helm for Kubernetes. Simple zero-config installation for your self-hosted PostgreSQL backup system.",
"Learn how to install Databasus using automated script, Docker run, Docker Compose or Helm for Kubernetes. Simple zero-config installation for your self-hosted PostgreSQL backup system.",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -113,14 +113,14 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "HowTo",
name: "How to install Postgresus",
name: "How to install Databasus",
description:
"Step-by-step guide to install Postgresus PostgreSQL backup tool",
"Step-by-step guide to install Databasus PostgreSQL backup tool",
step: [
{
"@type": "HowToStep",
name: "Automated installation script",
text: "Run the automated installation script to install Docker and set up Postgresus with automatic startup configuration.",
text: "Run the automated installation script to install Docker and set up Databasus with automatic startup configuration.",
itemListElement: [
{
"@type": "HowToDirection",
@@ -131,7 +131,7 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
{
"@type": "HowToStep",
name: "Docker Run",
text: "Use Docker run command to quickly start Postgresus container with data persistence.",
text: "Use Docker run command to quickly start Databasus container with data persistence.",
},
{
"@type": "HowToStep",
@@ -141,7 +141,7 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
{
"@type": "HowToStep",
name: "Kubernetes with Helm",
text: "Use the official Helm chart to deploy Postgresus on Kubernetes with StatefulSet, persistent storage and optional ingress.",
text: "Use the official Helm chart to deploy Databasus on Kubernetes with StatefulSet, persistent storage and optional ingress.",
},
],
}),
@@ -161,7 +161,7 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
<h1 id="installation">Installation</h1>
<p className="text-lg text-gray-400">
You have four ways to install Postgresus: automated script
You have four ways to install Databasus: automated script
(recommended), simple Docker run, Docker Compose setup or Helm
for Kubernetes.
</p>
@@ -169,8 +169,8 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
<h2 id="system-requirements">System requirements</h2>
<p>
Postgresus requires the following minimum system resources to
run properly:
Databasus requires the following minimum system resources to run
properly:
</p>
<ul>
@@ -201,7 +201,7 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
Install Docker with Docker Compose (if not already
installed)
</li>
<li> Set up Postgresus</li>
<li> Set up Databasus</li>
<li> Configure automatic startup on system reboot</li>
</ul>
@@ -215,13 +215,13 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
</div>
<p>
In this case Postgresus will be installed in{" "}
<code>/opt/postgresus</code> directory.
In this case Databasus will be installed in{" "}
<code>/opt/databasus</code> directory.
</p>
<h2 id="option-2-docker-run">Option 2: Simple Docker run</h2>
<p>The easiest way to run Postgresus:</p>
<p>The easiest way to run Databasus:</p>
<div className="relative my-6">
<pre className="overflow-x-auto rounded-lg bg-gray-900 p-4 text-sm text-gray-100">
@@ -235,9 +235,9 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
<p>This single command will:</p>
<ul>
<li> Start Postgresus</li>
<li> Start Databasus</li>
<li>
Store all data in <code>./postgresus-data</code> directory
Store all data in <code>./databasus-data</code> directory
</li>
<li> Automatically restart on system reboot</li>
</ul>
@@ -318,7 +318,7 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
</div>
</div>
<p>Get the external IP and access Postgresus:</p>
<p>Get the external IP and access Databasus:</p>
<div className="relative my-6">
<pre className="overflow-x-auto rounded-lg bg-gray-900 p-4 text-sm text-gray-100">
@@ -344,7 +344,7 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
For more options (NodePort, TLS, HTTPRoute for Gateway API), see
the{" "}
<a
href="https://github.com/RostislavDugin/postgresus/tree/main/deploy/helm"
href="https://github.com/databasus/databasus/tree/main/deploy/helm"
target="_blank"
rel="noopener noreferrer"
className="text-blue-400 hover:text-blue-300"
@@ -360,8 +360,8 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
<ol>
<li>
<strong>Launch and access Postgresus</strong>: Start
Postgresus and navigate to <code>http://localhost:4005</code>
<strong>Launch and access Databasus</strong>: Start Databasus
and navigate to <code>http://localhost:4005</code>
</li>
<li>
<strong>Create your first backup job</strong>: Click &quot;New
@@ -386,19 +386,19 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
</li>
</ol>
<h2 id="how-to-update">How to update Postgresus?</h2>
<h2 id="how-to-update">How to update Databasus?</h2>
<h3 id="update-docker">Update Docker installation</h3>
<p>
To update Postgresus running via Docker, you need to stop it,
To update Databasus running via Docker, you need to stop it,
clean up Docker cache and restart the container.
</p>
<ol>
<li>
Go to the directory where Postgresus is installed (usually{" "}
<code>/opt/postgresus</code>)
Go to the directory where Databasus is installed (usually{" "}
<code>/opt/databasus</code>)
</li>
<li>
Stop the container: <code>docker compose stop</code>
@@ -412,7 +412,7 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
</ol>
<p>
It will get the latest version of Postgresus from the Docker Hub
It will get the latest version of Databasus from the Docker Hub
(if you have not fixed the version in the{" "}
<code>docker-compose.yml</code> file).
</p>
@@ -420,7 +420,7 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
<h3 id="update-helm">Update Helm installation</h3>
<p>
To update Postgresus running on Kubernetes via Helm, use the
To update Databasus running on Kubernetes via Helm, use the
upgrade command:
</p>
@@ -439,6 +439,42 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
Helm will perform a rolling update to the new version.
</p>
<h2 id="postgresus-migration">Migrating from Postgresus</h2>
<p>
Databasus is the new name for Postgresus. If you&apos;re
currently using Postgresus, you can continue using it or migrate
to Databasus.
</p>
<p>
<strong>Important:</strong> Simply renaming the Docker image
isn&apos;t enough, as Postgresus and Databasus use different
data folders and internal database naming.
</p>
<p>To migrate:</p>
<ol>
<li>
Stop your Postgresus container:{" "}
<code>docker compose stop</code>
</li>
<li>
Install Databasus using any of the methods above (use a
different volume path <code>./databasus-data</code>)
</li>
<li>
Manually recreate your databases, storages and notifiers in
Databasus
</li>
</ol>
<p>
You can run both Postgresus and Databasus side by side during
migration by using different ports and volume paths.
</p>
<h2 id="troubleshooting">Troubleshooting</h2>
<h3 id="container-wont-start">Container won&apos;t start</h3>
@@ -447,10 +483,10 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
<div className="relative my-6">
<pre className="overflow-x-auto rounded-lg bg-gray-900 p-4 text-sm text-gray-100">
<code>docker logs postgresus</code>
<code>docker logs databasus</code>
</pre>
<div className="absolute right-2 top-2">
<CopyButton text="docker logs postgresus" />
<CopyButton text="docker logs databasus" />
</div>
</div>
@@ -478,14 +514,14 @@ sudo curl -sSL https://raw.githubusercontent.com/RostislavDugin/postgresus/refs/
<div className="relative my-6">
<pre className="overflow-x-auto rounded-lg bg-gray-900 p-4 text-sm text-gray-100">
<code>
sudo chown -R $USER:$USER ./postgresus-data
sudo chown -R $USER:$USER ./databasus-data
{"\n"}
chmod -R 755 ./postgresus-data
chmod -R 755 ./databasus-data
</code>
</pre>
<div className="absolute right-2 top-2">
<CopyButton
text={`sudo chown -R $USER:$USER ./postgresus-data\nchmod -R 755 ./postgresus-data`}
text={`sudo chown -R $USER:$USER ./databasus-data\nchmod -R 755 ./databasus-data`}
/>
</div>
</div>

View File

@@ -10,23 +10,23 @@ export const metadata: Metadata = {
"MongoDB backup, mongodump alternative, MongoDB backup automation, MongoDB backup tool, MongoDB scheduled backup, MongoDB cloud backup, MongoDB S3 backup, MongoDB Docker backup, MongoDB backup encryption, MongoDB Atlas backup, replica set backup, document database backup, BSON backup, NoSQL backup",
robots: "index, follow",
alternates: {
canonical: "https://postgresus.com/mongodb-backup",
canonical: "https://databasus.com/mongodb-backup",
},
openGraph: {
type: "website",
url: "https://postgresus.com/mongodb-backup",
url: "https://databasus.com/mongodb-backup",
title: "MongoDB backup",
description:
"Free and open source tool for MongoDB scheduled backups. Automate mongodump with web UI, cloud storage, notifications and encryption.",
images: [
{
url: "https://postgresus.com/images/index/dashboard.png",
alt: "Postgresus dashboard interface showing MongoDB backup management",
width: 1700,
height: 1078,
url: "https://databasus.com/images/index/dashboard.png",
alt: "Databasus dashboard interface showing MongoDB backup management",
width: 980,
height: 573,
},
],
siteName: "Postgresus",
siteName: "Databasus",
locale: "en_US",
},
twitter: {
@@ -34,11 +34,11 @@ export const metadata: Metadata = {
title: "MongoDB backup",
description:
"Free and open source tool for MongoDB scheduled backups. Automate mongodump with web UI, cloud storage, notifications and encryption.",
images: ["https://postgresus.com/images/index/dashboard.png"],
images: ["https://databasus.com/images/index/dashboard.png"],
},
applicationName: "Postgresus",
applicationName: "Databasus",
appleWebApp: {
title: "Postgresus",
title: "Databasus",
capable: true,
},
icons: {
@@ -61,18 +61,18 @@ export default function MongodbBackupPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "SoftwareApplication",
name: "Postgresus",
name: "Databasus",
description:
"Free and open source tool for MongoDB scheduled backups. Automate mongodump with web UI, cloud storage, notifications and encryption.",
url: "https://postgresus.com/mongodb-backup",
image: "https://postgresus.com/images/index/dashboard.png",
logo: "https://postgresus.com/logo.svg",
url: "https://databasus.com/mongodb-backup",
image: "https://databasus.com/images/index/dashboard.png",
logo: "https://databasus.com/logo.svg",
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
featureList: [
@@ -87,7 +87,7 @@ export default function MongodbBackupPage() {
"AES-256-GCM encryption for backup files",
"MongoDB Atlas and replica set support",
],
screenshot: "https://postgresus.com/images/index/dashboard.png",
screenshot: "https://databasus.com/images/index/dashboard.png",
softwareVersion: "latest",
}),
}}
@@ -101,50 +101,50 @@ export default function MongodbBackupPage() {
mainEntity: [
{
"@type": "Question",
name: "What is Postgresus and how does it backup MongoDB databases?",
name: "What is Databasus and how does it backup MongoDB databases?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus is an Apache 2.0 licensed, self-hosted backup tool that uses mongodump under the hood to create consistent MongoDB backups. It wraps mongodump with a modern web interface, automated scheduling, cloud storage integration, real-time notifications and AES-256-GCM encryption — eliminating the need for custom shell scripts.",
text: "Databasus is an Apache 2.0 licensed, self-hosted backup tool that uses mongodump under the hood to create consistent MongoDB backups. It wraps mongodump with a modern web interface, automated scheduling, cloud storage integration, real-time notifications and AES-256-GCM encryption — eliminating the need for custom shell scripts.",
},
},
{
"@type": "Question",
name: "Does Postgresus support MongoDB replica sets?",
name: "Does Databasus support MongoDB replica sets?",
acceptedAnswer: {
"@type": "Answer",
text: "Yes, Postgresus fully supports MongoDB replica sets. You can connect to any member of a replica set using the standard MongoDB connection URI format. Postgresus will read from the specified node, allowing you to backup from secondary nodes to reduce load on your primary.",
text: "Yes, Databasus fully supports MongoDB replica sets. You can connect to any member of a replica set using the standard MongoDB connection URI format. Databasus will read from the specified node, allowing you to backup from secondary nodes to reduce load on your primary.",
},
},
{
"@type": "Question",
name: "Can I backup MongoDB Atlas databases with Postgresus?",
name: "Can I backup MongoDB Atlas databases with Databasus?",
acceptedAnswer: {
"@type": "Answer",
text: "Yes, Postgresus works seamlessly with MongoDB Atlas. Since Postgresus uses logical backups via mongodump, it only requires standard MongoDB connection credentials — no special Atlas permissions or roles needed. Just provide your Atlas connection string and Postgresus handles the rest.",
text: "Yes, Databasus works seamlessly with MongoDB Atlas. Since Databasus uses logical backups via mongodump, it only requires standard MongoDB connection credentials — no special Atlas permissions or roles needed. Just provide your Atlas connection string and Databasus handles the rest.",
},
},
{
"@type": "Question",
name: "Which MongoDB versions does Postgresus support?",
name: "Which MongoDB versions does Databasus support?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus supports MongoDB versions 4, 5, 6, 7 and 8. All backups use the native mongodump tool with --archive and --gzip flags for efficient, compressed BSON archives that can be restored with mongorestore.",
text: "Databasus supports MongoDB versions 4, 5, 6, 7 and 8. All backups use the native mongodump tool with --archive and --gzip flags for efficient, compressed BSON archives that can be restored with mongorestore.",
},
},
{
"@type": "Question",
name: "How does Postgresus secure MongoDB credentials and backups?",
name: "How does Databasus secure MongoDB credentials and backups?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus implements multi-layer security: (1) All MongoDB passwords and connection strings are encrypted with AES-256-GCM before storage; (2) Each backup file is encrypted with a unique key derived from master key, backup ID and random salt; (3) Connection URIs are passed securely to mongodump, never exposed in logs or command line output.",
text: "Databasus implements multi-layer security: (1) All MongoDB passwords and connection strings are encrypted with AES-256-GCM before storage; (2) Each backup file is encrypted with a unique key derived from master key, backup ID and random salt; (3) Connection URIs are passed securely to mongodump, never exposed in logs or command line output.",
},
},
{
"@type": "Question",
name: "Does Postgresus support incremental MongoDB backups?",
name: "Does Databasus support incremental MongoDB backups?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus focuses on full logical backups using mongodump rather than incremental backups. For most use cases, scheduled full backups (hourly, daily, weekly) provide sufficient recovery points. MongoDB Atlas already offers native point-in-time recovery, and external incremental backups cannot be easily restored to Atlas clusters.",
text: "Databasus focuses on full logical backups using mongodump rather than incremental backups. For most use cases, scheduled full backups (hourly, daily, weekly) provide sufficient recovery points. MongoDB Atlas already offers native point-in-time recovery, and external incremental backups cannot be easily restored to Atlas clusters.",
},
},
],
@@ -159,7 +159,7 @@ export default function MongodbBackupPage() {
<Link href="/" className="flex items-center gap-2.5">
<img
src="/logo.svg"
alt="Postgresus logo"
alt="Databasus logo"
width={32}
height={32}
className="h-7 w-7 md:h-8 md:w-8"
@@ -168,7 +168,7 @@ export default function MongodbBackupPage() {
/>
<span className="text-base md:text-lg font-semibold">
Postgresus
Databasus
</span>
</Link>
@@ -194,7 +194,7 @@ export default function MongodbBackupPage() {
Contribute
</a>
<a
href="https://t.me/postgresus_community"
href="https://t.me/databasus_community"
target="_blank"
rel="noopener noreferrer"
className="py-2 hover:text-gray-300 transition-colors"
@@ -205,7 +205,7 @@ export default function MongodbBackupPage() {
{/* GitHub Button */}
<a
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
className="flex items-center gap-2 hover:opacity-70 rounded-lg px-2 md:px-3 py-2 text-[14px] border border-[#ffffff20] bg-[#0C0E13] transition-colors"
@@ -252,7 +252,7 @@ export default function MongodbBackupPage() {
{/* Content */}
<div className="text-center mb-8 md:mb-16">
<div className="inline-flex items-center justify-center px-3 md:px-4 py-1 md:py-1.5 rounded-lg border border-[#ffffff20] mb-4 md:mb-6">
<span className="text-sm font-medium">Postgresus</span>
<span className="text-sm font-medium">Databasus</span>
</div>
<h1 className="text-2xl sm:text-4xl sm:max-w-[400px] md:text-4xl leading-tight font-bold mb-4 md:mb-6 mx-auto md:max-w-[500px]">
@@ -260,7 +260,7 @@ export default function MongodbBackupPage() {
</h1>
<p className="text-sm sm:text-lg text-gray-200 max-w-[720px] mx-auto mb-6 md:mb-10 px-2">
Postgresus is a free, open source and self-hosted tool to backup
Databasus is a free, open source and self-hosted tool to backup
MongoDB document databases. Automate mongodump with scheduling,
store BSON archives in S3, Google Drive or locally. Get notified
via Slack, Discord or Telegram when backups complete
@@ -288,7 +288,7 @@ export default function MongodbBackupPage() {
</a>
<a
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
className="w-full sm:w-auto inline-flex items-center justify-center gap-2 px-5 py-2.5 rounded-lg font-medium border border-[#ffffff20] bg-[#0C0E13] hover:opacity-70 transition-opacity"
@@ -326,7 +326,7 @@ export default function MongodbBackupPage() {
<div>
<img
src="/images/index/dashboard.svg"
alt="Postgresus dashboard interface for MongoDB backup management"
alt="Databasus dashboard interface for MongoDB backup management"
width={980}
height={620}
className="w-full h-auto"
@@ -351,7 +351,7 @@ export default function MongodbBackupPage() {
</h2>
<p className="text-sm sm:text-lg text-gray-200 max-w-[650px] mx-auto mb-8 md:mb-10">
Postgresus wraps mongodump with enterprise features: automated
Databasus wraps mongodump with enterprise features: automated
scheduling, cloud storage integration, real-time notifications and
AES-256-GCM encryption. Ideal for developers and DevOps teams
managing MongoDB document databases and collections
@@ -492,7 +492,7 @@ export default function MongodbBackupPage() {
</h3>
<p className="text-gray-400 text-sm md:text-base mb-4">
Run Postgresus on your own infrastructure. All MongoDB
Run Databasus on your own infrastructure. All MongoDB
connection strings and backup data stay on servers you control.
Deploy in about 2 minutes via script, Docker or Kubernetes
</p>
@@ -517,7 +517,7 @@ export default function MongodbBackupPage() {
</h3>
<p className="text-gray-400 text-sm md:text-base mb-4">
Postgresus is fully open source with Apache 2.0 license. Inspect
Databasus is fully open source with Apache 2.0 license. Inspect
every line of code, fork it, contribute to it. Free for personal
and enterprise use
</p>
@@ -543,7 +543,7 @@ export default function MongodbBackupPage() {
</h3>
<p className="text-gray-400 text-sm md:text-base mb-4">
MongoDB 4, 5, 6, 7 and 8 are supported. Postgresus uses the
MongoDB 4, 5, 6, 7 and 8 are supported. Databasus uses the
native mongodump tool for each version to ensure full
compatibility with your document database
</p>
@@ -715,7 +715,7 @@ export default function MongodbBackupPage() {
</h3>
<p className="text-gray-400 text-sm md:text-base">
Postgresus connects to cloud-hosted MongoDB databases
Databasus connects to cloud-hosted MongoDB databases
including MongoDB Atlas, AWS DocumentDB and self-hosted
deployments. Since it uses logical backups via mongodump, you
only need standard connection credentials no special cloud
@@ -743,9 +743,9 @@ export default function MongodbBackupPage() {
<div className="space-y-4 text-gray-200 text-sm sm:text-base">
<p>
Postgresus uses <strong>mongodump</strong> under the hood
Databasus uses <strong>mongodump</strong> under the hood
the official MongoDB backup utility. When you trigger a
backup, Postgresus executes mongodump with optimized
backup, Databasus executes mongodump with optimized
parameters:
</p>
@@ -841,7 +841,7 @@ export default function MongodbBackupPage() {
</h2>
<p className="text-sm sm:text-base md:text-lg text-gray-200 max-w-[550px] mx-auto">
Postgresus supports multiple installation methods. Deploy on
Databasus supports multiple installation methods. Deploy on
your VPS, local machine or Kubernetes cluster in about 2
minutes. Same installation works for MongoDB, PostgreSQL, MySQL
and MariaDB backups
@@ -867,7 +867,7 @@ export default function MongodbBackupPage() {
<p className="text-base md:text-lg text-gray-200 max-w-[600px] mx-auto">
Common questions about backing up MongoDB document databases with
Postgresus. If you have other questions, join our community on
Databasus. If you have other questions, join our community on
Telegram
</p>
</div>
@@ -877,35 +877,35 @@ export default function MongodbBackupPage() {
<div className="grid grid-cols-1 md:grid-cols-2 gap-4 md:gap-8">
<FaqItem
number="1"
question="What is Postgresus and how does it backup MongoDB databases?"
answer="Postgresus is an Apache 2.0 licensed, self-hosted backup tool that uses mongodump under the hood to create consistent MongoDB backups. It wraps mongodump with a modern web interface, automated scheduling, cloud storage integration (S3, Google Drive, Dropbox), real-time notifications (Slack, Discord, Telegram) and AES-256-GCM encryption — eliminating the need for custom shell scripts and cron jobs."
question="What is Databasus and how does it backup MongoDB databases?"
answer="Databasus is an Apache 2.0 licensed, self-hosted backup tool that uses mongodump under the hood to create consistent MongoDB backups. It wraps mongodump with a modern web interface, automated scheduling, cloud storage integration (S3, Google Drive, Dropbox), real-time notifications (Slack, Discord, Telegram) and AES-256-GCM encryption — eliminating the need for custom shell scripts and cron jobs."
/>
<FaqItem
number="2"
question="Does Postgresus support MongoDB replica sets?"
answer="Yes, Postgresus fully supports MongoDB replica sets. You can connect to any member of a replica set using the standard MongoDB connection URI format with replica set options. Postgresus will read from the specified node, allowing you to backup from secondary nodes to reduce load on your primary. This is particularly useful for production environments where you want to avoid impacting primary node performance."
question="Does Databasus support MongoDB replica sets?"
answer="Yes, Databasus fully supports MongoDB replica sets. You can connect to any member of a replica set using the standard MongoDB connection URI format with replica set options. Databasus will read from the specified node, allowing you to backup from secondary nodes to reduce load on your primary. This is particularly useful for production environments where you want to avoid impacting primary node performance."
/>
<FaqItem
number="3"
question="Can I backup MongoDB Atlas databases with Postgresus?"
answer="Yes, Postgresus works seamlessly with MongoDB Atlas. Since Postgresus uses logical backups via mongodump, it only requires standard MongoDB connection credentials — no special Atlas permissions, IP whitelisting beyond your Postgresus server, or administrative roles needed. Just provide your Atlas connection string (available in the Atlas dashboard) and Postgresus handles the rest."
question="Can I backup MongoDB Atlas databases with Databasus?"
answer="Yes, Databasus works seamlessly with MongoDB Atlas. Since Databasus uses logical backups via mongodump, it only requires standard MongoDB connection credentials — no special Atlas permissions, IP whitelisting beyond your Databasus server, or administrative roles needed. Just provide your Atlas connection string (available in the Atlas dashboard) and Databasus handles the rest."
/>
<FaqItem
number="4"
question="Which MongoDB versions does Postgresus support?"
answer="Postgresus supports MongoDB versions 4, 5, 6, 7 and 8. All backups use the native mongodump tool with --archive and --gzip flags for efficient, compressed BSON archives. The archives can be restored using mongorestore to any compatible MongoDB version, making migrations between versions straightforward."
question="Which MongoDB versions does Databasus support?"
answer="Databasus supports MongoDB versions 4, 5, 6, 7 and 8. All backups use the native mongodump tool with --archive and --gzip flags for efficient, compressed BSON archives. The archives can be restored using mongorestore to any compatible MongoDB version, making migrations between versions straightforward."
/>
<FaqItem
number="5"
question="How does Postgresus handle large MongoDB collections?"
answer="Postgresus streams mongodump output directly to your storage destination, optionally encrypting the stream in transit. This approach avoids writing temporary files to disk, making it efficient for databases with large collections. The --archive flag creates a single compressed file rather than a directory structure, reducing I/O overhead and simplifying storage management."
question="How does Databasus handle large MongoDB collections?"
answer="Databasus streams mongodump output directly to your storage destination, optionally encrypting the stream in transit. This approach avoids writing temporary files to disk, making it efficient for databases with large collections. The --archive flag creates a single compressed file rather than a directory structure, reducing I/O overhead and simplifying storage management."
/>
<FaqItem
number="6"
question="Can I backup sharded MongoDB clusters with Postgresus?"
question="Can I backup sharded MongoDB clusters with Databasus?"
answer={
<>
Postgresus currently focuses on backing up individual MongoDB
Databasus currently focuses on backing up individual MongoDB
databases rather than coordinated sharded cluster backups.
<br />
<br />
@@ -927,10 +927,10 @@ export default function MongodbBackupPage() {
/>
<FaqItem
number="7"
question="How does Postgresus secure MongoDB credentials and backups?"
question="How does Databasus secure MongoDB credentials and backups?"
answer={
<>
Postgresus implements multi-layer security:
Databasus implements multi-layer security:
<br />
<br />
<strong>1. Credential encryption:</strong> All MongoDB
@@ -951,28 +951,28 @@ export default function MongodbBackupPage() {
/>
<FaqItem
number="8"
question="Does Postgresus support incremental MongoDB backups or oplog tailing?"
answer="Postgresus focuses on full logical backups using mongodump rather than incremental backups or oplog-based point-in-time recovery. For most use cases, scheduled full backups (hourly, daily, weekly) provide sufficient recovery points without the complexity of oplog management. MongoDB Atlas already offers native continuous backups with point-in-time recovery, and external incremental backups cannot be easily restored to Atlas clusters."
question="Does Databasus support incremental MongoDB backups or oplog tailing?"
answer="Databasus focuses on full logical backups using mongodump rather than incremental backups or oplog-based point-in-time recovery. For most use cases, scheduled full backups (hourly, daily, weekly) provide sufficient recovery points without the complexity of oplog management. MongoDB Atlas already offers native continuous backups with point-in-time recovery, and external incremental backups cannot be easily restored to Atlas clusters."
/>
<FaqItem
number="9"
question="Can I restore MongoDB backups to a different version or cluster?"
answer="Yes, since Postgresus creates standard mongodump archives in BSON format, you can restore them to any compatible MongoDB server — different version, different cloud provider or local development machine. Download the backup from Postgresus (automatically decrypted), then use mongorestore with --archive and --gzip flags. Postgresus shows the exact restore command for each backup."
answer="Yes, since Databasus creates standard mongodump archives in BSON format, you can restore them to any compatible MongoDB server — different version, different cloud provider or local development machine. Download the backup from Databasus (automatically decrypted), then use mongorestore with --archive and --gzip flags. Databasus shows the exact restore command for each backup."
/>
<FaqItem
number="10"
question="How does mongodump compression work in Postgresus?"
answer="Postgresus uses mongodump's built-in --gzip flag which compresses BSON data during the dump process. This typically reduces archive size by 60-80% compared to uncompressed BSON. The compression happens in the mongodump stream before optional encryption, so both compressed and encrypted archives remain efficient. Decompression is automatic when using mongorestore with the --gzip flag."
question="How does mongodump compression work in Databasus?"
answer="Databasus uses mongodump's built-in --gzip flag which compresses BSON data during the dump process. This typically reduces archive size by 60-80% compared to uncompressed BSON. The compression happens in the mongodump stream before optional encryption, so both compressed and encrypted archives remain efficient. Decompression is automatic when using mongorestore with the --gzip flag."
/>
<FaqItem
number="11"
question="Can I backup specific MongoDB collections instead of entire databases?"
answer="Currently, Postgresus backs up entire MongoDB databases rather than individual collections. This ensures you have complete, consistent backups including all collections, indexes and metadata. If you need collection-level backups, you can create separate databases for different data domains, each with its own backup schedule in Postgresus."
answer="Currently, Databasus backs up entire MongoDB databases rather than individual collections. This ensures you have complete, consistent backups including all collections, indexes and metadata. If you need collection-level backups, you can create separate databases for different data domains, each with its own backup schedule in Databasus."
/>
<FaqItem
number="12"
question="Does Postgresus work with MongoDB running in Docker or Kubernetes?"
answer="Yes, Postgresus connects to MongoDB over the network using standard connection URIs, so it works with MongoDB regardless of where it's deployed — Docker containers, Kubernetes pods, VMs or bare metal. Just ensure network connectivity between Postgresus and your MongoDB instance. For Kubernetes deployments, you can use internal service DNS names or external load balancer endpoints."
question="Does Databasus work with MongoDB running in Docker or Kubernetes?"
answer="Yes, Databasus connects to MongoDB over the network using standard connection URIs, so it works with MongoDB regardless of where it's deployed — Docker containers, Kubernetes pods, VMs or bare metal. Just ensure network connectivity between Databasus and your MongoDB instance. For Kubernetes deployments, you can use internal service DNS names or external load balancer endpoints."
/>
</div>
</div>
@@ -985,14 +985,14 @@ export default function MongodbBackupPage() {
<Link href="/" className="flex items-center gap-2.5 mb-6">
<img
src="/logo.svg"
alt="Postgresus logo"
alt="Databasus logo"
width={32}
height={32}
className="h-7 w-7 md:h-8 md:w-8"
/>
<span className="text-base md:text-lg font-semibold">
Postgresus
Databasus
</span>
</Link>
@@ -1025,7 +1025,7 @@ export default function MongodbBackupPage() {
Documentation
</a>
<a
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
className="hover:text-gray-200 transition-colors"
@@ -1033,7 +1033,7 @@ export default function MongodbBackupPage() {
GitHub
</a>
<a
href="https://t.me/postgresus_community"
href="https://t.me/databasus_community"
target="_blank"
rel="noopener noreferrer"
className="hover:text-gray-200 transition-colors"
@@ -1052,14 +1052,14 @@ export default function MongodbBackupPage() {
</div>
<a
href="mailto:info@postgresus.com"
href="mailto:info@databasus.com"
className="hover:text-gray-200 transition-colors text-sm md:text-base mb-4"
>
info@postgresus.com
info@databasus.com
</a>
<p className="text-gray-400 text-sm md:text-base text-center">
© 2025 Postgresus. All rights reserved.
© 2025 Databasus. All rights reserved.
</p>
</div>
</div>

View File

@@ -10,23 +10,23 @@ export const metadata: Metadata = {
"MySQL backup, MariaDB backup, mysqldump alternative, mysqldump GUI, MySQL backup automation, MySQL backup tool, MariaDB backup tool, MySQL scheduled backup, MySQL cloud backup, MySQL S3 backup, MySQL Docker backup, MySQL backup encryption",
robots: "index, follow",
alternates: {
canonical: "https://postgresus.com/mysql-backup",
canonical: "https://databasus.com/mysql-backup",
},
openGraph: {
type: "website",
url: "https://postgresus.com/mysql-backup",
url: "https://databasus.com/mysql-backup",
title: "MySQL backup with MariaDB support",
description:
"Free and open source tool for MySQL and MariaDB scheduled backups. Alternative to mysqldump with web UI, cloud storage, notifications and encryption.",
images: [
{
url: "https://postgresus.com/images/index/dashboard.png",
alt: "Postgresus dashboard interface showing MySQL backup management",
width: 1700,
height: 1078,
url: "https://databasus.com/images/index/dashboard.png",
alt: "Databasus dashboard interface showing MySQL backup management",
width: 980,
height: 573,
},
],
siteName: "Postgresus",
siteName: "Databasus",
locale: "en_US",
},
twitter: {
@@ -34,11 +34,11 @@ export const metadata: Metadata = {
title: "MySQL backup with MariaDB support",
description:
"Free and open source tool for MySQL and MariaDB scheduled backups. Alternative to mysqldump with web UI, cloud storage, notifications and encryption.",
images: ["https://postgresus.com/images/index/dashboard.png"],
images: ["https://databasus.com/images/index/dashboard.png"],
},
applicationName: "Postgresus",
applicationName: "Databasus",
appleWebApp: {
title: "Postgresus",
title: "Databasus",
capable: true,
},
icons: {
@@ -61,18 +61,18 @@ export default function MysqlBackupPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "SoftwareApplication",
name: "Postgresus",
name: "Databasus",
description:
"Free and open source tool for MySQL and MariaDB scheduled backups. Alternative to mysqldump with web UI, cloud storage, notifications and encryption.",
url: "https://postgresus.com/mysql-backup",
image: "https://postgresus.com/images/index/dashboard.png",
logo: "https://postgresus.com/logo.svg",
url: "https://databasus.com/mysql-backup",
image: "https://databasus.com/images/index/dashboard.png",
logo: "https://databasus.com/logo.svg",
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
featureList: [
@@ -87,7 +87,7 @@ export default function MysqlBackupPage() {
"Backup compression and AES-256-GCM encryption",
"mysqldump alternative with web UI",
],
screenshot: "https://postgresus.com/images/index/dashboard.png",
screenshot: "https://databasus.com/images/index/dashboard.png",
softwareVersion: "latest",
}),
}}
@@ -101,34 +101,34 @@ export default function MysqlBackupPage() {
mainEntity: [
{
"@type": "Question",
name: "What is Postgresus and how does it backup MySQL databases?",
name: "What is Databasus and how does it backup MySQL databases?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus is an Apache 2.0 licensed, self-hosted backup tool that uses mysqldump under the hood to create consistent MySQL backups. It wraps mysqldump with a modern web interface, automated scheduling, cloud storage integration, real-time notifications and AES-256-GCM encryption — eliminating the need for custom shell scripts.",
text: "Databasus is an Apache 2.0 licensed, self-hosted backup tool that uses mysqldump under the hood to create consistent MySQL backups. It wraps mysqldump with a modern web interface, automated scheduling, cloud storage integration, real-time notifications and AES-256-GCM encryption — eliminating the need for custom shell scripts.",
},
},
{
"@type": "Question",
name: "Is Postgresus a mysqldump alternative or replacement?",
name: "Is Databasus a mysqldump alternative or replacement?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus extends mysqldump rather than replacing it. Under the hood, it executes mysqldump with optimized parameters (--single-transaction, --routines, --triggers, --events) then handles compression, encryption and upload to your configured storage. You get all mysqldump reliability plus scheduling, cloud storage, notifications and team features.",
text: "Databasus extends mysqldump rather than replacing it. Under the hood, it executes mysqldump with optimized parameters (--single-transaction, --routines, --triggers, --events) then handles compression, encryption and upload to your configured storage. You get all mysqldump reliability plus scheduling, cloud storage, notifications and team features.",
},
},
{
"@type": "Question",
name: "Which MySQL versions does Postgresus support?",
name: "Which MySQL versions does Databasus support?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus supports MySQL 5.7, 8.0, 8.4 and 9. For MySQL 8.0 and newer, Postgresus uses zstd network compression for faster transfers. For MySQL 5.7, legacy compression is used automatically.",
text: "Databasus supports MySQL 5.7, 8.0, 8.4 and 9. For MySQL 8.0 and newer, Databasus uses zstd network compression for faster transfers. For MySQL 5.7, legacy compression is used automatically.",
},
},
{
"@type": "Question",
name: "Which MariaDB versions does Postgresus support?",
name: "Which MariaDB versions does Databasus support?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus supports MariaDB 10 and 11. For MariaDB backups, Postgresus uses the native mariadb-dump tool instead of mysqldump, ensuring full compatibility with MariaDB-specific features and optimizations.",
text: "Databasus supports MariaDB 10 and 11. For MariaDB backups, Databasus uses the native mariadb-dump tool instead of mysqldump, ensuring full compatibility with MariaDB-specific features and optimizations.",
},
},
{
@@ -136,15 +136,15 @@ export default function MysqlBackupPage() {
name: "Can I backup MySQL databases hosted on AWS RDS, Google Cloud SQL or Azure?",
acceptedAnswer: {
"@type": "Answer",
text: "Yes, Postgresus works seamlessly with cloud-hosted MySQL databases including AWS RDS for MySQL, Google Cloud SQL, Azure Database for MySQL and PlanetScale. Since Postgresus uses logical backups via mysqldump, it only requires standard MySQL connection credentials — no special cloud permissions needed.",
text: "Yes, Databasus works seamlessly with cloud-hosted MySQL databases including AWS RDS for MySQL, Google Cloud SQL, Azure Database for MySQL and PlanetScale. Since Databasus uses logical backups via mysqldump, it only requires standard MySQL connection credentials — no special cloud permissions needed.",
},
},
{
"@type": "Question",
name: "How does Postgresus secure MySQL database credentials and backups?",
name: "How does Databasus secure MySQL database credentials and backups?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus implements multi-layer security: (1) All MySQL passwords and credentials are encrypted with AES-256-GCM before storage; (2) Each backup file is encrypted with a unique key derived from master key, backup ID and random salt; (3) Credentials are passed via temporary .my.cnf files with 0600 permissions, never exposed in command line or logs.",
text: "Databasus implements multi-layer security: (1) All MySQL passwords and credentials are encrypted with AES-256-GCM before storage; (2) Each backup file is encrypted with a unique key derived from master key, backup ID and random salt; (3) Credentials are passed via temporary .my.cnf files with 0600 permissions, never exposed in command line or logs.",
},
},
],
@@ -159,7 +159,7 @@ export default function MysqlBackupPage() {
<Link href="/" className="flex items-center gap-2.5">
<img
src="/logo.svg"
alt="Postgresus logo"
alt="Databasus logo"
width={32}
height={32}
className="h-7 w-7 md:h-8 md:w-8"
@@ -168,7 +168,7 @@ export default function MysqlBackupPage() {
/>
<span className="text-base md:text-lg font-semibold">
Postgresus
Databasus
</span>
</Link>
@@ -208,7 +208,7 @@ export default function MysqlBackupPage() {
Contribute
</a>
<a
href="https://t.me/postgresus_community"
href="https://t.me/databasus_community"
target="_blank"
rel="noopener noreferrer"
className="py-2 hover:text-gray-300 transition-colors"
@@ -219,7 +219,7 @@ export default function MysqlBackupPage() {
{/* GitHub Button */}
<a
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
className="flex items-center gap-2 hover:opacity-70 rounded-lg px-2 md:px-3 py-2 text-[14px] border border-[#ffffff20] bg-[#0C0E13] transition-colors"
@@ -266,7 +266,7 @@ export default function MysqlBackupPage() {
{/* Content */}
<div className="text-center mb-8 md:mb-16">
<div className="inline-flex items-center justify-center px-3 md:px-4 py-1 md:py-1.5 rounded-lg border border-[#ffffff20] mb-4 md:mb-6">
<span className="text-sm font-medium">Postgresus</span>
<span className="text-sm font-medium">Databasus</span>
</div>
<h1 className="text-2xl sm:text-4xl sm:max-w-[400px] md:text-4xl leading-tight font-bold mb-4 md:mb-6 mx-auto md:max-w-[500px]">
@@ -274,7 +274,7 @@ export default function MysqlBackupPage() {
</h1>
<p className="text-sm sm:text-lg text-gray-200 max-w-[720px] mx-auto mb-6 md:mb-10 px-2">
Postgresus is a free, open source and self-hosted tool to backup
Databasus is a free, open source and self-hosted tool to backup
MySQL and MariaDB databases. Schedule automated dumps, store them
in S3, Google Drive or locally. Receive notifications via Slack,
Discord or Telegram when backups complete
@@ -302,7 +302,7 @@ export default function MysqlBackupPage() {
</a>
<a
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
className="w-full sm:w-auto inline-flex items-center justify-center gap-2 px-5 py-2.5 rounded-lg font-medium border border-[#ffffff20] bg-[#0C0E13] hover:opacity-70 transition-opacity"
@@ -340,7 +340,7 @@ export default function MysqlBackupPage() {
<div>
<img
src="/images/index/dashboard.svg"
alt="Postgresus dashboard interface for MySQL backup management"
alt="Databasus dashboard interface for MySQL backup management"
width={980}
height={620}
className="w-full h-auto"
@@ -365,7 +365,7 @@ export default function MysqlBackupPage() {
</h2>
<p className="text-sm sm:text-lg text-gray-200 max-w-[650px] mx-auto mb-8 md:mb-10">
Postgresus wraps mysqldump with enterprise features: automated
Databasus wraps mysqldump with enterprise features: automated
scheduling, cloud storage integration, real-time notifications and
AES-256-GCM encryption. Perfect for developers, DevOps teams and
organizations managing MySQL databases
@@ -506,7 +506,7 @@ export default function MysqlBackupPage() {
</h3>
<p className="text-gray-400 text-sm md:text-base mb-4">
Run Postgresus on your own infrastructure. All MySQL credentials
Run Databasus on your own infrastructure. All MySQL credentials
and backup data stay on servers you control. Deploy in about 2
minutes via script, Docker or Kubernetes
</p>
@@ -531,7 +531,7 @@ export default function MysqlBackupPage() {
</h3>
<p className="text-gray-400 text-sm md:text-base mb-4">
Postgresus is fully open source with Apache 2.0 license. Inspect
Databasus is fully open source with Apache 2.0 license. Inspect
every line of code, fork it, contribute to it. Free for personal
and enterprise use
</p>
@@ -728,7 +728,7 @@ export default function MysqlBackupPage() {
</h3>
<p className="text-gray-400 text-sm md:text-base">
Postgresus connects to cloud-hosted MySQL databases including
Databasus connects to cloud-hosted MySQL databases including
AWS RDS for MySQL, Google Cloud SQL, Azure Database for MySQL
and PlanetScale. Since it uses logical backups via mysqldump,
you only need standard connection credentials no special
@@ -759,9 +759,9 @@ export default function MysqlBackupPage() {
<div className="space-y-4 text-gray-200 text-sm sm:text-base">
<p>
Postgresus uses <strong>mysqldump</strong> under the hood
the official MySQL backup utility. When you trigger a backup,
Postgresus executes mysqldump with optimized parameters:
Databasus uses <strong>mysqldump</strong> under the hood the
official MySQL backup utility. When you trigger a backup,
Databasus executes mysqldump with optimized parameters:
</p>
<ul className="list-disc list-inside space-y-2 text-gray-400">
@@ -792,7 +792,7 @@ export default function MysqlBackupPage() {
</ul>
<p className="text-gray-400">
For MySQL 8.0 and newer, Postgresus enables{" "}
For MySQL 8.0 and newer, Databasus enables{" "}
<strong>zstd network compression</strong> for faster transfers
over slow connections. MySQL 5.7 uses legacy compression
automatically.
@@ -862,7 +862,7 @@ export default function MysqlBackupPage() {
<div className="space-y-4 text-gray-200 text-sm sm:text-base">
<p>
For MariaDB databases, Postgresus uses the native{" "}
For MariaDB databases, Databasus uses the native{" "}
<strong>mariadb-dump</strong> tool instead of mysqldump. This
ensures full compatibility with MariaDB-specific features and
optimizations.
@@ -930,10 +930,10 @@ export default function MysqlBackupPage() {
</h2>
<p className="text-sm sm:text-base md:text-lg text-gray-200 max-w-[550px] mx-auto">
Postgresus supports multiple installation methods. Deploy on
your VPS, local machine or Kubernetes cluster in about 2
minutes. Same installation works for MySQL, MariaDB, PostgreSQL
and MongoDB backups
Databasus supports multiple installation methods. Deploy on your
VPS, local machine or Kubernetes cluster in about 2 minutes.
Same installation works for MySQL, MariaDB, PostgreSQL and
MongoDB backups
</p>
</div>
@@ -956,7 +956,7 @@ export default function MysqlBackupPage() {
<p className="text-base md:text-lg text-gray-200 max-w-[600px] mx-auto">
Common questions about backing up MySQL and MariaDB databases with
Postgresus. If you have other questions, join our community on
Databasus. If you have other questions, join our community on
Telegram
</p>
</div>
@@ -966,33 +966,33 @@ export default function MysqlBackupPage() {
<div className="grid grid-cols-1 md:grid-cols-2 gap-4 md:gap-8">
<FaqItem
number="1"
question="What is Postgresus and how does it backup MySQL databases?"
answer="Postgresus is an Apache 2.0 licensed, self-hosted backup tool that uses mysqldump under the hood to create consistent MySQL backups. It wraps mysqldump with a modern web interface, automated scheduling, cloud storage integration (S3, Google Drive, Dropbox), real-time notifications (Slack, Discord, Telegram) and AES-256-GCM encryption — eliminating the need for custom shell scripts and cron jobs."
question="What is Databasus and how does it backup MySQL databases?"
answer="Databasus is an Apache 2.0 licensed, self-hosted backup tool that uses mysqldump under the hood to create consistent MySQL backups. It wraps mysqldump with a modern web interface, automated scheduling, cloud storage integration (S3, Google Drive, Dropbox), real-time notifications (Slack, Discord, Telegram) and AES-256-GCM encryption — eliminating the need for custom shell scripts and cron jobs."
/>
<FaqItem
number="2"
question="Is Postgresus a mysqldump alternative or replacement?"
answer="Postgresus extends mysqldump rather than replacing it. Under the hood, it executes mysqldump with optimized parameters (--single-transaction, --routines, --triggers, --events) then handles compression, encryption and upload to your configured storage. You get all mysqldump reliability plus scheduling, cloud storage, notifications and team collaboration features through a web UI."
question="Is Databasus a mysqldump alternative or replacement?"
answer="Databasus extends mysqldump rather than replacing it. Under the hood, it executes mysqldump with optimized parameters (--single-transaction, --routines, --triggers, --events) then handles compression, encryption and upload to your configured storage. You get all mysqldump reliability plus scheduling, cloud storage, notifications and team collaboration features through a web UI."
/>
<FaqItem
number="3"
question="Which MySQL versions does Postgresus support?"
answer="Postgresus supports MySQL 5.7, 8.0, 8.4 and 9. For MySQL 8.0 and newer, Postgresus uses zstd network compression for faster transfers over slow connections. For MySQL 5.7, legacy compression is used automatically. All versions get the same features: scheduling, encryption, cloud storage and notifications."
question="Which MySQL versions does Databasus support?"
answer="Databasus supports MySQL 5.7, 8.0, 8.4 and 9. For MySQL 8.0 and newer, Databasus uses zstd network compression for faster transfers over slow connections. For MySQL 5.7, legacy compression is used automatically. All versions get the same features: scheduling, encryption, cloud storage and notifications."
/>
<FaqItem
number="4"
question="Which MariaDB versions does Postgresus support?"
answer="Postgresus supports MariaDB 10 and 11. For MariaDB backups, Postgresus uses the native mariadb-dump tool instead of mysqldump, ensuring full compatibility with MariaDB-specific features and optimizations. The same web UI, scheduling, storage and notification features work for both MySQL and MariaDB."
question="Which MariaDB versions does Databasus support?"
answer="Databasus supports MariaDB 10 and 11. For MariaDB backups, Databasus uses the native mariadb-dump tool instead of mysqldump, ensuring full compatibility with MariaDB-specific features and optimizations. The same web UI, scheduling, storage and notification features work for both MySQL and MariaDB."
/>
<FaqItem
number="5"
question="Can I backup MySQL databases hosted on AWS RDS, Google Cloud SQL or Azure?"
answer="Yes, Postgresus works seamlessly with cloud-hosted MySQL databases including AWS RDS for MySQL, Google Cloud SQL, Azure Database for MySQL and PlanetScale. Since Postgresus uses logical backups via mysqldump, it only requires standard MySQL connection credentials (host, port, username, password) — no special cloud permissions, IAM roles or filesystem access needed."
answer="Yes, Databasus works seamlessly with cloud-hosted MySQL databases including AWS RDS for MySQL, Google Cloud SQL, Azure Database for MySQL and PlanetScale. Since Databasus uses logical backups via mysqldump, it only requires standard MySQL connection credentials (host, port, username, password) — no special cloud permissions, IAM roles or filesystem access needed."
/>
<FaqItem
number="6"
question="How does MySQL backup scheduling work in Postgresus?"
answer="You can schedule MySQL backups at hourly, daily, weekly or monthly intervals, or use cron expressions for precise control. Choose specific times (like 3 AM when traffic is low) and days. Postgresus handles the rest: connecting to MySQL, running mysqldump, compressing the output, encrypting it and uploading to your storage destination."
question="How does MySQL backup scheduling work in Databasus?"
answer="You can schedule MySQL backups at hourly, daily, weekly or monthly intervals, or use cron expressions for precise control. Choose specific times (like 3 AM when traffic is low) and days. Databasus handles the rest: connecting to MySQL, running mysqldump, compressing the output, encrypting it and uploading to your storage destination."
/>
<FaqItem
number="7"
@@ -1001,10 +1001,10 @@ export default function MysqlBackupPage() {
/>
<FaqItem
number="8"
question="How does Postgresus secure MySQL database credentials and backups?"
question="How does Databasus secure MySQL database credentials and backups?"
answer={
<>
Postgresus implements multi-layer security:
Databasus implements multi-layer security:
<br />
<br />
<strong>1. Credential encryption:</strong> All MySQL
@@ -1027,16 +1027,16 @@ export default function MysqlBackupPage() {
<FaqItem
number="9"
question="Can I restore MySQL backups to a different server or cloud provider?"
answer="Yes, since Postgresus creates standard mysqldump logical backups, you can restore them to any MySQL server — different version, different cloud provider or local development machine. Download the backup from Postgresus (automatically decrypted), then use mysql command to restore. Postgresus shows the exact restore command for each backup."
answer="Yes, since Databasus creates standard mysqldump logical backups, you can restore them to any MySQL server — different version, different cloud provider or local development machine. Download the backup from Databasus (automatically decrypted), then use mysql command to restore. Databasus shows the exact restore command for each backup."
/>
<FaqItem
number="10"
question="Does Postgresus support backing up MySQL replication slaves?"
answer="Yes, you can backup MySQL replica (slave) servers. Postgresus uses --single-transaction which creates a consistent snapshot without stopping replication. This is useful for offloading backup load from your primary server. Just point Postgresus to your replica's connection details."
question="Does Databasus support backing up MySQL replication slaves?"
answer="Yes, you can backup MySQL replica (slave) servers. Databasus uses --single-transaction which creates a consistent snapshot without stopping replication. This is useful for offloading backup load from your primary server. Just point Databasus to your replica's connection details."
/>
<FaqItem
number="11"
question="How is Postgresus different from MySQL Enterprise Backup or Percona XtraBackup?"
question="How is Databasus different from MySQL Enterprise Backup or Percona XtraBackup?"
answer={
<>
MySQL Enterprise Backup and Percona XtraBackup create physical
@@ -1052,8 +1052,8 @@ export default function MysqlBackupPage() {
More complex setup and restore process
<br />
<br />
Postgresus uses logical backups (mysqldump) which work with
any MySQL server you can connect to, including all cloud
Databasus uses logical backups (mysqldump) which work with any
MySQL server you can connect to, including all cloud
providers. For most databases under 100GB, logical backups are
practical and much simpler to manage.
</>
@@ -1061,8 +1061,8 @@ export default function MysqlBackupPage() {
/>
<FaqItem
number="12"
question="Can I backup both MySQL and PostgreSQL databases with the same Postgresus instance?"
answer="Yes, Postgresus supports MySQL, MariaDB, PostgreSQL and MongoDB in a single installation. You can manage backups for all your databases from one web interface, with different schedules, storage destinations and notification channels for each. This is useful for teams managing diverse database infrastructure."
question="Can I backup both MySQL and PostgreSQL databases with the same Databasus instance?"
answer="Yes, Databasus supports MySQL, MariaDB, PostgreSQL and MongoDB in a single installation. You can manage backups for all your databases from one web interface, with different schedules, storage destinations and notification channels for each. This is useful for teams managing diverse database infrastructure."
/>
</div>
</div>
@@ -1075,14 +1075,14 @@ export default function MysqlBackupPage() {
<Link href="/" className="flex items-center gap-2.5 mb-6">
<img
src="/logo.svg"
alt="Postgresus logo"
alt="Databasus logo"
width={32}
height={32}
className="h-7 w-7 md:h-8 md:w-8"
/>
<span className="text-base md:text-lg font-semibold">
Postgresus
Databasus
</span>
</Link>
@@ -1115,7 +1115,7 @@ export default function MysqlBackupPage() {
Documentation
</a>
<a
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
className="hover:text-gray-200 transition-colors"
@@ -1123,7 +1123,7 @@ export default function MysqlBackupPage() {
GitHub
</a>
<a
href="https://t.me/postgresus_community"
href="https://t.me/databasus_community"
target="_blank"
rel="noopener noreferrer"
className="hover:text-gray-200 transition-colors"
@@ -1142,14 +1142,14 @@ export default function MysqlBackupPage() {
</div>
<a
href="mailto:info@postgresus.com"
href="mailto:info@databasus.com"
className="hover:text-gray-200 transition-colors text-sm md:text-base mb-4"
>
info@postgresus.com
info@databasus.com
</a>
<p className="text-gray-400 text-sm md:text-base text-center">
© 2025 Postgresus. All rights reserved.
© 2026 Databasus. All rights reserved.
</p>
</div>
</div>

View File

@@ -3,7 +3,7 @@ import Link from "next/link";
import Image from "next/image";
export const metadata: Metadata = {
title: "404 - Page Not Found | Postgresus",
title: "404 - Page Not Found | Databasus",
description: "The page you're looking for doesn't exist.",
robots: "noindex, nofollow",
};
@@ -17,7 +17,7 @@ export default function NotFound() {
<Link href="/" className="flex items-center">
<Image
src="/logo.svg"
alt="Postgresus logo"
alt="Databasus logo"
width={30}
height={30}
className="shrink-0 sm:h-[40px] sm:w-[40px] md:h-[50px] md:w-[50px]"
@@ -25,7 +25,7 @@ export default function NotFound() {
/>
<div className="ml-2 select-none text-lg font-bold text-white sm:ml-3 sm:text-xl md:ml-4 md:text-2xl">
Postgresus
Databasus
</div>
</Link>
@@ -38,7 +38,7 @@ export default function NotFound() {
</a>
<a
className="text-gray-300 hover:text-white transition-colors"
href="https://t.me/postgresus_community"
href="https://t.me/databasus_community"
target="_blank"
rel="noopener noreferrer"
>
@@ -48,7 +48,7 @@ export default function NotFound() {
<a
className="ml-auto lg:ml-0"
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
>
@@ -121,7 +121,7 @@ export default function NotFound() {
{/* Footer */}
<footer className="border-t border-[#ffffff20] py-8 text-center text-sm text-gray-400">
<p>
© {new Date().getFullYear()} Postgresus. Open source PostgreSQL backup
© {new Date().getFullYear()} Databasus. Open source PostgreSQL backup
tool.
</p>
</footer>

View File

@@ -5,11 +5,11 @@ import DocsSidebarComponent from "../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "Notifiers - Postgresus Documentation",
title: "Notifiers - Databasus Documentation",
description:
"List of supported notification channels for Postgresus backup alerts including Slack, Discord, Telegram, Microsoft Teams, Email and Webhooks.",
"List of supported notification channels for Databasus backup alerts including Slack, Discord, Telegram, Microsoft Teams, Email and Webhooks.",
keywords: [
"Postgresus notifiers",
"Databasus notifiers",
"backup notifications",
"Slack notifications",
"Discord alerts",
@@ -19,20 +19,20 @@ export const metadata: Metadata = {
"Webhook notifications",
],
openGraph: {
title: "Notifiers - Postgresus Documentation",
title: "Notifiers - Databasus Documentation",
description:
"List of supported notification channels for Postgresus backup alerts including Slack, Discord, Telegram, Microsoft Teams, Email and Webhooks.",
"List of supported notification channels for Databasus backup alerts including Slack, Discord, Telegram, Microsoft Teams, Email and Webhooks.",
type: "article",
url: "https://postgresus.com/notifiers",
url: "https://databasus.com/notifiers",
},
twitter: {
card: "summary",
title: "Notifiers - Postgresus Documentation",
title: "Notifiers - Databasus Documentation",
description:
"List of supported notification channels for Postgresus backup alerts including Slack, Discord, Telegram, Microsoft Teams, Email and Webhooks.",
"List of supported notification channels for Databasus backup alerts including Slack, Discord, Telegram, Microsoft Teams, Email and Webhooks.",
},
alternates: {
canonical: "https://postgresus.com/notifiers",
canonical: "https://databasus.com/notifiers",
},
robots: "index, follow",
};
@@ -47,19 +47,19 @@ export default function NotifiersPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
headline: "Notifiers - Postgresus Documentation",
headline: "Notifiers - Databasus Documentation",
description:
"List of supported notification channels for Postgresus backup alerts including Slack, Discord, Telegram, Microsoft Teams, Email and Webhooks.",
"List of supported notification channels for Databasus backup alerts including Slack, Discord, Telegram, Microsoft Teams, Email and Webhooks.",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -79,7 +79,7 @@ export default function NotifiersPage() {
<h1 id="notifiers">Notifiers</h1>
<p className="text-lg text-gray-400">
Postgresus supports multiple notification channels to keep you
Databasus supports multiple notification channels to keep you
informed about your PostgreSQL backup status. Get instant alerts
when backups succeed, fail or encounter issues.
</p>

View File

@@ -4,11 +4,11 @@ import DocsSidebarComponent from "../../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "How to configure Slack notifications for Postgresus | Postgresus",
title: "How to configure Slack notifications for Databasus | Databasus",
description:
"Step-by-step guide to set up Slack notifications for PostgreSQL backup alerts with Postgresus. Learn how to create a Slack bot app and configure notifications.",
"Step-by-step guide to set up Slack notifications for PostgreSQL backup alerts with Databasus. Learn how to create a Slack bot app and configure notifications.",
keywords: [
"Postgresus",
"Databasus",
"Slack notifications",
"PostgreSQL backup",
"Slack bot token",
@@ -17,20 +17,20 @@ export const metadata: Metadata = {
"database notifications",
],
openGraph: {
title: "How to configure Slack notifications for Postgresus | Postgresus",
title: "How to configure Slack notifications for Databasus | Databasus",
description:
"Step-by-step guide to set up Slack notifications for PostgreSQL backup alerts with Postgresus. Learn how to create a Slack bot app and configure notifications.",
"Step-by-step guide to set up Slack notifications for PostgreSQL backup alerts with Databasus. Learn how to create a Slack bot app and configure notifications.",
type: "article",
url: "https://postgresus.com/notifiers/slack",
url: "https://databasus.com/notifiers/slack",
},
twitter: {
card: "summary",
title: "How to configure Slack notifications for Postgresus | Postgresus",
title: "How to configure Slack notifications for Databasus | Databasus",
description:
"Step-by-step guide to set up Slack notifications for PostgreSQL backup alerts with Postgresus. Learn how to create a Slack bot app and configure notifications.",
"Step-by-step guide to set up Slack notifications for PostgreSQL backup alerts with Databasus. Learn how to create a Slack bot app and configure notifications.",
},
alternates: {
canonical: "https://postgresus.com/notifiers/slack",
canonical: "https://databasus.com/notifiers/slack",
},
robots: "index, follow",
};
@@ -45,9 +45,9 @@ export default function SlackPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "HowTo",
name: "How to configure Slack notifications for Postgresus",
name: "How to configure Slack notifications for Databasus",
description:
"Step-by-step guide to set up Slack notifications for PostgreSQL backup alerts with Postgresus",
"Step-by-step guide to set up Slack notifications for PostgreSQL backup alerts with Databasus",
step: [
{
"@type": "HowToStep",
@@ -86,8 +86,8 @@ export default function SlackPage() {
},
{
"@type": "HowToStep",
name: "Configure in Postgresus",
text: "In Postgresus, add the Bot Token and Channel ID to the Slack notifier configuration.",
name: "Configure in Databasus",
text: "In Databasus, add the Bot Token and Channel ID to the Slack notifier configuration.",
},
{
"@type": "HowToStep",
@@ -151,7 +151,7 @@ export default function SlackPage() {
<h3 id="name-your-app">4. Name your app</h3>
<p>
Enter a name for your app (e.g., &quot;Postgresus
Enter a name for your app (e.g., &quot;Databasus
Notifications&quot;) and select the workspace where you want to
install it. Click <strong>&quot;Create App&quot;</strong>.
</p>
@@ -241,7 +241,7 @@ export default function SlackPage() {
After installation, you&apos;ll see the{" "}
<strong>&quot;Bot User OAuth Token&quot;</strong>. It starts
with <code>xoxb-</code>. Copy this token - you&apos;ll need it
for Postgresus configuration.
for Databasus configuration.
</p>
<h2 id="get-channel-id">Get Channel ID</h2>
@@ -286,7 +286,7 @@ export default function SlackPage() {
<ol>
<li>
In the private channel, type{" "}
<code>@Postgresus Notifications</code> (or whatever name you
<code>@Databasus Notifications</code> (or whatever name you
gave your app)
</li>
<li>
@@ -303,12 +303,12 @@ export default function SlackPage() {
necessary.
</p>
<h2 id="configure-postgresus">Configure in Postgresus</h2>
<h2 id="configure-databasus">Configure in Databasus</h2>
<h3 id="add-slack-notifier">13. Add Slack notifier</h3>
<p>
In Postgresus, navigate to the notifiers settings and add a new
In Databasus, navigate to the notifiers settings and add a new
Slack notifier:
</p>
@@ -341,7 +341,7 @@ export default function SlackPage() {
<p>
That&apos;s it! Your Slack workspace is now configured to
receive PostgreSQL backup notifications from Postgresus.
receive PostgreSQL backup notifications from Databasus.
</p>
{/* Navigation */}

View File

@@ -6,11 +6,11 @@ import Image from "next/image";
export const metadata: Metadata = {
title:
"How to configure Microsoft Teams notifications for Postgresus | Postgresus",
"How to configure Microsoft Teams notifications for Databasus | Databasus",
description:
"Step-by-step guide to set up Microsoft Teams notifications for PostgreSQL backup alerts with Postgresus. Learn how to create Teams webhook and configure notifications.",
"Step-by-step guide to set up Microsoft Teams notifications for PostgreSQL backup alerts with Databasus. Learn how to create Teams webhook and configure notifications.",
keywords: [
"Postgresus",
"Databasus",
"Microsoft Teams notifications",
"PostgreSQL backup",
"Teams webhook",
@@ -19,21 +19,21 @@ export const metadata: Metadata = {
],
openGraph: {
title:
"How to configure Microsoft Teams notifications for Postgresus | Postgresus",
"How to configure Microsoft Teams notifications for Databasus | Databasus",
description:
"Step-by-step guide to set up Microsoft Teams notifications for PostgreSQL backup alerts with Postgresus. Learn how to create Teams webhook and configure notifications.",
"Step-by-step guide to set up Microsoft Teams notifications for PostgreSQL backup alerts with Databasus. Learn how to create Teams webhook and configure notifications.",
type: "article",
url: "https://postgresus.com/notifiers/teams",
url: "https://databasus.com/notifiers/teams",
},
twitter: {
card: "summary",
title:
"How to configure Microsoft Teams notifications for Postgresus | Postgresus",
"How to configure Microsoft Teams notifications for Databasus | Databasus",
description:
"Step-by-step guide to set up Microsoft Teams notifications for PostgreSQL backup alerts with Postgresus. Learn how to create Teams webhook and configure notifications.",
"Step-by-step guide to set up Microsoft Teams notifications for PostgreSQL backup alerts with Databasus. Learn how to create Teams webhook and configure notifications.",
},
alternates: {
canonical: "https://postgresus.com/notifiers/teams",
canonical: "https://databasus.com/notifiers/teams",
},
robots: "index, follow",
};
@@ -48,9 +48,9 @@ export default function TeamsPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "HowTo",
name: "How to configure Microsoft Teams notifications for Postgresus",
name: "How to configure Microsoft Teams notifications for Databasus",
description:
"Step-by-step guide to set up Microsoft Teams notifications for PostgreSQL backup alerts with Postgresus",
"Step-by-step guide to set up Microsoft Teams notifications for PostgreSQL backup alerts with Databasus",
step: [
{
"@type": "HowToStep",
@@ -84,8 +84,8 @@ export default function TeamsPage() {
},
{
"@type": "HowToStep",
name: "Configure in Postgresus",
text: "Paste the webhook URL into Postgresus notifier configuration.",
name: "Configure in Databasus",
text: "Paste the webhook URL into Databasus notifier configuration.",
},
],
}),
@@ -191,7 +191,7 @@ export default function TeamsPage() {
<p>
Set up the webhook by providing a name (e.g.,{" "}
<strong>&quot;Postgresus Backup Notifications&quot;</strong>)
<strong>&quot;Databasus Backup Notifications&quot;</strong>)
and confirm the channel where notifications will be posted.
</p>
@@ -209,7 +209,7 @@ export default function TeamsPage() {
<p>
After creating the workflow, you&apos;ll see the{" "}
<strong>HTTP POST URL</strong>. Copy this URL - you&apos;ll need
it for Postgresus configuration.
it for Databasus configuration.
</p>
<Image
@@ -221,19 +221,19 @@ export default function TeamsPage() {
loading="lazy"
/>
<h2 id="configure-postgresus">Configure in Postgresus</h2>
<h2 id="configure-databasus">Configure in Databasus</h2>
<h3 id="add-teams-notifier">1. Add Teams notifier</h3>
<p>
In Postgresus, navigate to the notifiers settings and add a new
In Databasus, navigate to the notifiers settings and add a new
Microsoft Teams notifier. Paste the webhook URL you copied from
Teams.
</p>
<Image
src="/images/notifier-teams/image-07.png"
alt="Configure Teams in Postgresus"
alt="Configure Teams in Databasus"
width={500}
height={400}
className="my-6 rounded-lg border border-gray-200"
@@ -250,7 +250,7 @@ export default function TeamsPage() {
<p>
That&apos;s it! Your Microsoft Teams channel is now configured
to receive PostgreSQL backup notifications from Postgresus.
to receive PostgreSQL backup notifications from Databasus.
</p>
{/* Navigation */}

View File

@@ -11,23 +11,23 @@ export const metadata: Metadata = {
"PostgreSQL, backup, monitoring, database, scheduled backups, Docker, self-hosted, open source, S3, Google Drive, Slack notifications, Discord, DevOps, database monitoring, pg_dump, database restore, encryption, AES-256, backup encryption",
robots: "index, follow",
alternates: {
canonical: "https://postgresus.com",
canonical: "https://databasus.com",
},
openGraph: {
type: "website",
url: "https://postgresus.com",
url: "https://databasus.com",
title: "PostgreSQL backup",
description:
"Free and open source tool for PostgreSQL scheduled backups (with MySQL and MongoDB support). Save them locally and to clouds. Notifications to Slack, Discord, Telegram, email, webhook, etc.",
images: [
{
url: "https://postgresus.com/images/index/dashboard.png",
alt: "Postgresus dashboard interface showing backup management",
width: 1700,
height: 1078,
url: "https://databasus.com/images/index/dashboard.png",
alt: "Databasus dashboard interface showing backup management",
width: 980,
height: 573,
},
],
siteName: "Postgresus",
siteName: "Databasus",
locale: "en_US",
},
twitter: {
@@ -35,11 +35,11 @@ export const metadata: Metadata = {
title: "PostgreSQL backup",
description:
"Free and open source tool for PostgreSQL scheduled backups (with MySQL and MongoDB support). Save them locally and to clouds. Notifications to Slack, Discord, Telegram, email, webhook, etc.",
images: ["https://postgresus.com/images/index/dashboard.png"],
images: ["https://databasus.com/images/index/dashboard.png"],
},
applicationName: "Postgresus",
applicationName: "Databasus",
appleWebApp: {
title: "Postgresus",
title: "Databasus",
capable: true,
},
icons: {
@@ -62,18 +62,18 @@ export default function Index() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "SoftwareApplication",
name: "Postgresus",
name: "Databasus",
description:
"Free and open source tool for PostgreSQL scheduled backups (with MySQL and MongoDB support). Save them locally and to clouds. Notifications to Slack, Discord, Telegram, email, webhook, etc.",
url: "https://postgresus.com",
image: "https://postgresus.com/images/index/dashboard.png",
logo: "https://postgresus.com/logo.svg",
url: "https://databasus.com",
image: "https://databasus.com/images/index/dashboard.png",
logo: "https://databasus.com/logo.svg",
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
featureList: [
@@ -87,7 +87,7 @@ export default function Index() {
"Backup compression and AES-256-GCM encryption",
"Support for PostgreSQL, MySQL, MariaDB and MongoDB",
],
screenshot: "https://postgresus.com/images/index/dashboard.png",
screenshot: "https://databasus.com/images/index/dashboard.png",
softwareVersion: "latest",
}),
}}
@@ -98,11 +98,11 @@ export default function Index() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "Organization",
name: "Postgresus",
url: "https://postgresus.com/",
alternateName: ["postgresus", "Postgresus"],
logo: "https://postgresus.com/logo.svg",
sameAs: ["https://github.com/RostislavDugin/postgresus"],
name: "Databasus",
url: "https://databasus.com/",
alternateName: ["databasus", "Databasus"],
logo: "https://databasus.com/logo.svg",
sameAs: ["https://github.com/databasus/databasus"],
}),
}}
/>
@@ -112,11 +112,11 @@ export default function Index() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "WebSite",
name: "Postgresus",
alternateName: ["postgresus", "Postgresus"],
url: "https://postgresus.com/",
name: "Databasus",
alternateName: ["databasus", "Databasus"],
url: "https://databasus.com/",
description: "PostgreSQL backup tool",
publisher: { "@type": "Organization", name: "Postgresus" },
publisher: { "@type": "Organization", name: "Databasus" },
}),
}}
/>
@@ -129,15 +129,15 @@ export default function Index() {
mainEntity: [
{
"@type": "Question",
name: "What is Postgresus and why should I use it instead of hand-rolled scripts?",
name: "What is Databasus and why should I use it instead of hand-rolled scripts?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus is an Apache 2.0 licensed, self-hosted service backing up PostgreSQL, v13 to v18. It differs from shell scripts in that it has a frontend for scheduling tasks, compressing and storing archives on multiple targets (local disk, S3, Google Drive, Dropbox, SFTP, rclone, etc.) and notifying your team when tasks finish or fail — all without hand-rolled code",
text: "Databasus is an Apache 2.0 licensed, self-hosted service backing up PostgreSQL, v13 to v18. It differs from shell scripts in that it has a frontend for scheduling tasks, compressing and storing archives on multiple targets (local disk, S3, Google Drive, Dropbox, SFTP, rclone, etc.) and notifying your team when tasks finish or fail — all without hand-rolled code",
},
},
{
"@type": "Question",
name: "How do I install Postgresus in the quickest manner?",
name: "How do I install Databasus in the quickest manner?",
acceptedAnswer: {
"@type": "Answer",
text: "The most direct route is to run the one-line cURL installer. It fetches the current Docker image, spins up a single PostgreSQL container. Then creates a docker-compose.yml and boots up the service so it will automatically start again when reboots occur. Overall time is usually less than two minutes on a typical VPS.",
@@ -156,7 +156,7 @@ export default function Index() {
name: "Where do my backups live and how much space will they occupy?",
acceptedAnswer: {
"@type": "Answer",
text: "Archives can be saved to local volumes, S3-compatible buckets, Google Drive, Dropbox and other cloud targets. Postgresus implements balanced compression, which typically shrinks dump size by 4-8x with incremental only about 20% of runtime overhead, so you have storage and bandwidth savings.",
text: "Archives can be saved to local volumes, S3-compatible buckets, Google Drive, Dropbox and other cloud targets. Databasus implements balanced compression, which typically shrinks dump size by 4-8x with incremental only about 20% of runtime overhead, so you have storage and bandwidth savings.",
},
},
{
@@ -164,39 +164,39 @@ export default function Index() {
name: "How will I know a backup succeeded — or worse, failed?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus can notify with real-time emails, Slack, Telegram, webhooks, Mattermost, Discord and more. You have the choice of what channels to ping so that your DevOps team hears about successes and failures in real time, making recovery routines and compliance audits easier.",
text: "Databasus can notify with real-time emails, Slack, Telegram, webhooks, Mattermost, Discord and more. You have the choice of what channels to ping so that your DevOps team hears about successes and failures in real time, making recovery routines and compliance audits easier.",
},
},
{
"@type": "Question",
name: "How does Postgresus ensure security?",
name: "How does Databasus ensure security?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus enforces security on three levels: (1) Sensitive data encryption — all passwords, tokens and credentials are encrypted with AES-256-GCM and stored separately from the database; (2) Backup encryption — each backup file is encrypted with a unique key derived from a master key, backup ID and random salt, making backups useless without your encryption key even if someone gains storage access; (3) Read-only database access — Postgresus only requires SELECT permissions and performs comprehensive checks to ensure no write privileges exist, preventing data corruption even if the tool is compromised. All operations run in containers you control on servers you own, and because it's open source, your security team can audit every line of code before deployment.",
text: "Databasus enforces security on three levels: (1) Sensitive data encryption — all passwords, tokens and credentials are encrypted with AES-256-GCM and stored separately from the database; (2) Backup encryption — each backup file is encrypted with a unique key derived from a master key, backup ID and random salt, making backups useless without your encryption key even if someone gains storage access; (3) Read-only database access — Databasus only requires SELECT permissions and performs comprehensive checks to ensure no write privileges exist, preventing data corruption even if the tool is compromised. All operations run in containers you control on servers you own, and because it's open source, your security team can audit every line of code before deployment.",
},
},
{
"@type": "Question",
name: "Who is Postgresus suitable for?",
name: "Who is Databasus suitable for?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus is designed for single developers, DevOps teams, organizations, startups, system administrators and IT departments who need reliable databases backups. Whether you're managing personal projects or production databases, Postgresus provides enterprise-grade backup capabilities with a simple, intuitive interface.",
text: "Databasus is designed for single developers, DevOps teams, organizations, startups, system administrators and IT departments who need reliable databases backups. Whether you're managing personal projects or production databases, Databasus provides enterprise-grade backup capabilities with a simple, intuitive interface.",
},
},
{
"@type": "Question",
name: "How is Postgresus different from PgBackRest, Barman or pg_dump?",
name: "How is Databasus different from PgBackRest, Barman or pg_dump?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus provides a modern, user-friendly web interface instead of complex configuration files and command-line tools. While PgBackRest and Barman require extensive configuration and command-line expertise, Postgresus offers intuitive point-and-click setup. Unlike raw pg_dump scripts, it includes built-in scheduling, compression, multiple storage destinations, health monitoring and real-time notifications — all managed through a simple web UI.",
text: "Databasus provides a modern, user-friendly web interface instead of complex configuration files and command-line tools. While PgBackRest and Barman require extensive configuration and command-line expertise, Databasus offers intuitive point-and-click setup. Unlike raw pg_dump scripts, it includes built-in scheduling, compression, multiple storage destinations, health monitoring and real-time notifications — all managed through a simple web UI.",
},
},
{
"@type": "Question",
name: "Which databases are supported by Postgresus?",
name: "Which databases are supported by Databasus?",
acceptedAnswer: {
"@type": "Answer",
text: "Postgresus supports PostgreSQL, MySQL, MariaDB and MongoDB. You can backup and restore all of them with the same tool.",
text: "Databasus supports PostgreSQL, MySQL, MariaDB and MongoDB. You can backup and restore all of them with the same tool.",
},
},
],
@@ -211,7 +211,7 @@ export default function Index() {
<Link href="/" className="flex items-center gap-2.5">
<img
src="/logo.svg"
alt="Postgresus logo"
alt="Databasus logo"
width={32}
height={32}
className="h-7 w-7 md:h-8 md:w-8"
@@ -220,7 +220,7 @@ export default function Index() {
/>
<span className="text-base md:text-lg font-semibold">
Postgresus
Databasus
</span>
</Link>
@@ -253,7 +253,7 @@ export default function Index() {
Contribute
</a>
<a
href="https://t.me/postgresus_community"
href="https://t.me/databasus_community"
target="_blank"
rel="noopener noreferrer"
className="py-2 hover:text-gray-300 transition-colors"
@@ -264,7 +264,7 @@ export default function Index() {
{/* GitHub Button */}
<a
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
className="flex items-center gap-2 hover:opacity-70 rounded-lg px-2 md:px-3 py-2 text-[14px] border border-[#ffffff20] bg-[#0C0E13] transition-colors"
@@ -311,7 +311,7 @@ export default function Index() {
{/* Content */}
<div className="text-center mb-8 md:mb-16">
<div className="inline-flex items-center justify-center px-3 md:px-4 py-1 md:py-1.5 rounded-lg border border-[#ffffff20] mb-4 md:mb-6">
<span className="text-sm font-medium">Postgresus</span>
<span className="text-sm font-medium">Databasus</span>
</div>
<h1 className="text-2xl sm:text-4xl sm:max-w-[300px] md:text-4xl leading-tight font-bold mb-4 md:mb-6 mx-auto md:max-w-[600px]">
@@ -319,7 +319,7 @@ export default function Index() {
</h1>
<p className="text-sm sm:text-lg text-gray-200 max-w-[720px] mx-auto mb-6 md:mb-10 px-2">
Postgresus is a free, open source and self-hosted tool to backup
Databasus is a free, open source and self-hosted tool to backup
PostgreSQL. Make backups with different storages (S3, Google
Drive, FTP, etc.) and notifications about progress (Slack,
Discord, Telegram, etc.). MySQL, MariaDB and MongoDB are supported
@@ -348,7 +348,7 @@ export default function Index() {
</a>
<a
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
className="w-full sm:w-auto inline-flex items-center justify-center gap-2 px-5 py-2.5 rounded-lg font-medium border border-[#ffffff20] bg-[#0C0E13] hover:opacity-70 transition-opacity"
@@ -386,7 +386,7 @@ export default function Index() {
<div>
<img
src="/images/index/dashboard.svg"
alt="Postgresus dashboard interface"
alt="Databasus dashboard interface"
width={980}
height={620}
className="w-full h-auto"
@@ -411,7 +411,7 @@ export default function Index() {
</h2>
<p className="text-sm sm:text-lg text-gray-200 max-w-[650px] mx-auto mb-8 md:mb-10">
Postgresus provides everything you need for reliable database
Databasus provides everything you need for reliable database
backup management. From automated scheduling to backups
encryption. Suitable well for both individual developers with
personal projects, DevOps teams and enterprises
@@ -550,7 +550,7 @@ export default function Index() {
</h3>
<p className="text-gray-400 text-sm md:text-base mb-4">
Postgresus runs on your PC or VPS. Therefore, all your data is
Databasus runs on your PC or VPS. Therefore, all your data is
owned by you and secured. Deploy takes about 2 minutes via
script, Docker or k8s
</p>
@@ -770,9 +770,9 @@ export default function Index() {
</h3>
<p className="text-gray-400 text-sm md:text-base">
Postgresus works seamlessly with cloud-hosted databases
Databasus works seamlessly with cloud-hosted databases
including AWS RDS, Google Cloud SQL, Azure Database. This is
why Postgresus does not support incremental backups: clouds
why Databasus does not support incremental backups: clouds
already have them, but usually you cannot restore external
PITR backup back to the cloud. Hourly and daily granularity
are enough for 99% of even large enterprise projects
@@ -794,7 +794,7 @@ export default function Index() {
</div>
<h2 className="text-2xl md:text-3xl lg:text-4xl font-bold mb-4 md:mb-6">
How to use Postgresus?
How to use Databasus?
</h2>
<p className="text-gray-200 max-w-[450px] leading-relaxed mb-6 md:mb-8 text-sm sm:text-base">
@@ -820,7 +820,7 @@ export default function Index() {
Rostislav Dugin
</p>
<p className="text-sm text-gray-400">
Developer of Postgresus
Developer of Databasus
</p>
</div>
</a>
@@ -831,7 +831,7 @@ export default function Index() {
<div className="rounded-lg overflow-hidden shadow-lg border border-[#ffffff20]">
<LiteYouTubeEmbed
videoId="1qsAnijJfJE"
title="How to use Postgresus (overview)?"
title="How to use Databasus (overview)?"
thumbnailSrc="/images/index/how-to-use-preview.svg"
/>
</div>
@@ -855,10 +855,9 @@ export default function Index() {
</h2>
<p className="text-sm sm:text-base md:text-lg text-gray-200 max-w-[550px] mx-auto">
Postgresus supports PostgreSQL, MySQL, MariaDB and MongoDB. You
can backup and restore all of them with the same tool. Primary
focus is on PostgreSQL, but MySQL, MariaDB and MongoDB are
supported too
Databasus supports PostgreSQL, MySQL, MariaDB and MongoDB. You can
backup and restore all of them with the same tool. Primary focus
is on PostgreSQL, but MySQL, MariaDB and MongoDB are supported too
</p>
</div>
@@ -882,7 +881,7 @@ export default function Index() {
</h3>
<p className="text-gray-400 text-sm md:text-base text-center mb-4">
PostgreSQL is the primary database supported by Postgresus. All
PostgreSQL is the primary database supported by Databasus. All
versions from 12 to 18 are supported
</p>
</div>
@@ -1000,7 +999,7 @@ export default function Index() {
</h2>
<p className="text-sm sm:text-base md:text-lg text-gray-200 max-w-[550px] mx-auto">
The main priority for Postgresus is simplicity, right now this is
The main priority for Databasus is simplicity, right now this is
the easiest tool to backup PostgreSQL in the world. To make
backups, you need to follow 4 steps. After that, you will be able
to restore in one click
@@ -1063,7 +1062,7 @@ export default function Index() {
version and target DB. Also choose whether SSL is required
</p>
<p>
Postgresus, by default, compress backups at balance level to
Databasus, by default, compress backups at balance level to
not slow down backup process (~20% slower) and save x4-x8 of
the space (that decreasing network traffic)
</p>
@@ -1126,8 +1125,8 @@ export default function Index() {
<div className="space-y-3 max-w-[370px] text-gray-400 text-sm md:text-base">
<p>
When backup succeed or failed, Postgresus is able to send
you notification. It can be chat with DevOps, your emails or
When backup succeed or failed, Databasus is able to send you
notification. It can be chat with DevOps, your emails or
even webhook of your team
</p>
<p>
@@ -1187,7 +1186,7 @@ export default function Index() {
</h2>
<p className="text-sm sm:text-base md:text-lg text-gray-200 max-w-[550px] mx-auto">
Postgresus support many ways of installation. Both local and
Databasus support many ways of installation. Both local and
cloud are supported. Both ways are extremely simple and easy to
use even for those who has no experience in administration or
DevOps
@@ -1212,7 +1211,7 @@ export default function Index() {
</h2>
<p className="text-base md:text-lg text-gray-200 max-w-[600px] mx-auto">
The goal of Postgresus make backing up as simple as possible for
The goal of Databasus make backing up as simple as possible for
single developers (as well as DevOps) and teams. UI makes it easy
to create backups and visualizes the progress and restores
anything in couple of clicks
@@ -1224,13 +1223,13 @@ export default function Index() {
<div className="grid grid-cols-1 md:grid-cols-2 gap-4 md:gap-8">
<FaqItem
number="1"
question="What is Postgresus and why should I use it instead of hand-rolled scripts?"
answer="Postgresus is an Apache 2.0 licensed, self-hosted service backing up databases. It differs from shell scripts in that it has a frontend for scheduling tasks, compressing and storing archives on multiple targets (local disk, S3, Google Drive, NAS, Dropbox, SFTP, rclone, etc.) and notifying your team when tasks finish or fail — all without hand-rolled code"
question="What is Databasus and why should I use it instead of hand-rolled scripts?"
answer="Databasus is an Apache 2.0 licensed, self-hosted service backing up databases. It differs from shell scripts in that it has a frontend for scheduling tasks, compressing and storing archives on multiple targets (local disk, S3, Google Drive, NAS, Dropbox, SFTP, rclone, etc.) and notifying your team when tasks finish or fail — all without hand-rolled code"
/>
<FaqItem
number="2"
question="How do I install Postgresus in the quickest manner?"
answer="Postgresus supports multiple installation methods: automated script, Docker, Docker Compose and Kubernetes with Helm. The quickest route is to run the one-line cURL installer, which fetches the current Docker image, creates a docker-compose.yml and boots up the service so it will automatically restart on reboots. For Kubernetes environments, use the official Helm chart for production-ready deployments. Overall time is usually less than two minutes on a typical VPS."
question="How do I install Databasus in the quickest manner?"
answer="Databasus supports multiple installation methods: automated script, Docker, Docker Compose and Kubernetes with Helm. The quickest route is to run the one-line cURL installer, which fetches the current Docker image, creates a docker-compose.yml and boots up the service so it will automatically restart on reboots. For Kubernetes environments, use the official Helm chart for production-ready deployments. Overall time is usually less than two minutes on a typical VPS."
/>
<FaqItem
number="3"
@@ -1239,15 +1238,15 @@ export default function Index() {
/>
<FaqItem
number="4"
question="How does Postgresus ensure security?"
answer="Postgresus enforces security on three levels: (1) Sensitive data encryption — all passwords, tokens and credentials are encrypted with AES-256-GCM and stored separately from the database; (2) Backup encryption — each backup file is encrypted with a unique key derived from a master key, backup ID and random salt, making backups useless without your encryption key even if someone gains storage access; (3) Read-only database access — Postgresus only requires SELECT permissions and performs comprehensive checks to ensure no write privileges exist, preventing data corruption even if the tool is compromised."
question="How does Databasus ensure security?"
answer="Databasus enforces security on three levels: (1) Sensitive data encryption — all passwords, tokens and credentials are encrypted with AES-256-GCM and stored separately from the database; (2) Backup encryption — each backup file is encrypted with a unique key derived from a master key, backup ID and random salt, making backups useless without your encryption key even if someone gains storage access; (3) Read-only database access — Databasus only requires SELECT permissions and performs comprehensive checks to ensure no write privileges exist, preventing data corruption even if the tool is compromised."
/>
<FaqItem
number="5"
question="How do I set up and run my first backup job in Postgresus?"
question="How do I set up and run my first backup job in Databasus?"
answer={
<>
To start your very first Postgresus backup, simply log in to
To start your very first Databasus backup, simply log in to
the dashboard, click on New Backup, select an interval
hourly, daily, weekly, monthly or cron. Then specify the exact
run time (e.g., 02:30 for off-peak hours).
@@ -1259,7 +1258,7 @@ export default function Index() {
Dropbox, etc.). <br />
<br />
If you need, add notification channels such as email, Slack,
Telegram or a webhook and click Save. Postgresus instantly
Telegram or a webhook and click Save. Databasus instantly
validates the info, starts the schedule, runs the initial job
and sends live status. So you may restore with one touch when
the backup is complete.
@@ -1269,24 +1268,24 @@ export default function Index() {
<FaqItem
number="6"
question="How does PostgreSQL monitoring work?"
answer="Postgresus monitors your databases instantly. This optional feature helps avoid extra costs for edge DBs. Health checks are performed once a specific period (minute, 5 minutes, etc.). To enable the feature, choose your DB and select 'enable' monitoring. Then configure health checks period and number of failed attempts to consider the DB as unavailable."
answer="Databasus monitors your databases instantly. This optional feature helps avoid extra costs for edge DBs. Health checks are performed once a specific period (minute, 5 minutes, etc.). To enable the feature, choose your DB and select 'enable' monitoring. Then configure health checks period and number of failed attempts to consider the DB as unavailable."
/>
<FaqItem
number="7"
question="Who is Postgresus suitable for?"
answer="Postgresus is designed for single developers, DevOps teams, organizations, startups, system administrators and IT departments who need reliable databases backups. Whether you're managing personal projects or production databases, Postgresus provides enterprise-grade backup capabilities with a simple, intuitive interface."
question="Who is Databasus suitable for?"
answer="Databasus is designed for single developers, DevOps teams, organizations, startups, system administrators and IT departments who need reliable databases backups. Whether you're managing personal projects or production databases, Databasus provides enterprise-grade backup capabilities with a simple, intuitive interface."
/>
<FaqItem
number="8"
question="How is Postgresus different from PgBackRest, Barman or pg_dump? Where can I read comparisons?"
question="How is Databasus different from PgBackRest, Barman or pg_dump? Where can I read comparisons?"
answer={
<>
Unlike other tools, Postgresus provides a way to manage many
Unlike other tools, Databasus provides a way to manage many
databases for teams in a modern, user-friendly web interface
(instead of complex configuration files and command-line
tools). While PgBackRest and Barman just backups single
database, require extensive configuration and command-line
expertise Postgresus offers way to setup full backup
expertise Databasus offers way to setup full backup
management for many databases. Unlike raw pg_dump scripts, it
includes built-in scheduling, compression, multiple storage
destinations, health monitoring and real-time notifications
@@ -1298,35 +1297,35 @@ export default function Index() {
href="/pgdump-alternative"
className="text-blue-400 hover:text-blue-600"
>
Postgresus vs pg_dump
Databasus vs pg_dump
</a>
,{" "}
<a
href="/postgresus-vs-pgbackrest"
href="/databasus-vs-pgbackrest"
className="text-blue-400 hover:text-blue-600"
>
Postgresus vs pgBackRest
Databasus vs pgBackRest
</a>
,{" "}
<a
href="/postgresus-vs-barman"
href="/databasus-vs-barman"
className="text-blue-400 hover:text-blue-600"
>
Postgresus vs Barman
Databasus vs Barman
</a>
,{" "}
<a
href="/postgresus-vs-wal-g"
href="/databasus-vs-wal-g"
className="text-blue-400 hover:text-blue-600"
>
Postgresus vs WAL-G
Databasus vs WAL-G
</a>{" "}
and{" "}
<a
href="/postgresus-vs-pgbackweb"
href="/databasus-vs-pgbackweb"
className="text-blue-400 hover:text-blue-600"
>
Postgresus vs pgBackWeb
Databasus vs pgBackWeb
</a>
. Each comparison explains the key differences, pros and cons,
and helps you choose the right tool for your needs.
@@ -1335,12 +1334,12 @@ export default function Index() {
/>
<FaqItem
number="9"
question="Can I use Postgresus as an individual and as a team?"
question="Can I use Databasus as an individual and as a team?"
answer={
<>
Yes, Postgresus works perfectly for both individual developers
Yes, Databasus works perfectly for both individual developers
and teams. For individuals, you can manage all your databases
with a simple, secure interface. For teams, Postgresus offers
with a simple, secure interface. For teams, Databasus offers
access management features that let you create multiple users
with different permission levels (viewer, editor, admin).
<br />
@@ -1355,28 +1354,28 @@ export default function Index() {
/>
<FaqItem
number="10"
question="Is Postgresus an alternative to pg_dump?"
answer="Yes, Postgresus is a modern alternative to pg_dump. Under the hood, Postgresus extends pg_dump features, adds user-friendly web interface, automated scheduling, multiple storage destinations, real-time notifications, health monitoring and backup encryption. Think of Postgresus as pg_dump with superpowers — you get all the reliability of pg_dump plus optimizations and enterprise features without writing shell scripts."
question="Is Databasus an alternative to pg_dump?"
answer="Yes, Databasus is a modern alternative to pg_dump. Under the hood, Databasus extends pg_dump features, adds user-friendly web interface, automated scheduling, multiple storage destinations, real-time notifications, health monitoring and backup encryption. Think of Databasus as pg_dump with superpowers — you get all the reliability of pg_dump plus optimizations and enterprise features without writing shell scripts."
/>
<FaqItem
number="11"
question="Which databases does Postgresus support?"
answer="Postgresus supports PostgreSQL, MySQL, MariaDB and MongoDB. However, Postgresus was originally created specifically for PostgreSQL and maintains its primary focus on it — providing 100% excellent support and maximum efficiency for PostgreSQL backups. While MySQL, MariaDB and MongoDB are fully supported, PostgreSQL remains the core priority with the most optimized features and ongoing development."
question="Which databases does Databasus support?"
answer="Databasus supports PostgreSQL, MySQL, MariaDB and MongoDB. However, Databasus was originally created specifically for PostgreSQL and maintains its primary focus on it — providing 100% excellent support and maximum efficiency for PostgreSQL backups. While MySQL, MariaDB and MongoDB are fully supported, PostgreSQL remains the core priority with the most optimized features and ongoing development."
/>
<FaqItem
number="12"
question="Why doesn't Postgresus support PITR (Point-in-Time Recovery)?"
question="Why doesn't Databasus support PITR (Point-in-Time Recovery)?"
answer={
<>
Postgresus intentionally focuses on logical backups rather
than PITR for several practical reasons:
Databasus intentionally focuses on logical backups rather than
PITR for several practical reasons:
<ol className="list-decimal list-inside mt-3 space-y-2">
<li>
<strong>Complex setup requirements</strong> PITR tools
typically need to be installed on the same server as your
database, requiring direct filesystem access and careful
configuration. You can backup only single database
(Postgresus allows many)
(Databasus allows many)
</li>
<li>
<strong>Restoration limitations</strong> incremental
@@ -1403,12 +1402,52 @@ export default function Index() {
</ol>
<br />
So instead of second-by-second restoration complexity,
Postgresus prioritizes an intuitive UX for individuals and
Databasus prioritizes an intuitive UX for individuals and
teams, making it the most reliable tool for managing multiple
databases and day to day use
</>
}
/>
<FaqItem
number="13"
question="Why was Postgresus renamed to Databasus?"
answer={
<>
The renaming from Postgresus to Databasus was an important
step for the project&apos;s growth. There are several reasons:
<ol className="list-decimal list-inside mt-3 space-y-2">
<li>
<strong>Project evolution</strong> Postgresus is no
longer a small tool that just adds UI for pg_dump. It
became a reliable backup management system for individual
users, DevOps, DBAs, teams and enterprises. Tens of
thousands of users use it daily. The initial positioning
is no longer suitable it&apos;s not just a UI wrapper,
it&apos;s a solid backup management system now
</li>
<li>
<strong>Multiple databases support</strong> while the
primary focus remains PostgreSQL (with 100% support in the
most efficient way), the project now supports MySQL,
MariaDB and MongoDB. More databases will be supported in
the future
</li>
<li>
<strong>Trademark compliance</strong>
&quot;postgres&quot; is a trademark of PostgreSQL Inc. and
cannot be used in project names. For legal safety and
compliance, renaming was necessary
</li>
</ol>
<br />
If you&apos;re currently using Postgresus, you can continue
using it or migrate to Databasus following the installation
steps. Note that simply renaming the image isn&apos;t enough,
as they use different data folders and internal database
naming.
</>
}
/>
</div>
</div>
</section>
@@ -1420,14 +1459,14 @@ export default function Index() {
<Link href="/" className="flex items-center gap-2.5 mb-6">
<img
src="/logo.svg"
alt="Postgresus logo"
alt="Databasus logo"
width={32}
height={32}
className="h-7 w-7 md:h-8 md:w-8"
/>
<span className="text-base md:text-lg font-semibold">
Postgresus
Databasus
</span>
</Link>
@@ -1460,7 +1499,7 @@ export default function Index() {
Documentation
</a>
<a
href="https://github.com/RostislavDugin/postgresus"
href="https://github.com/databasus/databasus"
target="_blank"
rel="noopener noreferrer"
className="hover:text-gray-200 transition-colors"
@@ -1468,7 +1507,7 @@ export default function Index() {
GitHub
</a>
<a
href="https://t.me/postgresus_community"
href="https://t.me/databasus_community"
target="_blank"
rel="noopener noreferrer"
className="hover:text-gray-200 transition-colors"
@@ -1487,14 +1526,14 @@ export default function Index() {
</div>
<a
href="mailto:info@postgresus.com"
href="mailto:info@databasus.com"
className="hover:text-gray-200 transition-colors text-sm md:text-base mb-4"
>
info@postgresus.com
info@databasus.com
</a>
<p className="text-gray-400 text-sm md:text-base text-center">
© 2025 Postgresus. All rights reserved.
© 2025 Databasus. All rights reserved.
</p>
</div>
</div>

View File

@@ -5,38 +5,38 @@ import DocsSidebarComponent from "../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "Reset password - Postgresus Documentation",
title: "Reset password - Databasus Documentation",
description:
"Learn how to reset user passwords in Postgresus using the built-in command-line tool. Quick and secure password recovery for your PostgreSQL backup system.",
"Learn how to reset user passwords in Databasus using the built-in command-line tool. Quick and secure password recovery for your PostgreSQL backup system.",
keywords: [
"Postgresus password reset",
"Databasus password reset",
"reset user password",
"PostgreSQL backup password",
"Docker password recovery",
"password recovery",
"Postgresus authentication",
"Databasus authentication",
],
openGraph: {
title: "Reset Password - Postgresus Documentation",
title: "Reset Password - Databasus Documentation",
description:
"Learn how to reset user passwords in Postgresus using the built-in command-line tool. Quick and secure password recovery for your PostgreSQL backup system.",
"Learn how to reset user passwords in Databasus using the built-in command-line tool. Quick and secure password recovery for your PostgreSQL backup system.",
type: "article",
url: "https://postgresus.com/password",
url: "https://databasus.com/password",
},
twitter: {
card: "summary",
title: "Reset Password - Postgresus Documentation",
title: "Reset Password - Databasus Documentation",
description:
"Learn how to reset user passwords in Postgresus using the built-in command-line tool. Quick and secure password recovery for your PostgreSQL backup system.",
"Learn how to reset user passwords in Databasus using the built-in command-line tool. Quick and secure password recovery for your PostgreSQL backup system.",
},
alternates: {
canonical: "https://postgresus.com/password",
canonical: "https://databasus.com/password",
},
robots: "index, follow",
};
export default function PasswordResetPage() {
const resetPasswordCommand = `docker exec -it postgresus ./main --new-password="YourNewSecurePassword123" --email="admin"`;
const resetPasswordCommand = `docker exec -it databasus ./main --new-password="YourNewSecurePassword123" --email="admin"`;
return (
<>
@@ -47,19 +47,19 @@ export default function PasswordResetPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
headline: "Reset Password - Postgresus Documentation",
headline: "Reset Password - Databasus Documentation",
description:
"Learn how to reset user passwords in Postgresus using the built-in command-line tool.",
"Learn how to reset user passwords in Databasus using the built-in command-line tool.",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -71,9 +71,9 @@ export default function PasswordResetPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "HowTo",
name: "How to reset Postgresus user password",
name: "How to reset Databasus user password",
description:
"Step-by-step guide to reset user passwords in Postgresus",
"Step-by-step guide to reset user passwords in Databasus",
step: [
{
"@type": "HowToStep",
@@ -82,14 +82,14 @@ export default function PasswordResetPage() {
itemListElement: [
{
"@type": "HowToDirection",
text: "Use docker exec to run the password reset command inside the Postgresus container",
text: "Use docker exec to run the password reset command inside the Databasus container",
},
],
},
{
"@type": "HowToStep",
name: "Verify password change",
text: "Log in to Postgresus with your new password to confirm the change was successful.",
text: "Log in to Databasus with your new password to confirm the change was successful.",
},
],
}),
@@ -112,7 +112,7 @@ export default function PasswordResetPage() {
<p>
To reset a user&apos;s password, use the following command on
the server where Postgresus is running:
the server where Databasus is running:
</p>
<div className="relative my-6">

View File

@@ -5,9 +5,9 @@ import DocsSidebarComponent from "../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "pg_dump Alternative - Postgresus PostgreSQL Backup Tool",
title: "pg_dump Alternative - Databasus PostgreSQL Backup Tool",
description:
"Postgresus is built on pg_dump and extends its features with backups management, a web UI, automated scheduling, cloud storage, notifications, team collaborationand encryption.",
"Databasus is built on pg_dump and extends its features with backups management, a web UI, automated scheduling, cloud storage, notifications, team collaborationand encryption.",
keywords: [
"pg_dump alternative",
"pg_dump GUI",
@@ -21,20 +21,20 @@ export const metadata: Metadata = {
"pg_dump wrapper",
],
openGraph: {
title: "pg_dump Alternative - Postgresus PostgreSQL Backup Tool",
title: "pg_dump Alternative - Databasus PostgreSQL Backup Tool",
description:
"Postgresus is built on pg_dump and extends its features with backups management, a web UI, automated scheduling, cloud storage, notifications, team collaborationand encryption.",
"Databasus is built on pg_dump and extends its features with backups management, a web UI, automated scheduling, cloud storage, notifications, team collaborationand encryption.",
type: "article",
url: "https://postgresus.com/pgdump-alternative",
url: "https://databasus.com/pgdump-alternative",
},
twitter: {
card: "summary",
title: "pg_dump Alternative - Postgresus PostgreSQL Backup Tool",
title: "pg_dump Alternative - Databasus PostgreSQL Backup Tool",
description:
"Postgresus is built on pg_dump and extends its features with backups management, a web UI, automated scheduling, cloud storage, notifications, team collaborationand encryption.",
"Databasus is built on pg_dump and extends its features with backups management, a web UI, automated scheduling, cloud storage, notifications, team collaborationand encryption.",
},
alternates: {
canonical: "https://postgresus.com/pgdump-alternative",
canonical: "https://databasus.com/pgdump-alternative",
},
robots: "index, follow",
};
@@ -49,19 +49,19 @@ export default function PgDumpAlternativePage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
headline: "pg_dump Alternative - Postgresus PostgreSQL Backup Tool",
headline: "pg_dump Alternative - Databasus PostgreSQL Backup Tool",
description:
"A comprehensive guide to Postgresus as a pg_dump alternative, explaining how it builds on pg_dump and extends its capabilities with automation, cloud storage, notificationsand team features.",
"A comprehensive guide to Databasus as a pg_dump alternative, explaining how it builds on pg_dump and extends its capabilities with automation, cloud storage, notificationsand team features.",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -81,9 +81,9 @@ export default function PgDumpAlternativePage() {
<h1 id="pgdump-alternative">pg_dump Alternative</h1>
<p className="text-lg text-gray-400">
Postgresus is a PostgreSQL backup tool built on top of{" "}
Databasus is a PostgreSQL backup tool built on top of{" "}
<code>pg_dump</code>. Rather than replacing <code>pg_dump</code>
, Postgresus extends its capabilities with backups management, a
, Databasus extends its capabilities with backups management, a
web interface, automated scheduling, cloud storage integration,
notifications, team collaboration featuresand built-in
encryption.
@@ -92,7 +92,7 @@ export default function PgDumpAlternativePage() {
<h2 id="quick-comparison">Quick comparison</h2>
<p>
Here&apos;s an overview of how Postgresus extends the core{" "}
Here&apos;s an overview of how Databasus extends the core{" "}
<code>pg_dump</code> functionality:
</p>
@@ -101,77 +101,77 @@ export default function PgDumpAlternativePage() {
<tr>
<th>Feature</th>
<th>pg_dump</th>
<th>Postgresus</th>
<th>Databasus</th>
</tr>
</thead>
<tbody>
<tr>
<td>Backup engine</td>
<td data-label="pg_dump">pg_dump</td>
<td data-label="Postgresus">Built on pg_dump</td>
<td data-label="Databasus">Built on pg_dump</td>
</tr>
<tr>
<td>Backups management</td>
<td data-label="pg_dump"> Single DB only</td>
<td data-label="Postgresus"> Multiple DBs</td>
<td data-label="pg_dump"> No</td>
<td data-label="Databasus"> Yes</td>
</tr>
<tr>
<td>Support of other DBs</td>
<td data-label="pg_dump">PostgreSQL only</td>
<td data-label="Postgresus">
<td data-label="Databasus">
PostgreSQL, MySQL, MariaDB, MongoDB
</td>
</tr>
<tr>
<td>Interface</td>
<td data-label="pg_dump">Command-line</td>
<td data-label="Postgresus">Web UI + API</td>
<td data-label="Databasus">Web UI + API</td>
</tr>
<tr>
<td>Scheduling</td>
<td data-label="pg_dump">Manual or cron scripts</td>
<td data-label="Postgresus"> Built-in scheduler</td>
<td data-label="Databasus"> Built-in scheduler</td>
</tr>
<tr>
<td>Storage destinations</td>
<td data-label="pg_dump">Local filesystem</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Local, S3, Google Drive, R2, Azure, NAS, Dropbox
</td>
</tr>
<tr>
<td>Compression</td>
<td data-label="pg_dump">gzip, LZ4, zstd (manual)</td>
<td data-label="Postgresus">zstd (automatic, optimized)</td>
<td data-label="Databasus">zstd (automatic, optimized)</td>
</tr>
<tr>
<td>Encryption</td>
<td data-label="pg_dump">External tools required</td>
<td data-label="Postgresus"> AES-256-GCM built-in</td>
<td data-label="Databasus"> AES-256-GCM built-in</td>
</tr>
<tr>
<td>Notifications</td>
<td data-label="pg_dump"> None</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Slack, Teams, Telegram, Email, Webhooks
</td>
</tr>
<tr>
<td>Team features</td>
<td data-label="pg_dump"> None</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Workspaces, RBAC, audit logs
</td>
</tr>
<tr>
<td>Retention policies</td>
<td data-label="pg_dump">Manual cleanup scripts</td>
<td data-label="Postgresus"> Automatic retention</td>
<td data-label="Databasus"> Automatic retention</td>
</tr>
<tr>
<td>Health monitoring</td>
<td data-label="pg_dump"> None</td>
<td data-label="Postgresus"> Built-in health checks</td>
<td data-label="Databasus"> Built-in health checks</td>
</tr>
</tbody>
</table>
@@ -245,12 +245,10 @@ export default function PgDumpAlternativePage() {
</li>
</ul>
<h2 id="how-postgresus-extends">
How Postgresus extends pg_dump
</h2>
<h2 id="how-databasus-extends">How Databasus extends pg_dump</h2>
<p>
Postgresus uses <code>pg_dump</code> as its backup engine,
Databasus uses <code>pg_dump</code> as its backup engine,
preserving all the benefits of logical backups while adding
enterprise features on top.
</p>
@@ -258,7 +256,7 @@ export default function PgDumpAlternativePage() {
<div className="rounded-lg border border-[#ffffff20] bg-[#1f2937] p-4 my-6">
<p className="text-gray-300 m-0">
<strong className="text-amber-400">Under the hood:</strong>{" "}
When you trigger a backup in Postgresus, it executes{" "}
When you trigger a backup in Databasus, it executes{" "}
<code className="bg-[#374151] text-gray-200">pg_dump</code>{" "}
with optimized parameters, then handles compression,
encryptionand upload to your configured storage destination.
@@ -269,7 +267,7 @@ export default function PgDumpAlternativePage() {
<p>
Instead of remembering <code>pg_dump</code> command-line
options, Postgresus provides a web UI where you can:
options, Databasus provides a web UI where you can:
</p>
<ul>
@@ -283,7 +281,7 @@ export default function PgDumpAlternativePage() {
<h3 id="optimized-compression">Optimized compression</h3>
<p>
Postgresus uses zstd compression (level 5) by default, which
Databasus uses zstd compression (level 5) by default, which
provides:
</p>
@@ -350,9 +348,9 @@ fi`}</code>
database requires its own cron entry.
</p>
<h3 id="automation-postgresus">Postgresus automation</h3>
<h3 id="automation-databasus">Databasus automation</h3>
<p>With Postgresus, the same functionality is built-in:</p>
<p>With Databasus, the same functionality is built-in:</p>
<ul>
<li>
@@ -388,11 +386,10 @@ fi`}</code>
backups to cloud storage requires additional tools and scripts.
</p>
<h3 id="storage-postgresus">Postgresus storage destinations</h3>
<h3 id="storage-databasus">Databasus storage destinations</h3>
<p>
Postgresus supports multiple storage destinations out of the
box:
Databasus supports multiple storage destinations out of the box:
</p>
<ul>
@@ -438,9 +435,9 @@ fi`}</code>
<li>Set up custom alerting pipelines</li>
</ul>
<h3 id="notifications-postgresus">Postgresus notifications</h3>
<h3 id="notifications-databasus">Databasus notifications</h3>
<p>Postgresus includes built-in notifications to:</p>
<p>Databasus includes built-in notifications to:</p>
<ul>
<li>Slack</li>
@@ -469,10 +466,10 @@ fi`}</code>
<p>
<code>pg_dump</code> is a single-user command-line tool.
Postgresus adds collaboration features for teams:
Databasus adds collaboration features for teams:
</p>
<h3 id="team-postgresus">Postgresus team capabilities</h3>
<h3 id="team-databasus">Databasus team capabilities</h3>
<ul>
<li>
@@ -507,7 +504,7 @@ fi`}</code>
<h2 id="security">Security</h2>
<p>
Security is where Postgresus adds significant value over raw{" "}
Security is where Databasus adds significant value over raw{" "}
<code>pg_dump</code> usage.
</p>
@@ -525,9 +522,9 @@ fi`}</code>
<li>Setting up proper file permissions</li>
</ul>
<h3 id="security-postgresus">Postgresus security</h3>
<h3 id="security-databasus">Databasus security</h3>
<p>Postgresus implements security at multiple levels:</p>
<p>Databasus implements security at multiple levels:</p>
<ul>
<li>
@@ -552,7 +549,7 @@ fi`}</code>
href="/security"
className="font-semibold text-blue-600 hover:text-blue-800"
>
Learn more about Postgresus security
Learn more about Databasus security
</Link>
</p>
@@ -579,9 +576,9 @@ fi`}</code>
</li>
</ol>
<h3 id="restore-postgresus">Restoring Postgresus backups</h3>
<h3 id="restore-databasus">Restoring Databasus backups</h3>
<p>Postgresus simplifies restoration:</p>
<p>Databasus simplifies restoration:</p>
<ul>
<li>
@@ -593,7 +590,7 @@ fi`}</code>
automatically when downloaded.
</li>
<li>
<strong>Restore commands provided</strong>: Postgresus shows
<strong>Restore commands provided</strong>: Databasus shows
the exact <code>pg_restore</code> command for each backup.
</li>
<li>
@@ -611,14 +608,14 @@ fi`}</code>
PostgreSQL installed, you have <code>pg_dump</code>.
</p>
<h3 id="install-postgresus">Postgresus installation</h3>
<h3 id="install-databasus">Databasus installation</h3>
<p>Postgresus offers multiple installation methods:</p>
<p>Databasus offers multiple installation methods:</p>
<ul>
<li>
<strong>One-line script</strong>: Installs Docker (if needed),
sets up Postgresusand configures automatic startup.
sets up Databasusand configures automatic startup.
</li>
<li>
<strong>Docker run</strong>: Single command to start with
@@ -643,9 +640,9 @@ fi`}</code>
<p>
<code>pg_dump</code> is PostgreSQL&apos;s proven backup utility,
and Postgresus builds directly on top of it. The choice between
using <code>pg_dump</code> directly or through Postgresus
depends on your needs.
and Databasus builds directly on top of it. The choice between
using <code>pg_dump</code> directly or through Databasus depends
on your needs.
</p>
<div className="rounded-lg border border-[#ffffff20] bg-[#1f2937] p-4 my-6">
@@ -669,7 +666,7 @@ fi`}</code>
<div className="rounded-lg border border-blue-500/30 bg-blue-500/10 p-4 my-6">
<p className="text-blue-300 m-0">
<strong className="text-blue-400">Use Postgresus if:</strong>
<strong className="text-blue-400">Use Databasus if:</strong>
</p>
<ul className="text-blue-200 mb-0">
<li>
@@ -694,8 +691,8 @@ fi`}</code>
</div>
<p>
Postgresus doesn&apos;t replace <code>pg_dump</code> it wraps
it with the features needed for production backup workflows.
Databasus doesn&apos;t replace <code>pg_dump</code> it wraps
it with the features needed for production backup management.
You&apos;re still getting <code>pg_dump</code>&apos;s reliable,
portable logical backups, with automation, securityand team
features built on top.

View File

@@ -5,11 +5,11 @@ import DocsSidebarComponent from "../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "Postgresus vs Barman - PostgreSQL Backup Tools Comparison",
title: "Databasus vs Barman - PostgreSQL Backup Tools Comparison",
description:
"Compare Postgresus and Barman PostgreSQL backup tools. See differences in backup approach, PITR capabilities, ease of use, team features and when to choose each tool.",
"Compare Databasus and Barman PostgreSQL backup tools. See differences in backup approach, PITR capabilities, ease of use, team features and when to choose each tool.",
keywords: [
"Postgresus vs Barman",
"Databasus vs Barman",
"PostgreSQL backup comparison",
"Barman alternative",
"PostgreSQL backup tools",
@@ -21,25 +21,25 @@ export const metadata: Metadata = {
"disaster recovery PostgreSQL",
],
openGraph: {
title: "Postgresus vs Barman - PostgreSQL Backup Tools Comparison",
title: "Databasus vs Barman - PostgreSQL Backup Tools Comparison",
description:
"Compare Postgresus and Barman PostgreSQL backup tools. See differences in backup approach, PITR capabilities, ease of use, team features and when to choose each tool.",
"Compare Databasus and Barman PostgreSQL backup tools. See differences in backup approach, PITR capabilities, ease of use, team features and when to choose each tool.",
type: "article",
url: "https://postgresus.com/postgresus-vs-barman",
url: "https://databasus.com/databasus-vs-barman",
},
twitter: {
card: "summary",
title: "Postgresus vs Barman - PostgreSQL Backup Tools Comparison",
title: "Databasus vs Barman - PostgreSQL Backup Tools Comparison",
description:
"Compare Postgresus and Barman PostgreSQL backup tools. See differences in backup approach, PITR capabilities, ease of use, team features and when to choose each tool.",
"Compare Databasus and Barman PostgreSQL backup tools. See differences in backup approach, PITR capabilities, ease of use, team features and when to choose each tool.",
},
alternates: {
canonical: "https://postgresus.com/postgresus-vs-barman",
canonical: "https://databasus.com/databasus-vs-barman",
},
robots: "index, follow",
};
export default function PostgresusVsBarmanPage() {
export default function DatabasusVsBarmanPage() {
return (
<>
{/* JSON-LD Structured Data */}
@@ -50,19 +50,19 @@ export default function PostgresusVsBarmanPage() {
"@context": "https://schema.org",
"@type": "TechArticle",
headline:
"Postgresus vs Barman - PostgreSQL Backup Tools Comparison",
"Databasus vs Barman - PostgreSQL Backup Tools Comparison",
description:
"A comprehensive comparison of Postgresus and Barman PostgreSQL backup tools, covering backup approach, PITR capabilities, ease of use, team features and when to choose each tool.",
"A comprehensive comparison of Databasus and Barman PostgreSQL backup tools, covering backup approach, PITR capabilities, ease of use, team features and when to choose each tool.",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -79,11 +79,11 @@ export default function PostgresusVsBarmanPage() {
<main className="flex-1 min-w-0 px-4 py-6 sm:px-6 sm:py-8 lg:px-12">
<div className="mx-auto max-w-4xl">
<article className="prose prose-blue max-w-none">
<h1 id="postgresus-vs-barman">Postgresus vs Barman</h1>
<h1 id="databasus-vs-barman">Databasus vs Barman</h1>
<p className="text-lg text-gray-400">
Postgresus and Barman are both PostgreSQL backup tools, but they
take fundamentally different approaches. Postgresus provides an
Databasus and Barman are both PostgreSQL backup tools, but they
take fundamentally different approaches. Databasus provides an
intuitive web interface for logical backups with team
collaboration features, while Barman (Backup and Recovery
Manager) is a command-line tool focused on physical backups and
@@ -95,21 +95,21 @@ export default function PostgresusVsBarmanPage() {
<p>
Here&apos;s a quick overview of the key differences between
Postgresus and Barman:
Databasus and Barman:
</p>
<table>
<thead>
<tr>
<th>Feature</th>
<th>Postgresus</th>
<th>Databasus</th>
<th>Barman</th>
</tr>
</thead>
<tbody>
<tr>
<td>Target audience</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Individuals, teams, enterprises
</td>
<td data-label="Barman">
@@ -118,24 +118,24 @@ export default function PostgresusVsBarmanPage() {
</tr>
<tr>
<td>Support of other DBs</td>
<td data-label="Postgresus">
<td data-label="Databasus">
PostgreSQL, MySQL, MariaDB, MongoDB
</td>
<td data-label="Barman"> PostgreSQL only</td>
</tr>
<tr>
<td>Interface</td>
<td data-label="Postgresus">Web UI</td>
<td data-label="Databasus">Web UI</td>
<td data-label="Barman">Command-line only</td>
</tr>
<tr>
<td>Backup type</td>
<td data-label="Postgresus">Logical (pg_dump)</td>
<td data-label="Databasus">Logical (pg_dump)</td>
<td data-label="Barman">Physical (file-level)</td>
</tr>
<tr>
<td>Recovery options</td>
<td data-label="Postgresus">
<td data-label="Databasus">
No PITR (restore to any hour or day)
</td>
<td data-label="Barman">
@@ -144,48 +144,53 @@ export default function PostgresusVsBarmanPage() {
</tr>
<tr>
<td>Incremental backups</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Full backups with compression
</td>
<td data-label="Barman">rsync-based incremental</td>
</tr>
<tr>
<td>Multi-server management</td>
<td data-label="Postgresus">Per-database scheduling</td>
<td data-label="Databasus">Per-database scheduling</td>
<td data-label="Barman">Centralized backup server</td>
</tr>
<tr>
<td>Team features</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Workspaces, RBAC, audit logs
</td>
<td data-label="Barman"> OS-level permissions only</td>
</tr>
<tr>
<td>Notifications</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Slack, Teams, Telegram, Email
</td>
<td data-label="Barman"> Requires custom scripting</td>
</tr>
<tr>
<td>Learning curve</td>
<td data-label="Postgresus">Minimal</td>
<td data-label="Databasus">Minimal</td>
<td data-label="Barman">DBA expertise required</td>
</tr>
<tr>
<td>Installation</td>
<td data-label="Postgresus">One-line script or Docker</td>
<td data-label="Databasus">One-line script or Docker</td>
<td data-label="Barman">Manual configuration required</td>
</tr>
<tr>
<td>Backups management</td>
<td data-label="Databasus"> Yes</td>
<td data-label="Barman"> No</td>
</tr>
<tr>
<td>Suitable for self-hosted DBs</td>
<td data-label="Postgresus"> Yes</td>
<td data-label="Databasus"> Yes</td>
<td data-label="Barman"> Yes</td>
</tr>
<tr>
<td>Suitable for cloud DBs</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Yes (RDS, Cloud SQL, Azure)
</td>
<td data-label="Barman">
@@ -202,10 +207,10 @@ export default function PostgresusVsBarmanPage() {
are designed for:
</p>
<h3 id="audience-postgresus">Postgresus audience</h3>
<h3 id="audience-databasus">Databasus audience</h3>
<p>
Postgresus is built for a broad audience, from individual
Databasus is built for a broad audience, from individual
developers to large enterprises:
</p>
@@ -261,11 +266,11 @@ export default function PostgresusVsBarmanPage() {
with distinct advantages:
</p>
<h3 id="backup-postgresus">Postgresus: Logical backups</h3>
<h3 id="backup-databasus">Databasus: Logical backups</h3>
<p>
Postgresus uses <code>pg_dump</code> for logical backups,
creating SQL representations of your data:
Databasus uses <code>pg_dump</code> for logical backups,
creating SQL representations of your data (in parallel mode):
</p>
<ul>
@@ -320,7 +325,7 @@ export default function PostgresusVsBarmanPage() {
granularity:
</p>
<h3 id="recovery-postgresus">Postgresus recovery</h3>
<h3 id="recovery-databasus">Databasus recovery</h3>
<ul>
<li>
@@ -367,7 +372,7 @@ export default function PostgresusVsBarmanPage() {
<p className="text-gray-300 m-0">
<strong className="text-amber-400">Note:</strong> For most
applications, restoring to the nearest hour or day (as
Postgresus provides) is sufficient. Second-precise PITR is
Databasus provides) is sufficient. Second-precise PITR is
typically only required for mission-critical financial or
transactional systems where every transaction must be
recoverable.{" "}
@@ -375,7 +380,7 @@ export default function PostgresusVsBarmanPage() {
href="/faq#why-no-pitr"
className="text-blue-400 hover:text-blue-300"
>
Learn why Postgresus doesn&apos;t support PITR
Learn why Databasus doesn&apos;t support PITR
</Link>
</p>
</div>
@@ -387,7 +392,7 @@ export default function PostgresusVsBarmanPage() {
experience:
</p>
<h3 id="ease-postgresus">Postgresus user experience</h3>
<h3 id="ease-databasus">Databasus user experience</h3>
<ul>
<li>
@@ -445,7 +450,7 @@ export default function PostgresusVsBarmanPage() {
href="/installation"
className="font-semibold text-blue-600 hover:text-blue-800"
>
View Postgresus installation guide
View Databasus installation guide
</Link>
</p>
@@ -455,7 +460,7 @@ export default function PostgresusVsBarmanPage() {
For organizations with multiple team members managing backups:
</p>
<h3 id="team-postgresus">Postgresus team capabilities</h3>
<h3 id="team-databasus">Databasus team capabilities</h3>
<ul>
<li>
@@ -496,7 +501,7 @@ export default function PostgresusVsBarmanPage() {
href="/access-management"
className="font-semibold text-blue-600 hover:text-blue-800"
>
Learn more about Postgresus access management
Learn more about Databasus access management
</Link>
</p>
@@ -507,7 +512,7 @@ export default function PostgresusVsBarmanPage() {
approaches:
</p>
<h3 id="security-postgresus">Postgresus security</h3>
<h3 id="security-databasus">Databasus security</h3>
<ul>
<li>
@@ -554,7 +559,7 @@ export default function PostgresusVsBarmanPage() {
href="/security"
className="font-semibold text-blue-600 hover:text-blue-800"
>
Learn more about Postgresus security
Learn more about Databasus security
</Link>
</p>
@@ -562,7 +567,7 @@ export default function PostgresusVsBarmanPage() {
<p>The tools support different storage destinations:</p>
<h3 id="storage-postgresus">Postgresus storage</h3>
<h3 id="storage-databasus">Databasus storage</h3>
<p>Consumer-friendly options for various use cases:</p>
@@ -593,7 +598,7 @@ export default function PostgresusVsBarmanPage() {
href="/storages"
className="font-semibold text-blue-600 hover:text-blue-800"
>
View all Postgresus storage options
View all Databasus storage options
</Link>
</p>
@@ -601,7 +606,7 @@ export default function PostgresusVsBarmanPage() {
<p>Staying informed about backup status:</p>
<h3 id="notifications-postgresus">Postgresus notifications</h3>
<h3 id="notifications-databasus">Databasus notifications</h3>
<p>Built-in support for multiple notification channels:</p>
@@ -635,7 +640,7 @@ export default function PostgresusVsBarmanPage() {
href="/notifiers"
className="font-semibold text-blue-600 hover:text-blue-800"
>
View all Postgresus notification channels
View all Databasus notification channels
</Link>
</p>
@@ -646,7 +651,7 @@ export default function PostgresusVsBarmanPage() {
but with different approaches:
</p>
<h3 id="multi-postgresus">Postgresus approach</h3>
<h3 id="multi-databasus">Databasus approach</h3>
<ul>
<li>
@@ -684,7 +689,7 @@ export default function PostgresusVsBarmanPage() {
<h2 id="conclusion">Conclusion</h2>
<p>
Postgresus and Barman serve different needs in the PostgreSQL
Databasus and Barman serve different needs in the PostgreSQL
backup ecosystem. The right choice depends on your recovery
requirements, team structure and technical expertise.
</p>
@@ -692,7 +697,7 @@ export default function PostgresusVsBarmanPage() {
<div className="rounded-lg border border-blue-500/30 bg-blue-500/10 p-4 my-6">
<p className="text-blue-300 m-0">
<strong className="text-blue-400">
Choose Postgresus if:
Choose Databasus if:
</strong>
</p>
<ul className="text-blue-200 mb-0">
@@ -758,13 +763,14 @@ export default function PostgresusVsBarmanPage() {
<p>
For most use cases, from individual projects to enterprise
deployments, Postgresus provides the right balance of power and
deployments, Databasus provides the right balance of power and
usability and works seamlessly with both self-hosted and
cloud-managed databases. Barman remains the specialized choice
for organizations with strict PITR requirements on self-hosted
infrastructure and dedicated DBA teams, or for teams building
database platforms that need to provide PITR capabilities to
their customers.
cloud-managed databases. Databasus is suitable for comprehensive
backup management, not just backups. Barman remains the
specialized choice for organizations with strict PITR
requirements on self-hosted infrastructure and dedicated DBA
teams, or for teams building database platforms that need to
provide PITR capabilities to their customers.
</p>
</article>
</div>

View File

@@ -5,11 +5,11 @@ import DocsSidebarComponent from "../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "Postgresus vs pgBackRest - PostgreSQL Backup Tools Comparison",
title: "Databasus vs pgBackRest - PostgreSQL Backup Tools Comparison",
description:
"Compare Postgresus and pgBackRest PostgreSQL backup tools. See differences in backup approach, target audience, ease of use, recovery options and when to choose each tool.",
"Compare Databasus and pgBackRest PostgreSQL backup tools. See differences in backup approach, target audience, ease of use, recovery options and when to choose each tool.",
keywords: [
"Postgresus vs pgBackRest",
"Databasus vs pgBackRest",
"PostgreSQL backup comparison",
"pgBackRest alternative",
"PostgreSQL backup tools",
@@ -21,25 +21,25 @@ export const metadata: Metadata = {
"DBA backup tools",
],
openGraph: {
title: "Postgresus vs pgBackRest - PostgreSQL Backup Tools Comparison",
title: "Databasus vs pgBackRest - PostgreSQL Backup Tools Comparison",
description:
"Compare Postgresus and pgBackRest PostgreSQL backup tools. See differences in backup approach, target audience, ease of use, recovery options and when to choose each tool.",
"Compare Databasus and pgBackRest PostgreSQL backup tools. See differences in backup approach, target audience, ease of use, recovery options and when to choose each tool.",
type: "article",
url: "https://postgresus.com/postgresus-vs-pgbackrest",
url: "https://databasus.com/databasus-vs-pgbackrest",
},
twitter: {
card: "summary",
title: "Postgresus vs pgBackRest - PostgreSQL Backup Tools Comparison",
title: "Databasus vs pgBackRest - PostgreSQL Backup Tools Comparison",
description:
"Compare Postgresus and pgBackRest PostgreSQL backup tools. See differences in backup approach, target audience, ease of use, recovery options and when to choose each tool.",
"Compare Databasus and pgBackRest PostgreSQL backup tools. See differences in backup approach, target audience, ease of use, recovery options and when to choose each tool.",
},
alternates: {
canonical: "https://postgresus.com/postgresus-vs-pgbackrest",
canonical: "https://databasus.com/databasus-vs-pgbackrest",
},
robots: "index, follow",
};
export default function PostgresusVsPgBackRestPage() {
export default function DatabasusVsPgBackRestPage() {
return (
<>
{/* JSON-LD Structured Data */}
@@ -50,19 +50,19 @@ export default function PostgresusVsPgBackRestPage() {
"@context": "https://schema.org",
"@type": "TechArticle",
headline:
"Postgresus vs pgBackRest - PostgreSQL Backup Tools Comparison",
"Databasus vs pgBackRest - PostgreSQL Backup Tools Comparison",
description:
"A comprehensive comparison of Postgresus and pgBackRest PostgreSQL backup tools, covering backup approach, target audience, ease of use, recovery options and when to choose each tool.",
"A comprehensive comparison of Databasus and pgBackRest PostgreSQL backup tools, covering backup approach, target audience, ease of use, recovery options and when to choose each tool.",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -79,12 +79,12 @@ export default function PostgresusVsPgBackRestPage() {
<main className="flex-1 min-w-0 px-4 py-6 sm:px-6 sm:py-8 lg:px-12">
<div className="mx-auto max-w-4xl">
<article className="prose prose-blue max-w-none">
<h1 id="postgresus-vs-pgbackrest">Postgresus vs pgBackRest</h1>
<h1 id="databasus-vs-pgbackrest">Databasus vs pgBackRest</h1>
<p className="text-lg text-gray-400">
Postgresus and pgBackRest are both powerful PostgreSQL backup
Databasus and pgBackRest are both powerful PostgreSQL backup
tools, but they serve fundamentally different purposes and
audiences. While Postgresus provides an intuitive web interface
audiences. While Databasus provides an intuitive web interface
for individuals, teams and enterprises of all sizes, pgBackRest
is a specialized command-line tool designed primarily for DBAs
managing very large databases (500GB+).
@@ -94,21 +94,21 @@ export default function PostgresusVsPgBackRestPage() {
<p>
Here&apos;s a quick overview of the key differences between
Postgresus and pgBackRest:
Databasus and pgBackRest:
</p>
<table>
<thead>
<tr>
<th>Feature</th>
<th>Postgresus</th>
<th>Databasus</th>
<th>pgBackRest</th>
</tr>
</thead>
<tbody>
<tr>
<td>Target audience</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Individuals, teams, enterprises
</td>
<td data-label="pgBackRest">
@@ -117,29 +117,29 @@ export default function PostgresusVsPgBackRestPage() {
</tr>
<tr>
<td>Backups management</td>
<td data-label="Postgresus"> Multiple DBs</td>
<td data-label="Databasus"> Multiple DBs</td>
<td data-label="pgBackRest"> Single DB only</td>
</tr>
<tr>
<td>Support of other DBs</td>
<td data-label="Postgresus">
<td data-label="Databasus">
PostgreSQL, MySQL, MariaDB, MongoDB
</td>
<td data-label="pgBackRest"> PostgreSQL only</td>
</tr>
<tr>
<td>Interface</td>
<td data-label="Postgresus">Web UI</td>
<td data-label="Databasus">Web UI</td>
<td data-label="pgBackRest">Command-line, config files</td>
</tr>
<tr>
<td>Backup type</td>
<td data-label="Postgresus">Logical (full backup)</td>
<td data-label="Databasus">Logical (full backup)</td>
<td data-label="pgBackRest">Physical (file-level)</td>
</tr>
<tr>
<td>Recovery options</td>
<td data-label="Postgresus">
<td data-label="Databasus">
No PITR (restore to any hour or day)
</td>
<td data-label="pgBackRest">
@@ -148,45 +148,45 @@ export default function PostgresusVsPgBackRestPage() {
</tr>
<tr>
<td>Parallel operations</td>
<td data-label="Postgresus"> Parallel restores</td>
<td data-label="Databasus"> Parallel restores</td>
<td data-label="pgBackRest">
Parallel backup & restore
</td>
</tr>
<tr>
<td>Incremental backups</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Full backups with compression
</td>
<td data-label="pgBackRest">Block-level incremental</td>
</tr>
<tr>
<td>Team features</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Workspaces, RBAC, audit logs
</td>
<td data-label="pgBackRest"> Single user</td>
</tr>
<tr>
<td>Learning curve</td>
<td data-label="Postgresus">Minimal</td>
<td data-label="Databasus">Minimal</td>
<td data-label="pgBackRest">DBA expertise required</td>
</tr>
<tr>
<td>Installation</td>
<td data-label="Postgresus">One-line script or Docker</td>
<td data-label="Databasus">One-line script or Docker</td>
<td data-label="pgBackRest">
Manual configuration required
</td>
</tr>
<tr>
<td>Suitable for self-hosted DBs</td>
<td data-label="Postgresus"> Yes</td>
<td data-label="Databasus"> Yes</td>
<td data-label="pgBackRest"> Yes</td>
</tr>
<tr>
<td>Suitable for cloud DBs</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Yes (RDS, Cloud SQL, Azure)
</td>
<td data-label="pgBackRest">
@@ -203,10 +203,10 @@ export default function PostgresusVsPgBackRestPage() {
are designed for:
</p>
<h3 id="audience-postgresus">Postgresus audience</h3>
<h3 id="audience-databasus">Databasus audience</h3>
<p>
Postgresus is built for a broad audience, from individual
Databasus is built for a broad audience, from individual
developers to large enterprises:
</p>
@@ -259,11 +259,11 @@ export default function PostgresusVsPgBackRestPage() {
with distinct advantages:
</p>
<h3 id="backup-postgresus">Postgresus: Logical backups</h3>
<h3 id="backup-databasus">Databasus: Logical backups</h3>
<p>
Postgresus uses <code>pg_dump</code> for logical backups,
creating SQL representations of your data:
Databasus uses <code>pg_dump</code> for logical backups,
creating SQL representations of your data (in parallel mode):
</p>
<ul>
@@ -320,7 +320,7 @@ export default function PostgresusVsPgBackRestPage() {
granularity:
</p>
<h3 id="recovery-postgresus">Postgresus recovery</h3>
<h3 id="recovery-databasus">Databasus recovery</h3>
<ul>
<li>
@@ -367,7 +367,7 @@ export default function PostgresusVsPgBackRestPage() {
<p className="text-gray-300 m-0">
<strong className="text-amber-400">Note:</strong> For most
applications, restoring to the nearest hour or day (as
Postgresus provides) is sufficient. Second-precise PITR is
Databasus provides) is sufficient. Second-precise PITR is
typically only required for mission-critical financial or
transactional systems where every transaction must be
recoverable.{" "}
@@ -375,7 +375,7 @@ export default function PostgresusVsPgBackRestPage() {
href="/faq#why-no-pitr"
className="text-blue-400 hover:text-blue-300"
>
Learn why Postgresus doesn&apos;t support PITR
Learn why Databasus doesn&apos;t support PITR
</Link>
</p>
</div>
@@ -387,7 +387,7 @@ export default function PostgresusVsPgBackRestPage() {
experience:
</p>
<h3 id="ease-postgresus">Postgresus user experience</h3>
<h3 id="ease-databasus">Databasus user experience</h3>
<ul>
<li>
@@ -444,7 +444,7 @@ export default function PostgresusVsPgBackRestPage() {
href="/installation"
className="font-semibold text-blue-600 hover:text-blue-800"
>
View Postgresus installation guide
View Databasus installation guide
</Link>
</p>
@@ -454,7 +454,7 @@ export default function PostgresusVsPgBackRestPage() {
For organizations with multiple team members managing backups:
</p>
<h3 id="team-postgresus">Postgresus team capabilities</h3>
<h3 id="team-databasus">Databasus team capabilities</h3>
<ul>
<li>
@@ -499,7 +499,7 @@ export default function PostgresusVsPgBackRestPage() {
href="/access-management"
className="font-semibold text-blue-600 hover:text-blue-800"
>
Learn more about Postgresus access management
Learn more about Databasus access management
</Link>
</p>
@@ -507,7 +507,7 @@ export default function PostgresusVsPgBackRestPage() {
<p>Both tools provide robust security features:</p>
<h3 id="security-postgresus">Postgresus security</h3>
<h3 id="security-databasus">Databasus security</h3>
<ul>
<li>
@@ -549,18 +549,18 @@ export default function PostgresusVsPgBackRestPage() {
href="/security"
className="font-semibold text-blue-600 hover:text-blue-800"
>
Learn more about Postgresus security
Learn more about Databasus security
</Link>
</p>
<h2 id="storage-options">Storage options</h2>
<p>
Both tools support multiple storage destinations, with
Postgresus offering more consumer-friendly options:
Both tools support multiple storage destinations, with Databasus
offering more consumer-friendly options:
</p>
<h3 id="storage-postgresus">Postgresus storage</h3>
<h3 id="storage-databasus">Databasus storage</h3>
<ul>
<li>Local storage</li>
@@ -589,7 +589,7 @@ export default function PostgresusVsPgBackRestPage() {
href="/storages"
className="font-semibold text-blue-600 hover:text-blue-800"
>
View all Postgresus storage options
View all Databasus storage options
</Link>
</p>
@@ -597,7 +597,7 @@ export default function PostgresusVsPgBackRestPage() {
<p>Staying informed about backup status:</p>
<h3 id="notifications-postgresus">Postgresus notifications</h3>
<h3 id="notifications-databasus">Databasus notifications</h3>
<p>Built-in support for multiple notification channels:</p>
@@ -628,22 +628,22 @@ export default function PostgresusVsPgBackRestPage() {
href="/notifiers"
className="font-semibold text-blue-600 hover:text-blue-800"
>
View all Postgresus notification channels
View all Databasus notification channels
</Link>
</p>
<h2 id="conclusion">Conclusion</h2>
<p>
Postgresus and pgBackRest serve different needs in the
PostgreSQL backup ecosystem. The right choice depends on your
database size, team structure and technical requirements.
Databasus and pgBackRest serve different needs in the PostgreSQL
backup ecosystem. The right choice depends on your database
size, team structure and technical requirements.
</p>
<div className="rounded-lg border border-blue-500/30 bg-blue-500/10 p-4 my-6">
<p className="text-blue-300 m-0">
<strong className="text-blue-400">
Choose Postgresus if:
Choose Databasus if:
</strong>
</p>
<ul className="text-blue-200 mb-0">
@@ -705,9 +705,10 @@ export default function PostgresusVsPgBackRestPage() {
<p>
For most use cases, from individual projects to enterprise
deployments, Postgresus provides the right balance of power and
deployments, Databasus provides the right balance of power and
usability and works seamlessly with both self-hosted and
cloud-managed databases.
cloud-managed databases. Databasus is suitable for comprehensive
backup management, not just backups.
<br />
<br />
pgBackRest remains the specialized choice for DBAs managing very

View File

@@ -5,11 +5,11 @@ import DocsSidebarComponent from "../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "Postgresus vs PgBackWeb - PostgreSQL Backup Tools Comparison",
title: "Databasus vs PgBackWeb - PostgreSQL Backup Tools Comparison",
description:
"Compare Postgresus and PgBackWeb PostgreSQL backup tools. See differences in features, security, team support, storage options, notifications and ease of use.",
"Compare Databasus and PgBackWeb PostgreSQL backup tools. See differences in features, security, team support, storage options, notifications and ease of use.",
keywords: [
"Postgresus vs PgBackWeb",
"Databasus vs PgBackWeb",
"PostgreSQL backup comparison",
"PgBackWeb alternative",
"PostgreSQL backup tools",
@@ -19,25 +19,25 @@ export const metadata: Metadata = {
"PostgreSQL backup security",
],
openGraph: {
title: "Postgresus vs PgBackWeb - PostgreSQL Backup Tools Comparison",
title: "Databasus vs PgBackWeb - PostgreSQL Backup Tools Comparison",
description:
"Compare Postgresus and PgBackWeb PostgreSQL backup tools. See differences in features, security, team support, storage options, notifications and ease of use.",
"Compare Databasus and PgBackWeb PostgreSQL backup tools. See differences in features, security, team support, storage options, notifications and ease of use.",
type: "article",
url: "https://postgresus.com/postgresus-vs-pgbackweb",
url: "https://databasus.com/databasus-vs-pgbackweb",
},
twitter: {
card: "summary",
title: "Postgresus vs PgBackWeb - PostgreSQL Backup Tools Comparison",
title: "Databasus vs PgBackWeb - PostgreSQL Backup Tools Comparison",
description:
"Compare Postgresus and PgBackWeb PostgreSQL backup tools. See differences in features, security, team support, storage options, notifications and ease of use.",
"Compare Databasus and PgBackWeb PostgreSQL backup tools. See differences in features, security, team support, storage options, notifications and ease of use.",
},
alternates: {
canonical: "https://postgresus.com/postgresus-vs-pgbackweb",
canonical: "https://databasus.com/databasus-vs-pgbackweb",
},
robots: "index, follow",
};
export default function PostgresusVsPgBackWebPage() {
export default function DatabasusVsPgBackWebPage() {
return (
<>
{/* JSON-LD Structured Data */}
@@ -48,19 +48,19 @@ export default function PostgresusVsPgBackWebPage() {
"@context": "https://schema.org",
"@type": "TechArticle",
headline:
"Postgresus vs PgBackWeb - PostgreSQL Backup Tools Comparison",
"Databasus vs PgBackWeb - PostgreSQL Backup Tools Comparison",
description:
"A comprehensive comparison of Postgresus and PgBackWeb PostgreSQL backup tools, covering features, security, team support, storage options and ease of use.",
"A comprehensive comparison of Databasus and PgBackWeb PostgreSQL backup tools, covering features, security, team support, storage options and ease of use.",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -77,10 +77,10 @@ export default function PostgresusVsPgBackWebPage() {
<main className="flex-1 min-w-0 px-4 py-6 sm:px-6 sm:py-8 lg:px-12">
<div className="mx-auto max-w-4xl">
<article className="prose prose-blue max-w-none">
<h1 id="postgresus-vs-pgbackweb">Postgresus vs PgBackWeb</h1>
<h1 id="databasus-vs-pgbackweb">Databasus vs PgBackWeb</h1>
<p className="text-lg text-gray-400">
Both Postgresus and PgBackWeb are open-source tools designed to
Both Databasus and PgBackWeb are open-source tools designed to
simplify PostgreSQL backup management through web interfaces.
While they share the common goal of making backups more
accessible, they differ significantly in features, security,
@@ -91,38 +91,38 @@ export default function PostgresusVsPgBackWebPage() {
<p>
Here&apos;s a quick overview of the key differences between
Postgresus and PgBackWeb:
Databasus and PgBackWeb:
</p>
<table>
<thead>
<tr>
<th>Feature</th>
<th>Postgresus</th>
<th>Databasus</th>
<th>PgBackWeb</th>
</tr>
</thead>
<tbody>
<tr>
<td>License</td>
<td data-label="Postgresus">Apache 2.0</td>
<td data-label="Databasus">Apache 2.0</td>
<td data-label="PgBackWeb">AGPL-3.0</td>
</tr>
<tr>
<td>Backups management</td>
<td data-label="Postgresus"> Multiple DBs</td>
<td data-label="Databasus"> Multiple DBs</td>
<td data-label="PgBackWeb"> Multiple DBs</td>
</tr>
<tr>
<td>Support of other DBs</td>
<td data-label="Postgresus">
<td data-label="Databasus">
PostgreSQL, MySQL, MariaDB, MongoDB
</td>
<td data-label="PgBackWeb"> PostgreSQL only</td>
</tr>
<tr>
<td>Storage options</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Local, S3, Google Drive, Cloudflare R2, Azure, NAS,
Dropbox
</td>
@@ -130,33 +130,33 @@ export default function PostgresusVsPgBackWebPage() {
</tr>
<tr>
<td>Notifications</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Slack, Discord, Telegram, Teams, Email, Webhooks
</td>
<td data-label="PgBackWeb">Webhooks only</td>
</tr>
<tr>
<td>Security</td>
<td data-label="Postgresus">
<td data-label="Databasus">
AES-256-GCM, unique backup keys, read-only enforcement
</td>
<td data-label="PgBackWeb"> PGP encryption</td>
</tr>
<tr>
<td>Team features</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Workspaces, role-based access, audit logs
</td>
<td data-label="PgBackWeb"> Not available</td>
</tr>
<tr>
<td>Health monitoring</td>
<td data-label="Postgresus"> Built-in</td>
<td data-label="Databasus"> Built-in</td>
<td data-label="PgBackWeb"> Not available</td>
</tr>
<tr>
<td>Installation</td>
<td data-label="Postgresus">
<td data-label="Databasus">
One-line script, Docker or Helm
</td>
<td data-label="PgBackWeb">Manual Docker setup</td>
@@ -170,7 +170,7 @@ export default function PostgresusVsPgBackWebPage() {
<ul>
<li>
<strong>Postgresus</strong>: Supports hourly, daily, weekly
<strong>Databasus</strong>: Supports hourly, daily, weekly
monthly or cron schedules with precise timing (e.g. 4 AM).
Implements{" "}
<strong>balanced compression using zstd (level 5)</strong>,
@@ -193,7 +193,7 @@ export default function PostgresusVsPgBackWebPage() {
<ul>
<li>
<strong>Postgresus</strong>: Supports a wide range of storage
<strong>Databasus</strong>: Supports a wide range of storage
destinations:
<ul>
<li>Local storage</li>
@@ -215,18 +215,18 @@ export default function PostgresusVsPgBackWebPage() {
href="/storages"
className="font-semibold text-blue-600 hover:text-blue-800"
>
View all Postgresus storage options
View all Databasus storage options
</Link>
</p>
<h2 id="security">Security</h2>
<p>
Security is a critical aspect of backup management. Postgresus
Security is a critical aspect of backup management. Databasus
implements enterprise-grade security on three levels:
</p>
<h3 id="security-postgresus">Postgresus security model</h3>
<h3 id="security-databasus">Databasus security model</h3>
<ol>
<li>
@@ -244,11 +244,11 @@ export default function PostgresusVsPgBackWebPage() {
encryption key.
</li>
<li>
<strong>Read-only database access</strong>: Postgresus
<strong>Read-only database access</strong>: Databasus
enforces read-only access by checking role-level,
database-level and table-level permissions. It only requires
SELECT permissions and will warn you if write privileges are
detected. This prevents data corruption even if Postgresus is
detected. This prevents data corruption even if Databasus is
compromised.
</li>
</ol>
@@ -272,7 +272,7 @@ export default function PostgresusVsPgBackWebPage() {
href="/security"
className="font-semibold text-blue-600 hover:text-blue-800"
>
Learn more about Postgresus security
Learn more about Databasus security
</Link>
</p>
@@ -285,7 +285,7 @@ export default function PostgresusVsPgBackWebPage() {
<ul>
<li>
<strong>Postgresus</strong>: Provides real-time notifications
<strong>Databasus</strong>: Provides real-time notifications
through multiple channels:
<ul>
<li>Slack</li>
@@ -309,7 +309,7 @@ export default function PostgresusVsPgBackWebPage() {
href="/notifiers"
className="font-semibold text-blue-600 hover:text-blue-800"
>
View all Postgresus notification channels
View all Databasus notification channels
</Link>
</p>
@@ -317,11 +317,11 @@ export default function PostgresusVsPgBackWebPage() {
<p>
For organizations and DevOps teams, collaboration features are
essential. This is where Postgresus significantly outshines
essential. This is where Databasus significantly outshines
PgBackWeb:
</p>
<h3 id="team-postgresus">Postgresus team capabilities</h3>
<h3 id="team-databasus">Databasus team capabilities</h3>
<ul>
<li>
@@ -353,7 +353,7 @@ export default function PostgresusVsPgBackWebPage() {
href="/access-management"
className="font-semibold text-blue-600 hover:text-blue-800"
>
Learn more about Postgresus access management
Learn more about Databasus access management
</Link>
</p>
@@ -361,19 +361,19 @@ export default function PostgresusVsPgBackWebPage() {
<p>
<strong>
Postgresus is designed to be significantly easier to use
Databasus is designed to be significantly easier to use
</strong>{" "}
than PgBackWeb, with a focus on intuitive UX and minimal setup
time:
</p>
<h3 id="ease-postgresus">Postgresus user experience</h3>
<h3 id="ease-databasus">Databasus user experience</h3>
<ul>
<li>
<strong>Easy installation</strong>: Use Docker directly or run
a one-line script that installs Docker (if needed), sets up
Postgresus and configures automatic startup. Total time: ~2
Databasus and configures automatic startup. Total time: ~2
minutes.
</li>
<li>
@@ -409,7 +409,7 @@ export default function PostgresusVsPgBackWebPage() {
</li>
<li>
<strong>Basic web interface</strong>: Functional but less
polished UI compared to Postgresus. Dark theme available.
polished UI compared to Databasus. Dark theme available.
</li>
<li>
<strong>No health monitoring</strong>: Database availability
@@ -419,22 +419,22 @@ export default function PostgresusVsPgBackWebPage() {
<h2 id="installation">Installation and deployment</h2>
<h3 id="install-postgresus">Installing Postgresus</h3>
<h3 id="install-databasus">Installing Databasus</h3>
<p>
Postgresus offers three installation methods, with the automated
Databasus offers three installation methods, with the automated
script being the quickest:
</p>
<ul>
<li>
<strong>Automated script (recommended)</strong>: One-line cURL
command that installs Docker, sets up Postgresus and
command that installs Docker, sets up Databasus and
configures automatic startup.
</li>
<li>
<strong>Docker run</strong>: Single command to start
Postgresus with embedded PostgreSQL.
Databasus with embedded PostgreSQL.
</li>
<li>
<strong>Docker Compose</strong>: For more control over the
@@ -447,7 +447,7 @@ export default function PostgresusVsPgBackWebPage() {
href="/installation"
className="font-semibold text-blue-600 hover:text-blue-800"
>
View Postgresus installation guide
View Databasus installation guide
</Link>
</p>
@@ -468,9 +468,9 @@ export default function PostgresusVsPgBackWebPage() {
<ul>
<li>
<strong>Postgresus (Apache 2.0)</strong>: Permissive license
<strong>Databasus (Apache 2.0)</strong>: Permissive license
that allows unrestricted commercial use, modification and
distribution. You can use Postgresus in proprietary projects
distribution. You can use Databasus in proprietary projects
without any licensing concerns.
</li>
<li>
@@ -484,14 +484,14 @@ export default function PostgresusVsPgBackWebPage() {
<h2 id="conclusion">Conclusion</h2>
<p>
Both Postgresus and PgBackWeb are capable PostgreSQL backup
Both Databasus and PgBackWeb are capable PostgreSQL backup
tools, but they serve different needs:
</p>
<div className="rounded-lg border border-blue-500/30 bg-blue-500/10 p-4 my-6">
<p className="text-blue-300 m-0">
<strong className="text-blue-400">
Choose Postgresus if you need:
Choose Databasus if you need:
</strong>
</p>
<ul className="text-blue-200 mb-0">
@@ -523,7 +523,7 @@ export default function PostgresusVsPgBackWebPage() {
For most users, especially teams and organizations requiring
robust security, multiple storage options and comprehensive
notification channels,{" "}
<strong>Postgresus is the recommended choice</strong>.
<strong>Databasus is the recommended choice</strong>.
</p>
</article>
</div>

View File

@@ -5,11 +5,11 @@ import DocsSidebarComponent from "../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "Postgresus vs WAL-G - PostgreSQL Backup Tools Comparison",
title: "Databasus vs WAL-G - PostgreSQL Backup Tools Comparison",
description:
"Compare Postgresus and WAL-G PostgreSQL backup tools. See differences in backup approach, multi-database support, ease of use, team features and when to choose each tool.",
"Compare Databasus and WAL-G PostgreSQL backup tools. See differences in backup approach, multi-database support, ease of use, team features and when to choose each tool.",
keywords: [
"Postgresus vs WAL-G",
"Databasus vs WAL-G",
"PostgreSQL backup comparison",
"WAL-G alternative",
"PostgreSQL backup tools",
@@ -21,25 +21,25 @@ export const metadata: Metadata = {
"multi-database backup",
],
openGraph: {
title: "Postgresus vs WAL-G - PostgreSQL Backup Tools Comparison",
title: "Databasus vs WAL-G - PostgreSQL Backup Tools Comparison",
description:
"Compare Postgresus and WAL-G PostgreSQL backup tools. See differences in backup approach, multi-database support, ease of use, team features and when to choose each tool.",
"Compare Databasus and WAL-G PostgreSQL backup tools. See differences in backup approach, multi-database support, ease of use, team features and when to choose each tool.",
type: "article",
url: "https://postgresus.com/postgresus-vs-wal-g",
url: "https://databasus.com/databasus-vs-wal-g",
},
twitter: {
card: "summary",
title: "Postgresus vs WAL-G - PostgreSQL Backup Tools Comparison",
title: "Databasus vs WAL-G - PostgreSQL Backup Tools Comparison",
description:
"Compare Postgresus and WAL-G PostgreSQL backup tools. See differences in backup approach, multi-database support, ease of use, team features and when to choose each tool.",
"Compare Databasus and WAL-G PostgreSQL backup tools. See differences in backup approach, multi-database support, ease of use, team features and when to choose each tool.",
},
alternates: {
canonical: "https://postgresus.com/postgresus-vs-wal-g",
canonical: "https://databasus.com/databasus-vs-wal-g",
},
robots: "index, follow",
};
export default function PostgresusVsWalGPage() {
export default function DatabasusVsWalGPage() {
return (
<>
{/* JSON-LD Structured Data */}
@@ -49,20 +49,19 @@ export default function PostgresusVsWalGPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
headline:
"Postgresus vs WAL-G - PostgreSQL Backup Tools Comparison",
headline: "Databasus vs WAL-G - PostgreSQL Backup Tools Comparison",
description:
"A comprehensive comparison of Postgresus and WAL-G PostgreSQL backup tools, covering backup approach, multi-database support, ease of use, team features and when to choose each tool.",
"A comprehensive comparison of Databasus and WAL-G PostgreSQL backup tools, covering backup approach, multi-database support, ease of use, team features and when to choose each tool.",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -79,72 +78,65 @@ export default function PostgresusVsWalGPage() {
<main className="flex-1 min-w-0 px-4 py-6 sm:px-6 sm:py-8 lg:px-12">
<div className="mx-auto max-w-4xl">
<article className="prose prose-blue max-w-none">
<h1 id="postgresus-vs-wal-g">Postgresus vs WAL-G</h1>
<h1 id="databasus-vs-wal-g">Databasus vs WAL-G</h1>
<p className="text-lg text-gray-400">
Postgresus and WAL-G are both capable backup tools that support
Databasus and WAL-G are both capable backup tools that support
PostgreSQL, but they take fundamentally different approaches.
Postgresus focuses on comprehensive backup management with an
Databasus focuses on comprehensive backup management with an
intuitive web interface, while WAL-G is a command-line tool that
supports multiple database systems including PostgreSQL, MySQL,
MS SQL, MongoDB and others. If you need a user-friendly solution
for managing backups across multiple databases, Postgresus
offers a more streamlined experience.
for managing backups across multiple databases, Databasus offers
a more streamlined experience.
</p>
<h2 id="quick-comparison">Quick comparison</h2>
<p>
Here&apos;s a quick overview of the key differences between
Postgresus and WAL-G:
Databasus and WAL-G:
</p>
<table>
<thead>
<tr>
<th>Feature</th>
<th>Postgresus</th>
<th>Databasus</th>
<th>WAL-G</th>
</tr>
</thead>
<tbody>
<tr>
<td>Database focus</td>
<td data-label="Postgresus">PostgreSQL only</td>
<td data-label="WAL-G">
Multi-database (PostgreSQL, MySQL, MS SQL, etc.)
</td>
</tr>
<tr>
<td>Backups management</td>
<td data-label="Postgresus"> Multiple DBs</td>
<td data-label="WAL-G"> Single DB only</td>
<td data-label="Databasus"> Yes (Multiple DBs)</td>
<td data-label="WAL-G"> No (single DB only)</td>
</tr>
<tr>
<td>Support of other DBs</td>
<td data-label="Postgresus">
<td data-label="Databasus">
PostgreSQL, MySQL, MariaDB, MongoDB
</td>
<td data-label="WAL-G"> PostgreSQL, MySQL, MS SQL</td>
</tr>
<tr>
<td>Interface</td>
<td data-label="Postgresus">Web UI</td>
<td data-label="Databasus">Web UI</td>
<td data-label="WAL-G">Command-line only</td>
</tr>
<tr>
<td>Backup type</td>
<td data-label="Postgresus">Logical (pg_dump)</td>
<td data-label="Databasus">Logical (pg_dump)</td>
<td data-label="WAL-G">Physical (WAL archiving)</td>
</tr>
<tr>
<td>Backup scheduling</td>
<td data-label="Postgresus"> Built-in scheduler</td>
<td data-label="Databasus"> Built-in scheduler</td>
<td data-label="WAL-G">Requires external (cron)</td>
</tr>
<tr>
<td>Recovery options</td>
<td data-label="Postgresus">
<td data-label="Databasus">
No PITR (restore to any hour or day)
</td>
<td data-label="WAL-G">
@@ -153,7 +145,7 @@ export default function PostgresusVsWalGPage() {
</tr>
<tr>
<td>Incremental backups</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Full backups with compression
</td>
<td data-label="WAL-G">
@@ -162,41 +154,41 @@ export default function PostgresusVsWalGPage() {
</tr>
<tr>
<td>Team features</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Workspaces, RBAC, audit logs
</td>
<td data-label="WAL-G"> OS-level permissions only</td>
</tr>
<tr>
<td>Notifications</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Slack, Teams, Telegram, Email
</td>
<td data-label="WAL-G"> Requires custom scripting</td>
</tr>
<tr>
<td>Encryption</td>
<td data-label="Postgresus">Built-in AES-256-GCM</td>
<td data-label="Databasus">Built-in AES-256-GCM</td>
<td data-label="WAL-G">GPG or libsodium</td>
</tr>
<tr>
<td>Learning curve</td>
<td data-label="Postgresus">Minimal</td>
<td data-label="Databasus">Minimal</td>
<td data-label="WAL-G">CLI proficiency required</td>
</tr>
<tr>
<td>Installation</td>
<td data-label="Postgresus">One-line script or Docker</td>
<td data-label="Databasus">One-line script or Docker</td>
<td data-label="WAL-G">Binary download + configuration</td>
</tr>
<tr>
<td>Suitable for self-hosted DBs</td>
<td data-label="Postgresus"> Yes</td>
<td data-label="Databasus"> Yes</td>
<td data-label="WAL-G"> Yes</td>
</tr>
<tr>
<td>Suitable for cloud DBs</td>
<td data-label="Postgresus">
<td data-label="Databasus">
Yes (RDS, Cloud SQL, Azure)
</td>
<td data-label="WAL-G">
@@ -213,12 +205,12 @@ export default function PostgresusVsWalGPage() {
their database scope:
</p>
<h3 id="focus-postgresus">
Postgresus: Comprehensive backup management
<h3 id="focus-databasus">
Databasus: Comprehensive backup management
</h3>
<p>
Postgresus is built for comprehensive backup management across
Databasus is built for comprehensive backup management across
multiple database systems with a focus on ease of use:
</p>
@@ -278,7 +270,7 @@ export default function PostgresusVsWalGPage() {
When comprehensive management matters:
</strong>{" "}
If you need to manage backups for multiple databases with a
unified interface, Postgresus offers a streamlined experience.
unified interface, Databasus offers a streamlined experience.
You get centralized backup management without the complexity
of juggling different tools for different databases and with
team features.
@@ -292,10 +284,10 @@ export default function PostgresusVsWalGPage() {
philosophy:
</p>
<h3 id="audience-postgresus">Postgresus audience</h3>
<h3 id="audience-databasus">Databasus audience</h3>
<p>
Postgresus is built for a broad audience, from individual
Databasus is built for a broad audience, from individual
developers to large enterprises:
</p>
@@ -357,10 +349,10 @@ export default function PostgresusVsWalGPage() {
with distinct advantages:
</p>
<h3 id="backup-postgresus">Postgresus: Logical backups</h3>
<h3 id="backup-databasus">Databasus: Logical backups</h3>
<p>
Postgresus uses <code>pg_dump</code> for logical backups,
Databasus uses <code>pg_dump</code> for logical backups,
creating SQL representations of your data:
</p>
@@ -415,7 +407,7 @@ export default function PostgresusVsWalGPage() {
granularity:
</p>
<h3 id="recovery-postgresus">Postgresus recovery</h3>
<h3 id="recovery-databasus">Databasus recovery</h3>
<ul>
<li>
@@ -462,7 +454,7 @@ export default function PostgresusVsWalGPage() {
<p className="text-gray-300 m-0">
<strong className="text-amber-400">Note:</strong> For most
applications, restoring to the nearest hour or day (as
Postgresus provides) is sufficient. Second-precise PITR is
Databasus provides) is sufficient. Second-precise PITR is
typically only required for mission-critical financial or
transactional systems where every transaction must be
recoverable.{" "}
@@ -470,7 +462,7 @@ export default function PostgresusVsWalGPage() {
href="/faq#why-no-pitr"
className="text-blue-400 hover:text-blue-300"
>
Learn why Postgresus doesn&apos;t support PITR
Learn why Databasus doesn&apos;t support PITR
</Link>
</p>
</div>
@@ -482,7 +474,7 @@ export default function PostgresusVsWalGPage() {
experience:
</p>
<h3 id="ease-postgresus">Postgresus user experience</h3>
<h3 id="ease-databasus">Databasus user experience</h3>
<ul>
<li>
@@ -543,7 +535,7 @@ export default function PostgresusVsWalGPage() {
href="/installation"
className="font-semibold text-blue-600 hover:text-blue-800"
>
View Postgresus installation guide
View Databasus installation guide
</Link>
</p>
@@ -553,7 +545,7 @@ export default function PostgresusVsWalGPage() {
For organizations with multiple team members managing backups:
</p>
<h3 id="team-postgresus">Postgresus team capabilities</h3>
<h3 id="team-databasus">Databasus team capabilities</h3>
<ul>
<li>
@@ -597,7 +589,7 @@ export default function PostgresusVsWalGPage() {
href="/access-management"
className="font-semibold text-blue-600 hover:text-blue-800"
>
Learn more about Postgresus access management
Learn more about Databasus access management
</Link>
</p>
@@ -608,7 +600,7 @@ export default function PostgresusVsWalGPage() {
approaches:
</p>
<h3 id="security-postgresus">Postgresus security</h3>
<h3 id="security-databasus">Databasus security</h3>
<ul>
<li>
@@ -654,7 +646,7 @@ export default function PostgresusVsWalGPage() {
href="/security"
className="font-semibold text-blue-600 hover:text-blue-800"
>
Learn more about Postgresus security
Learn more about Databasus security
</Link>
</p>
@@ -664,7 +656,7 @@ export default function PostgresusVsWalGPage() {
Both tools support cloud storage, with different focus areas:
</p>
<h3 id="storage-postgresus">Postgresus storage</h3>
<h3 id="storage-databasus">Databasus storage</h3>
<p>Consumer-friendly options for various use cases:</p>
@@ -696,7 +688,7 @@ export default function PostgresusVsWalGPage() {
href="/storages"
className="font-semibold text-blue-600 hover:text-blue-800"
>
View all Postgresus storage options
View all Databasus storage options
</Link>
</p>
@@ -704,7 +696,7 @@ export default function PostgresusVsWalGPage() {
<p>Staying informed about backup status:</p>
<h3 id="notifications-postgresus">Postgresus notifications</h3>
<h3 id="notifications-databasus">Databasus notifications</h3>
<p>Built-in support for multiple notification channels:</p>
@@ -739,7 +731,7 @@ export default function PostgresusVsWalGPage() {
href="/notifiers"
className="font-semibold text-blue-600 hover:text-blue-800"
>
View all Postgresus notification channels
View all Databasus notification channels
</Link>
</p>
@@ -747,7 +739,7 @@ export default function PostgresusVsWalGPage() {
<p>Both tools offer compression to reduce backup sizes:</p>
<h3 id="compression-postgresus">Postgresus compression</h3>
<h3 id="compression-databasus">Databasus compression</h3>
<ul>
<li>
@@ -784,7 +776,7 @@ export default function PostgresusVsWalGPage() {
<h2 id="conclusion">Conclusion</h2>
<p>
Postgresus and WAL-G serve different needs in the PostgreSQL
Databasus and WAL-G serve different needs in the PostgreSQL
backup ecosystem. The right choice depends on your database
environment, team structure and operational preferences.
</p>
@@ -792,7 +784,7 @@ export default function PostgresusVsWalGPage() {
<div className="rounded-lg border border-blue-500/30 bg-blue-500/10 p-4 my-6">
<p className="text-blue-300 m-0">
<strong className="text-blue-400">
Choose Postgresus if:
Choose Databasus if:
</strong>
</p>
<ul className="text-blue-200 mb-0">
@@ -861,11 +853,11 @@ export default function PostgresusVsWalGPage() {
</div>
<p>
For comprehensive backup management for PostgeSQL, Postgresus
offers a more streamlined experience with its unified interface
and built-in features and works seamlessly with both
self-hosted and cloud-managed databases. Also it is suitable for
teams.
For comprehensive backup management, Databasus offers a more
streamlined experience with its unified interface and built-in
features and works seamlessly with both self-hosted and
cloud-managed databases. Databasus is suitable for comprehensive
backup management, not just backups.
<br />
<br />
WAL-G remains an excellent choice for organizations with

View File

@@ -8,6 +8,6 @@ export default function robots(): MetadataRoute.Robots {
userAgent: "*",
allow: "/",
},
sitemap: "https://postgresus.com/sitemap.xml",
sitemap: "https://databasus.com/sitemap.xml",
};
}

View File

@@ -5,11 +5,11 @@ import DocTableOfContentComponent from "../components/DocTableOfContentComponent
import { CopyButton } from "../components/CopyButton";
export const metadata: Metadata = {
title: "Security - How Postgresus Protects Your Data | Postgresus",
title: "Security - How Databasus Protects Your Data | Databasus",
description:
"Learn how Postgresus ensures enterprise-level security with AES-256-GCM encryption for sensitive data and backups, read-only database access, and comprehensive audit logging.",
"Learn how Databasus ensures enterprise-level security with AES-256-GCM encryption for sensitive data and backups, read-only database access, and comprehensive audit logging.",
keywords: [
"Postgresus security",
"Databasus security",
"PostgreSQL backup security",
"AES-256-GCM encryption",
"database encryption",
@@ -20,20 +20,20 @@ export const metadata: Metadata = {
"secure backups",
],
openGraph: {
title: "Security - How Postgresus Protects Your Data | Postgresus",
title: "Security - How Databasus Protects Your Data | Databasus",
description:
"Learn how Postgresus ensures enterprise-level security with AES-256-GCM encryption for sensitive data and backups, read-only database access, and comprehensive audit logging.",
"Learn how Databasus ensures enterprise-level security with AES-256-GCM encryption for sensitive data and backups, read-only database access, and comprehensive audit logging.",
type: "article",
url: "https://postgresus.com/security",
url: "https://databasus.com/security",
},
twitter: {
card: "summary",
title: "Security - How Postgresus Protects Your Data | Postgresus",
title: "Security - How Databasus Protects Your Data | Databasus",
description:
"Learn how Postgresus ensures enterprise-level security with AES-256-GCM encryption for sensitive data and backups, read-only database access, and comprehensive audit logging.",
"Learn how Databasus ensures enterprise-level security with AES-256-GCM encryption for sensitive data and backups, read-only database access, and comprehensive audit logging.",
},
alternates: {
canonical: "https://postgresus.com/security",
canonical: "https://databasus.com/security",
},
robots: "index, follow",
};
@@ -50,19 +50,19 @@ export default function SecurityPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
headline: "Security - How Postgresus Protects Your Data",
headline: "Security - How Databasus Protects Your Data",
description:
"Learn how Postgresus ensures enterprise-level security with AES-256-GCM encryption for sensitive data and backups, read-only database access, and comprehensive audit logging.",
"Learn how Databasus ensures enterprise-level security with AES-256-GCM encryption for sensitive data and backups, read-only database access, and comprehensive audit logging.",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -79,10 +79,10 @@ export default function SecurityPage() {
<main className="flex-1 min-w-0 px-4 py-6 sm:px-6 sm:py-8 lg:px-12">
<div className="mx-auto max-w-4xl">
<article className="prose prose-blue max-w-none">
<h1 id="security">How Postgresus enforces security?</h1>
<h1 id="security">How Databasus enforces security?</h1>
<p className="text-lg text-gray-400">
Postgresus is responsible for sensitive data:
Databasus is responsible for sensitive data:
</p>
<ul>
@@ -100,7 +100,7 @@ export default function SecurityPage() {
<p>
Therefore,{" "}
<strong>
there is a main priority for Postgresus to be enterprise-level
there is a main priority for Databasus to be enterprise-level
secure and reliable
</strong>
.
@@ -115,7 +115,7 @@ export default function SecurityPage() {
the cloud storage;
</li>
<li>
Postgresus doesn&apos;t even receive access to DB with write
Databasus doesn&apos;t even receive access to DB with write
or update access;
</li>
<li>all actions are logged and can be audited;</li>
@@ -128,7 +128,7 @@ export default function SecurityPage() {
corrupt your data.
</p>
<p>Postgresus enforces security on three levels:</p>
<p>Databasus enforces security on three levels:</p>
<ol>
<li>Sensitive data encryption;</li>
@@ -141,7 +141,7 @@ export default function SecurityPage() {
</h2>
<p>
Internally, Postgresus uses PostgreSQL DB to store connection
Internally, Databasus uses PostgreSQL DB to store connection
details, configs, settings of notifiers and storages (S3, Google
Drive, Dropbox, etc.).
</p>
@@ -155,7 +155,7 @@ export default function SecurityPage() {
</ul>
<p>
So in DB Postgresus keeps only hashes or encoded values. For
So in DB Databasus keeps only hashes or encoded values. For
encryption is used <strong>AES-256-GCM</strong> algorithm. Also,
despite the encryption, those values are never exposed via API
or UI.
@@ -163,7 +163,7 @@ export default function SecurityPage() {
<p>
The secret key used for encryption is stored on local storage (
<code>./postgresus-data/secret.key</code> by default) and is not
<code>./databasus-data/secret.key</code> by default) and is not
present in the DB itself. So DB compromise doesn&apos;t give
access to sensitive data.
</p>
@@ -174,7 +174,7 @@ export default function SecurityPage() {
<p>
Each backup file is encrypted on the fly during backup creation.
Postgresus uses <strong>AES-256-GCM</strong> encryption
Databasus uses <strong>AES-256-GCM</strong> encryption
algorithm, which ensures that backup data cannot be read without
the encryption key and any tampering is detected during
decryption.
@@ -198,7 +198,7 @@ export default function SecurityPage() {
<ul>
<li>
Master key (stored in{" "}
<code>./postgresus-data/secret.key</code>)
<code>./databasus-data/secret.key</code>)
</li>
<li>Backup ID</li>
<li>Random salt (unique per backup)</li>
@@ -215,14 +215,14 @@ export default function SecurityPage() {
</h2>
<p>
Postgresus enforces the principle of least privilege - it only
Databasus enforces the principle of least privilege - it only
needs read access to create backups, never write access. This
protects your database from accidental or malicious data
corruption through the backup tool.
</p>
<p>
Before accepting database credentials, Postgresus performs
Before accepting database credentials, Databasus performs
checks across three levels:
</p>
@@ -243,12 +243,12 @@ export default function SecurityPage() {
<p>
The database user must pass all three checks to be considered
read-only. If any write privilege is detected, Postgresus will
read-only. If any write privilege is detected, Databasus will
warn you.
</p>
<p>
Postgresus suggests creating read-only users for you with proper
Databasus suggests creating read-only users for you with proper
permissions:
</p>
@@ -259,7 +259,7 @@ export default function SecurityPage() {
</ul>
<p>
<strong>Result</strong>: Even if Postgresus is compromised,
<strong>Result</strong>: Even if Databasus is compromised,
server is hacked, secret key is stolen and credentials are
decrypted, attackers cannot corrupt your database.
</p>

View File

@@ -3,7 +3,7 @@ import { MetadataRoute } from "next";
export const dynamic = "force-static";
export default function sitemap(): MetadataRoute.Sitemap {
const baseUrl = "https://postgresus.com";
const baseUrl = "https://databasus.com";
const currentDate = new Date().toISOString();
return [
@@ -116,25 +116,25 @@ export default function sitemap(): MetadataRoute.Sitemap {
priority: 0.8,
},
{
url: `${baseUrl}/postgresus-vs-pgbackweb`,
url: `${baseUrl}/databasus-vs-pgbackweb`,
lastModified: currentDate,
changeFrequency: "monthly",
priority: 0.8,
},
{
url: `${baseUrl}/postgresus-vs-pgbackrest`,
url: `${baseUrl}/databasus-vs-pgbackrest`,
lastModified: currentDate,
changeFrequency: "monthly",
priority: 0.8,
},
{
url: `${baseUrl}/postgresus-vs-barman`,
url: `${baseUrl}/databasus-vs-barman`,
lastModified: currentDate,
changeFrequency: "monthly",
priority: 0.8,
},
{
url: `${baseUrl}/postgresus-vs-wal-g`,
url: `${baseUrl}/databasus-vs-wal-g`,
lastModified: currentDate,
changeFrequency: "monthly",
priority: 0.8,

View File

@@ -5,11 +5,11 @@ import DocTableOfContentComponent from "../../components/DocTableOfContentCompon
import Image from "next/image";
export const metadata: Metadata = {
title: "How to use Postgresus with Cloudflare R2 | Postgresus",
title: "How to use Databasus with Cloudflare R2 | Databasus",
description:
"Step-by-step guide to configure Cloudflare R2 storage for PostgreSQL backups with Postgresus. Learn how to set up S3-compatible storage with R2.",
"Step-by-step guide to configure Cloudflare R2 storage for PostgreSQL backups with Databasus. Learn how to set up S3-compatible storage with R2.",
keywords: [
"Postgresus",
"Databasus",
"Cloudflare R2",
"PostgreSQL backup",
"S3 storage",
@@ -17,20 +17,20 @@ export const metadata: Metadata = {
"database backup",
],
openGraph: {
title: "How to use Postgresus with Cloudflare R2 | Postgresus",
title: "How to use Databasus with Cloudflare R2 | Databasus",
description:
"Step-by-step guide to configure Cloudflare R2 storage for PostgreSQL backups with Postgresus. Learn how to set up S3-compatible storage with R2.",
"Step-by-step guide to configure Cloudflare R2 storage for PostgreSQL backups with Databasus. Learn how to set up S3-compatible storage with R2.",
type: "article",
url: "https://postgresus.com/storages/cloudflare-r2",
url: "https://databasus.com/storages/cloudflare-r2",
},
twitter: {
card: "summary",
title: "How to use Postgresus with Cloudflare R2 | Postgresus",
title: "How to use Databasus with Cloudflare R2 | Databasus",
description:
"Step-by-step guide to configure Cloudflare R2 storage for PostgreSQL backups with Postgresus. Learn how to set up S3-compatible storage with R2.",
"Step-by-step guide to configure Cloudflare R2 storage for PostgreSQL backups with Databasus. Learn how to set up S3-compatible storage with R2.",
},
alternates: {
canonical: "https://postgresus.com/storages/cloudflare-r2",
canonical: "https://databasus.com/storages/cloudflare-r2",
},
robots: "index, follow",
};
@@ -45,9 +45,9 @@ export default function CloudflareR2Page() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "HowTo",
name: "How to use Postgresus with Cloudflare R2",
name: "How to use Databasus with Cloudflare R2",
description:
"Step-by-step guide to configure Cloudflare R2 storage for PostgreSQL backups with Postgresus",
"Step-by-step guide to configure Cloudflare R2 storage for PostgreSQL backups with Databasus",
step: [
{
"@type": "HowToStep",
@@ -141,7 +141,7 @@ export default function CloudflareR2Page() {
</li>
</ul>
<p>Copy both values to Postgresus:</p>
<p>Copy both values to Databasus:</p>
<Image
src="/images/cloudflare-r2-storage/image-2.gif"
@@ -178,7 +178,7 @@ export default function CloudflareR2Page() {
<p>
Replace <code>&lt;ACCOUNT_ID&gt;</code> with the value from your
dashboard and enter it in Postgresus.
dashboard and enter it in Databasus.
</p>
<p>
@@ -195,7 +195,7 @@ export default function CloudflareR2Page() {
/>
<p>
Your Postgresus is now ready to use Cloudflare R2 as storage for
Your Databasus is now ready to use Cloudflare R2 as storage for
your PostgreSQL backups.
</p>

View File

@@ -5,11 +5,11 @@ import DocTableOfContentComponent from "../../components/DocTableOfContentCompon
import Image from "next/image";
export const metadata: Metadata = {
title: "How to connect Google Drive to Postgresus | Postgresus",
title: "How to connect Google Drive to Databasus | Databasus",
description:
"Step-by-step guide to configure Google Drive storage for PostgreSQL backups with Postgresus. Learn how to set up Google Cloud project and OAuth.",
"Step-by-step guide to configure Google Drive storage for PostgreSQL backups with Databasus. Learn how to set up Google Cloud project and OAuth.",
keywords: [
"Postgresus",
"Databasus",
"Google Drive",
"PostgreSQL backup",
"Google Cloud",
@@ -18,20 +18,20 @@ export const metadata: Metadata = {
"database backup",
],
openGraph: {
title: "How to connect Google Drive to Postgresus | Postgresus",
title: "How to connect Google Drive to Databasus | Databasus",
description:
"Step-by-step guide to configure Google Drive storage for PostgreSQL backups with Postgresus. Learn how to set up Google Cloud project and OAuth.",
"Step-by-step guide to configure Google Drive storage for PostgreSQL backups with Databasus. Learn how to set up Google Cloud project and OAuth.",
type: "article",
url: "https://postgresus.com/storages/google-drive",
url: "https://databasus.com/storages/google-drive",
},
twitter: {
card: "summary",
title: "How to connect Google Drive to Postgresus | Postgresus",
title: "How to connect Google Drive to Databasus | Databasus",
description:
"Step-by-step guide to configure Google Drive storage for PostgreSQL backups with Postgresus. Learn how to set up Google Cloud project and OAuth.",
"Step-by-step guide to configure Google Drive storage for PostgreSQL backups with Databasus. Learn how to set up Google Cloud project and OAuth.",
},
alternates: {
canonical: "https://postgresus.com/storages/google-drive",
canonical: "https://databasus.com/storages/google-drive",
},
robots: "index, follow",
};
@@ -46,9 +46,9 @@ export default function GoogleDrivePage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "HowTo",
name: "How to connect Google Drive to Postgresus",
name: "How to connect Google Drive to Databasus",
description:
"Step-by-step guide to configure Google Drive storage for PostgreSQL backups with Postgresus",
"Step-by-step guide to configure Google Drive storage for PostgreSQL backups with Databasus",
step: [
{
"@type": "HowToStep",
@@ -195,11 +195,11 @@ export default function GoogleDrivePage() {
</li>
<li>
<strong>Authorized JavaScript origins:</strong>{" "}
<code>https://postgresus.com</code>
<code>https://databasus.com</code>
</li>
<li>
<strong>Authorized redirect URIs:</strong>{" "}
<code>https://postgresus.com/storages/google-oauth</code>
<code>https://databasus.com/storages/google-oauth</code>
</li>
</ul>
@@ -258,7 +258,7 @@ export default function GoogleDrivePage() {
<h3 id="fill-credentials">1. Fill credentials data</h3>
<p>Fill the credentials from the previous steps in Postgresus:</p>
<p>Fill the credentials from the previous steps in Databasus:</p>
<Image
src="/images/google-drive-storage/image-8.png"
@@ -288,7 +288,7 @@ export default function GoogleDrivePage() {
</p>
<p>
That&apos;s it! Your Google Drive is now connected to Postgresus
That&apos;s it! Your Google Drive is now connected to Databasus
and ready to store your PostgreSQL backups.
</p>

View File

@@ -5,11 +5,11 @@ import DocsSidebarComponent from "../components/DocsSidebarComponent";
import DocTableOfContentComponent from "../components/DocTableOfContentComponent";
export const metadata: Metadata = {
title: "Storages - Postgresus Documentation",
title: "Storages - Databasus Documentation",
description:
"List of supported storage destinations for Postgresus backups including local storage, S3, Cloudflare R2, Google Drive, Azure Blob Storage, NAS, FTP, SFTP, rclone and Dropbox.",
"List of supported storage destinations for Databasus backups including local storage, S3, Cloudflare R2, Google Drive, Azure Blob Storage, NAS, FTP, SFTP, rclone and Dropbox.",
keywords: [
"Postgresus storages",
"Databasus storages",
"backup storage",
"S3 storage",
"Google Drive backup",
@@ -23,20 +23,20 @@ export const metadata: Metadata = {
"rclone backup",
],
openGraph: {
title: "Storages - Postgresus Documentation",
title: "Storages - Databasus Documentation",
description:
"List of supported storage destinations for Postgresus backups including local storage, S3, Cloudflare R2, Google Drive, Azure Blob Storage, NAS, FTP, SFTP, rclone and Dropbox.",
"List of supported storage destinations for Databasus backups including local storage, S3, Cloudflare R2, Google Drive, Azure Blob Storage, NAS, FTP, SFTP, rclone and Dropbox.",
type: "article",
url: "https://postgresus.com/storages",
url: "https://databasus.com/storages",
},
twitter: {
card: "summary",
title: "Storages - Postgresus Documentation",
title: "Storages - Databasus Documentation",
description:
"List of supported storage destinations for Postgresus backups including local storage, S3, Cloudflare R2, Google Drive, Azure Blob Storage, NAS, FTP, SFTP, rclone and Dropbox.",
"List of supported storage destinations for Databasus backups including local storage, S3, Cloudflare R2, Google Drive, Azure Blob Storage, NAS, FTP, SFTP, rclone and Dropbox.",
},
alternates: {
canonical: "https://postgresus.com/storages",
canonical: "https://databasus.com/storages",
},
robots: "index, follow",
};
@@ -51,19 +51,19 @@ export default function StoragesPage() {
__html: JSON.stringify({
"@context": "https://schema.org",
"@type": "TechArticle",
headline: "Storages - Postgresus Documentation",
headline: "Storages - Databasus Documentation",
description:
"List of supported storage destinations for Postgresus backups including local storage, S3, Cloudflare R2, Google Drive, Azure Blob Storage, NAS, FTP, SFTP, rclone and Dropbox.",
"List of supported storage destinations for Databasus backups including local storage, S3, Cloudflare R2, Google Drive, Azure Blob Storage, NAS, FTP, SFTP, rclone and Dropbox.",
author: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
},
publisher: {
"@type": "Organization",
name: "Postgresus",
name: "Databasus",
logo: {
"@type": "ImageObject",
url: "https://postgresus.com/logo.svg",
url: "https://databasus.com/logo.svg",
},
},
}),
@@ -83,7 +83,7 @@ export default function StoragesPage() {
<h1 id="storages">Storages</h1>
<p className="text-lg text-gray-400">
Postgresus supports multiple storage destinations for your
Databasus supports multiple storage destinations for your
PostgreSQL backups. Choose where to store your backup files
based on your infrastructure and requirements.
</p>

4
package-lock.json generated
View File

@@ -1,11 +1,11 @@
{
"name": "postgresus-website",
"name": "databasus-website",
"version": "0.1.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "postgresus-website",
"name": "databasus-website",
"version": "0.1.0",
"dependencies": {
"next": "16.0.1",

View File

@@ -1,5 +1,5 @@
{
"name": "postgresus-website",
"name": "databasus-website",
"version": "0.1.0",
"private": true,
"scripts": {
@@ -23,4 +23,4 @@
"eslint": "^9",
"eslint-config-next": "16.0.1"
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 KiB

After

Width:  |  Height:  |  Size: 75 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 400 KiB

After

Width:  |  Height:  |  Size: 400 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 286 KiB

After

Width:  |  Height:  |  Size: 286 KiB

View File

@@ -1,15 +1,15 @@
# Postgresus - PostgreSQL backup tool with with MySQL, MariaDB and MongoDB support
# Databasus - PostgreSQL backup tool with with MySQL, MariaDB and MongoDB support
> Free and open source tool for databases scheduled backups. Save them locally and to clouds. Notifications to Slack, Discord, etc.
## Project Information
- Name: Postgresus
- Name: Databasus
- Type: Self-hosted databases backup tool
- License: Apache 2.0
- Repository: https://github.com/RostislavDugin/postgresus
- Website: https://postgresus.com
- Community: https://t.me/postgresus_community
- Repository: https://github.com/databasus/databasus
- Website: https://databasus.com
- Community: https://t.me/databasus_community
## Key Features
@@ -37,11 +37,11 @@
### Installation
URL: /installation
Content: Four installation methods - automated script, Docker run, Docker Compose and Helm for Kubernetes. Here you can read how to install Postgresus
Content: Four installation methods - automated script, Docker run, Docker Compose and Helm for Kubernetes. Here you can read how to install Databasus
### Access Management
URL: /access-management
Content: Workspaces, user roles, audit logs and global settings for managing access control. Here you can read how to manage access to Postgresus, which roles system does it have. As well here exaplained how teams and organizations can control usage for their team members.
Content: Workspaces, user roles, audit logs and global settings for managing access control. Here you can read how to manage access to Databasus, which roles system does it have. As well here exaplained how teams and organizations can control usage for their team members.
### Password Reset
URL: /password
@@ -49,19 +49,19 @@ Content: How to reset user passwords using command-line tool
### Security
URL: /security
Content: Information about how Postgresus ensures enterprise-level security through three layers: sensitive data encryption with AES-256-GCM, backup encryption with unique keys per backup and read-only database access enforcement. Explains how credentials are protected, how backups remain encrypted even if cloud storage is compromised, and how the principle of least privilege prevents database corruption.
Content: Information about how Databasus ensures enterprise-level security through three layers: sensitive data encryption with AES-256-GCM, backup encryption with unique keys per backup and read-only database access enforcement. Explains how credentials are protected, how backups remain encrypted even if cloud storage is compromised, and how the principle of least privilege prevents database corruption.
### FAQ - Frequently Asked Questions
URL: /faq
Content: Frequently asked questions about Postgresus
Content: Frequently asked questions about Databasus
#### How to backup localhost databases
URL: /faq/localhost
Content: Step-by-step guide on how to backup localhost databases running on localhost using Postgresus. Explains how to configure Docker host network mode to allow the container to access services on the host machine. Includes solutions for both Docker Compose and Docker run, with notes for Windows and macOS users about using host.docker.internal.
Content: Step-by-step guide on how to backup localhost databases running on localhost using Databasus. Explains how to configure Docker host network mode to allow the container to access services on the host machine. Includes solutions for both Docker Compose and Docker run, with notes for Windows and macOS users about using host.docker.internal.
#### How to backup Supabase
URL: /faq/supabase
Content: Step-by-step guide on how to backup Supabase PostgreSQL databases using Postgresus. Explains two connection options: using Session Pooler with IPv4 (free) or purchasing the IPv4 add-on. Includes detailed instructions for configuring the connection with SSL enabled.
Content: Step-by-step guide on how to backup Supabase PostgreSQL databases using Databasus. Explains two connection options: using Session Pooler with IPv4 (free) or purchasing the IPv4 add-on. Includes detailed instructions for configuring the connection with SSL enabled.
### Storage Configuration
URL: /storages
@@ -89,11 +89,11 @@ Content: How to configure Teams webhook notifications
### MySQL and MariaDB Backup
URL: /mysql-backup
Content: Comprehensive guide on using Postgresus for MySQL and MariaDB backups. Explains how to backup MySQL databases using mysqldump under the hood, with support for MySQL 5.7, 8.0, 8.4 and 9, as well as MariaDB 10 and 11 using native mariadb-dump tool. Includes details on scheduled backups, cloud storage integration, notifications, compression, encryption and compatibility with cloud-hosted MySQL services like AWS RDS, Google Cloud SQL, Azure Database for MySQL and PlanetScale.
Content: Comprehensive guide on using Databasus for MySQL and MariaDB backups. Explains how to backup MySQL databases using mysqldump under the hood, with support for MySQL 5.7, 8.0, 8.4 and 9, as well as MariaDB 10 and 11 using native mariadb-dump tool. Includes details on scheduled backups, cloud storage integration, notifications, compression, encryption and compatibility with cloud-hosted MySQL services like AWS RDS, Google Cloud SQL, Azure Database for MySQL and PlanetScale.
### MongoDB Backup
URL: /mongodb-backup
Content: Complete guide on using Postgresus for MongoDB backups. Explains how to backup MongoDB databases using mongodump under the hood, with support for MongoDB versions 4, 5, 6, 7 and 8. Includes information about scheduled backups, BSON archive storage, cloud storage integration, notifications, compression with gzip, AES-256-GCM encryption and compatibility with MongoDB Atlas, replica sets and self-hosted deployments.
Content: Complete guide on using Databasus for MongoDB backups. Explains how to backup MongoDB databases using mongodump under the hood, with support for MongoDB versions 4, 5, 6, 7 and 8. Includes information about scheduled backups, BSON archive storage, cloud storage integration, notifications, compression with gzip, AES-256-GCM encryption and compatibility with MongoDB Atlas, replica sets and self-hosted deployments.
## Technical Details
@@ -108,12 +108,12 @@ Content: Complete guide on using Postgresus for MongoDB backups. Explains how to
1. **Automated Script (Recommended for Linux)**
- Installs Docker and Docker Compose automatically
- Sets up Postgresus with auto-restart
- Installation directory: /opt/postgresus
- Sets up Databasus with auto-restart
- Installation directory: /opt/databasus
2. **Docker Run**
- Quick single-command deployment
- Data stored in ./postgresus-data
- Data stored in ./databasus-data
- Port: 4005
3. **Docker Compose**
@@ -160,7 +160,7 @@ Content: Complete guide on using Postgresus for MongoDB backups. Explains how to
## Target Audience
Postgresus is suitable for:
Databasus is suitable for:
- **Single Developers**: Managing personal projects and side projects
- **DevOps Teams**: Maintaining production databases and infrastructure
- **Organizations**: Requiring compliance, audit trails and enterprise backup solutions
@@ -189,29 +189,29 @@ Postgresus is suitable for:
## FAQ
### How is Postgresus different from PgBackRest, Barman or pg_dump?
Postgresus is a tool to manage backups of multiple databases. It not only dump DB like other tools, but also provides a modern, user-friendly web interface instead of complex configuration files and command-line tools. While PgBackRest and Barman require extensive configuration and command-line expertise suitable for single DB only. Postgresus offers intuitive point-and-click setup. Unlike raw pg_dump scripts, it includes built-in scheduling, compression, multiple storage destinations, health monitoring and real-time notifications - all managed through a simple web UI. It's the UX-friendly alternative for developers and DevOps teams who want powerful backup capabilities without the complexity.
### How is Databasus different from PgBackRest, Barman or pg_dump?
Databasus is a tool to manage backups of multiple databases. It not only dump DB like other tools, but also provides a modern, user-friendly web interface instead of complex configuration files and command-line tools. While PgBackRest and Barman require extensive configuration and command-line expertise suitable for single DB only. Databasus offers intuitive point-and-click setup. Unlike raw pg_dump scripts, it includes built-in scheduling, compression, multiple storage destinations, health monitoring and real-time notifications - all managed through a simple web UI. It's the UX-friendly alternative for developers and DevOps teams who want powerful backup capabilities without the complexity.
### Which databases does Postgresus support?
Postgresus supports PostgreSQL, MySQL, MariaDB and MongoDB. However, Postgresus was originally created specifically for PostgreSQL and maintains its primary focus on it — providing 100% excellent support and maximum efficiency for PostgreSQL backups. While MySQL, MariaDB and MongoDB are fully supported, PostgreSQL remains the core priority with the most optimized features and ongoing development.
### Which databases does Databasus support?
Databasus supports PostgreSQL, MySQL, MariaDB and MongoDB. However, Databasus was originally created specifically for PostgreSQL and maintains its primary focus on it — providing 100% excellent support and maximum efficiency for PostgreSQL backups. While MySQL, MariaDB and MongoDB are fully supported, PostgreSQL remains the core priority with the most optimized features and ongoing development.
### Where can I read comparisons with other PostgreSQL backup tools?
We have detailed comparison pages for popular backup tools:
- Postgresus vs pg_dump: /pgdump-alternative
- Postgresus vs pgBackRest: /postgresus-vs-pgbackrest
- Postgresus vs Barman: /postgresus-vs-barman
- Postgresus vs WAL-G: /postgresus-vs-wal-g
- Postgresus vs pgBackWeb: /postgresus-vs-pgbackweb
- Databasus vs pg_dump: /pgdump-alternative
- Databasus vs pgBackRest: /databasus-vs-pgbackrest
- Databasus vs Barman: /databasus-vs-barman
- Databasus vs WAL-G: /databasus-vs-wal-g
- Databasus vs pgBackWeb: /databasus-vs-pgbackweb
Each comparison explains the key differences, pros and cons and helps you choose the right tool for your needs.
### Why doesn't Postgresus support PITR (Point-in-Time Recovery)?
Postgresus intentionally focuses on logical backups rather than PITR for several practical reasons:
### Why doesn't Databasus support PITR (Point-in-Time Recovery)?
Databasus intentionally focuses on logical backups rather than PITR for several practical reasons:
1. Complex setup requirements — PITR tools typically need to be installed on the same server as your database, requiring direct filesystem access and careful configuration
2. Restoration limitations — incremental backups cannot be restored without direct access to the database storage drive
3. Cloud incompatibility — managed cloud databases (AWS RDS, Google Cloud SQL, Azure) don't allow restoring external PITR backups, making them useless for cloud-hosted PostgreSQL
4. Built-in cloud PITR — cloud providers already offer native PITR capabilities, and even they typically default to hourly or daily granularity
5. Practical sufficiency — for 99% of projects, hourly or daily logical backups provide adequate recovery points without the operational complexity of WAL archiving
So instead of second-by-second restoration complexity, Postgresus prioritizes an intuitive UX for individuals and teams, making it the most reliable tool for day to day use
So instead of second-by-second restoration complexity, Databasus prioritizes an intuitive UX for individuals and teams, making it the most reliable tool for day to day use
### Backup Schedules
Hourly, daily, weekly, monthly or cron cycles with exact run time specification (e.g., 04:00). Weekly schedules support specific weekdays, monthly schedules support specific calendar days.
@@ -227,9 +227,9 @@ All data executes within containers you control on servers you own. Credentials
## Developer Information
- Docker Image: rostislavdugin/postgresus:latest
- Docker Image: databasus/databasus:latest
- Default Port: 4005
- Data Directory: ./postgresus-data or /postgresus-data
- Data Directory: ./databasus-data
- Configuration: Web-based UI
- API: Internal backend API