From d81c2cb739b6ce8662558d07441d3e0c35213a6e Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Tue, 5 May 2026 09:28:05 -0400 Subject: [PATCH] Closes #21951: Add convenience scripts for database management (#22113) --- scripts/drop_database.sh | 7 +++++++ scripts/load_database.sh | 11 +++++++++++ scripts/save_database.sh | 7 +++++++ 3 files changed, 25 insertions(+) create mode 100755 scripts/drop_database.sh create mode 100755 scripts/load_database.sh create mode 100755 scripts/save_database.sh diff --git a/scripts/drop_database.sh b/scripts/drop_database.sh new file mode 100755 index 000000000..fdb2ba154 --- /dev/null +++ b/scripts/drop_database.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +DB=${1:-netbox} + +# Drop and re-create the database locally +sudo -u postgres psql -c "drop database $DB" +sudo -u postgres psql -c "create database $DB" diff --git a/scripts/load_database.sh b/scripts/load_database.sh new file mode 100755 index 000000000..4fab3420d --- /dev/null +++ b/scripts/load_database.sh @@ -0,0 +1,11 @@ +#!/bin/sh + +DB=${2:-netbox} + +# Drop and re-create the database locally +sudo -u postgres psql -c "DROP DATABASE $DB" +sudo -u postgres psql -c "CREATE DATABASE $DB" +sudo -u postgres psql -c "GRANT CREATE ON DATABASE $DB TO $DB" + +# Load tables from the production dump +sudo -u postgres psql $DB < $1 diff --git a/scripts/save_database.sh b/scripts/save_database.sh new file mode 100755 index 000000000..4f200877b --- /dev/null +++ b/scripts/save_database.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +DB=${2:-netbox} + +# Dump the database to a file +sudo -u postgres pg_dump $DB > $1 +