#!/bin/bash #============================================================================== # Script: 01-setup-oracle21c.sh # Descriere: Pregătire Oracle 21c XE - Creare PDB ROA, Tablespace ROA, Useri # Data: 30 Septembrie 2025 # Rulare: bash 01-setup-oracle21c.sh #============================================================================== set -e # Exit on error echo "==========================================" echo "ORACLE 21c XE - SETUP PDB ROA" echo "==========================================" echo "" # Configurare ORACLE_PWD="OraclePass123" CDB_CONNECT="sys/${ORACLE_PWD}@localhost:1521/XE as sysdba" PDB_CONNECT="sys/${ORACLE_PWD}@localhost:1521/roa as sysdba" LXC_ID="108" CONTAINER_NAME="oracle-xe" echo "[1/5] Verificare container Oracle XE..." # Detectare dacă rulează în LXC sau pe Proxmox if [ -f "/etc/pve/.version" ]; then # Rulează pe Proxmox host CMD_PREFIX="pct exec ${LXC_ID} --" else # Rulează direct în LXC CMD_PREFIX="" fi if ! ${CMD_PREFIX} docker ps | grep -q ${CONTAINER_NAME}; then echo "ERROR: Container ${CONTAINER_NAME} nu rulează!" echo "" echo "Opțiuni:" echo " 1. Rulează: bash 00-install-oracle21c-xe.sh" echo " 2. Sau pornește manual: docker start ${CONTAINER_NAME}" exit 1 fi echo "✓ Container ${CONTAINER_NAME} activ" echo "" echo "[2/5] Verificare PDB ROA există..." PDB_EXISTS=$(${CMD_PREFIX} docker exec ${CONTAINER_NAME} sqlplus -s ${CDB_CONNECT} <<'EOF' SET PAGESIZE 0 FEEDBACK OFF HEADING OFF SELECT COUNT(*) FROM v$pdbs WHERE name='ROA'; EXIT; EOF ) if [ "$PDB_EXISTS" = "0" ] || [ -z "$PDB_EXISTS" ]; then echo "ERROR: PDB ROA nu există!" echo "" echo "Rulează mai întâi: bash 00-install-oracle21c-xe.sh" exit 1 fi echo "✓ PDB ROA există" echo "" echo "[3/5] Creare Tablespace ROA..." ${CMD_PREFIX} docker exec ${CONTAINER_NAME} sqlplus -s ${PDB_CONNECT} <