Files
Datacenter-Control-Complete/scripts/setup-database.sh
2026-02-09 21:51:31 -08:00

55 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
# Database setup script for Omada Cloud Integration
set -e
echo "=== Database Setup Script ==="
echo ""
# Check if PostgreSQL is running
if ! pg_isready -h localhost -p 5432 >/dev/null 2>&1; then
echo "⚠️ PostgreSQL is not running on localhost:5432"
echo ""
echo "Options:"
echo "1. Start PostgreSQL with Docker:"
echo " docker run -d --name omada-postgres \\"
echo " -e POSTGRES_USER=omada_user \\"
echo " -e POSTGRES_PASSWORD=omada_password \\"
echo " -e POSTGRES_DB=omada_db \\"
echo " -p 5433:5432 postgres:15-alpine"
echo ""
echo " Then update DATABASE_URL in .env to use port 5433"
echo ""
echo "2. Use existing PostgreSQL (you'll need admin credentials)"
echo ""
exit 1
fi
echo "✅ PostgreSQL is running"
echo ""
# Try to create database with different methods
echo "Attempting to create database..."
# Method 1: Try with default postgres user
if psql -h localhost -U postgres -lqt 2>/dev/null | cut -d \| -f 1 | grep -qw omada_db; then
echo "✅ Database 'omada_db' already exists"
else
echo "Creating database 'omada_db'..."
echo "You may need to enter PostgreSQL admin password"
createdb -h localhost -U postgres omada_db 2>/dev/null || \
psql -h localhost -U postgres -c "CREATE DATABASE omada_db;" 2>/dev/null || \
echo "⚠️ Could not create database automatically. Please create it manually:"
echo " CREATE DATABASE omada_db;"
echo " CREATE USER omada_user WITH PASSWORD 'omada_password';"
echo " GRANT ALL PRIVILEGES ON DATABASE omada_db TO omada_user;"
fi
echo ""
echo "✅ Database setup complete!"
echo ""
echo "Next steps:"
echo "1. Run: pnpm run prisma:migrate"
echo "2. Verify: pnpm run prisma:studio"