From 8babcf342bbfb4d70e9111894a584771d193da3e Mon Sep 17 00:00:00 2001 From: Noah Masur <7386960+nmasur@users.noreply.github.com> Date: Sun, 25 Feb 2024 22:31:02 +0000 Subject: [PATCH] convert nextcloud db from mysql to postgres --- docs/repair-nextcloud.md | 17 +++++++++++++++++ modules/nixos/services/nextcloud.nix | 3 ++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/docs/repair-nextcloud.md b/docs/repair-nextcloud.md index 1a46cfd..0428d80 100644 --- a/docs/repair-nextcloud.md +++ b/docs/repair-nextcloud.md @@ -63,3 +63,20 @@ Use this mysqldump command: sudo -u nextcloud mysqldump -S /run/mysqld/mysqld.sock --default-character-set=utf8mb4 nextcloud > backup.sql ``` +## Converting to Postgres + +Same as MySQL, but run this command instead: + +``` +sudo -u nextcloud nextcloud-occ db:convert-type pgsql nextcloud /run/postgresql/ nextcloud +``` + +Then set the `dbtype` to `pgsql`. + +## Backing Up Postgres Database + +Use this pg_dump command: + +``` +sudo -u nextcloud pg_dump nextcloud > backup.sql +``` diff --git a/modules/nixos/services/nextcloud.nix b/modules/nixos/services/nextcloud.nix index 72f70f1..03dc28b 100644 --- a/modules/nixos/services/nextcloud.nix +++ b/modules/nixos/services/nextcloud.nix @@ -12,13 +12,14 @@ maxUploadSize = "50G"; config = { adminpassFile = config.secrets.nextcloud.dest; - dbtype = "mysql"; + dbtype = "pgsql"; }; settings = { default_phone_region = "US"; # Allow access when hitting either of these hosts or IPs trusted_domains = [ config.hostnames.content ]; trusted_proxies = [ "127.0.0.1" ]; + maintenance_window_start = 4; # Run jobs at 4am UTC }; extraAppsEnable = true; extraApps = with config.services.nextcloud.package.packages.apps; {