add create_db for pg
This commit is contained in:
@@ -1 +1,2 @@
|
|||||||
|
create_pg_db.sh
|
||||||
setup-postgres17.sh
|
setup-postgres17.sh
|
||||||
|
|||||||
41
scripts/server-postgres/create_pg_db.sh
Normal file
41
scripts/server-postgres/create_pg_db.sh
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Basé sur un travail de Cédric Abonnel / Cédrix sous licence CC BY-NC 4.0
|
||||||
|
|
||||||
|
# Importer les fonctions communes
|
||||||
|
source "$(dirname "$0")/../common/common_utils.sh"
|
||||||
|
|
||||||
|
# Vérifier si le script est exécuté en root
|
||||||
|
check_root
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
DB_NAME="$1"
|
||||||
|
DB_USER="$2"
|
||||||
|
|
||||||
|
if [[ -z "$DB_NAME" || -z "$DB_USER" ]]; then
|
||||||
|
echo "❌ Usage: $0 <nom_base_de_donnees> <utilisateur_postgresql>"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "🔎 Vérification de l'existence de l'utilisateur PostgreSQL '$DB_USER'..."
|
||||||
|
USER_EXISTS=$(sudo -u postgres psql -tAc "SELECT 1 FROM pg_roles WHERE rolname='${DB_USER}'")
|
||||||
|
|
||||||
|
if [[ "$USER_EXISTS" != "1" ]]; then
|
||||||
|
echo "❌ L'utilisateur '$DB_USER' n'existe pas dans PostgreSQL."
|
||||||
|
exit 2
|
||||||
|
else
|
||||||
|
echo "✅ L'utilisateur '$DB_USER' existe."
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "🔎 Vérification de l'existence de la base de données '$DB_NAME'..."
|
||||||
|
DB_EXISTS=$(sudo -u postgres psql -tAc "SELECT 1 FROM pg_database WHERE datname='${DB_NAME}'")
|
||||||
|
|
||||||
|
if [[ "$DB_EXISTS" == "1" ]]; then
|
||||||
|
echo "⚠️ La base de données '$DB_NAME' existe déjà."
|
||||||
|
else
|
||||||
|
echo "🛠 Création de la base de données '$DB_NAME' avec le propriétaire '$DB_USER'..."
|
||||||
|
sudo -u postgres createdb -O "$DB_USER" "$DB_NAME"
|
||||||
|
echo "✅ Base de données '$DB_NAME' créée avec succès."
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "🎉 Opération terminée."
|
||||||
Reference in New Issue
Block a user