#!/bin/bash #============================================================================== # Script: 04-import-to-oracle21c.sh # Descriere: Import SYS objects + CONTAFIN_ORACLE + schema secundara în Oracle 21c # Data: 30 Septembrie 2025 # Rulare: bash 04-import-to-oracle21c.sh #============================================================================== set -e echo "==========================================" echo "IMPORT IN ORACLE 21c XE - PDB ROA" echo "==========================================" echo "" ORACLE_PWD="OraclePass123" PDB_CONNECT="sys/${ORACLE_PWD}@localhost:1521/roa as sysdba" # Detectare schema secundara (din variabila exportata de 01-setup sau master) if [ -z "$SCHEMA2_NAME" ]; then SCHEMA2_NAME="MARIUSM_AUTO" echo "Schema secundara (default): MARIUSM_AUTO" else echo "Schema secundara (custom): $SCHEMA2_NAME" fi echo "[1/5] Import SYS objects custom..." ssh root@10.0.20.201 "pct exec 108 -- docker exec oracle-xe sqlplus -s ${PDB_CONNECT}" <<'EOF' SET SERVEROUTPUT ON WHENEVER SQLERROR CONTINUE -- Verificare conexiune PDB ROA SELECT 'Connected to: ' || name || ' (CDB=' || cdb || ')' FROM v$database; -- Import SYS objects @/tmp/SYS_OBJECTS.sql -- Verificare obiecte create SELECT object_name, object_type, status FROM dba_objects WHERE owner='SYS' AND object_name IN ('AUTH_PACK','NEWSCHEMA','NEWSCHEMAJOB','NEWSCHEMAPROGRESS','VAUTH_SERII','AUTH_SERII','AUTH_DETALII') ORDER BY object_type, object_name; EXIT; EOF echo "✓ SYS objects importat" echo "" echo "[2/5] Grant-uri SYS → CONTAFIN_ORACLE..." ssh root@10.0.20.201 "pct exec 108 -- docker exec oracle-xe sqlplus -s ${PDB_CONNECT}" <<'EOF' WHENEVER SQLERROR CONTINUE GRANT SELECT ON SYS.AUTH_SERII TO CONTAFIN_ORACLE; GRANT SELECT ON SYS.AUTH_DETALII TO CONTAFIN_ORACLE; GRANT SELECT ON SYS.VAUTH_SERII TO CONTAFIN_ORACLE; GRANT EXECUTE ON SYS.AUTH_PACK TO CONTAFIN_ORACLE; GRANT EXECUTE ON SYS.NEWSCHEMA TO CONTAFIN_ORACLE; GRANT EXECUTE ON SYS.NEWSCHEMAJOB TO CONTAFIN_ORACLE; GRANT EXECUTE ON SYS.NEWSCHEMAPROGRESS TO CONTAFIN_ORACLE; GRANT EXECUTE ON SYS.UPDATESQLPLUS TO CONTAFIN_ORACLE; GRANT EXECUTE ON SYS.EXECUTESCRIPTOS TO CONTAFIN_ORACLE; EXIT; EOF echo "✓ Grant-uri SYS acordate" echo "" echo "[3/5] Import CONTAFIN_ORACLE..." echo "Durată estimată: 10-15 minute" ssh root@10.0.20.201 "pct exec 108 -- docker exec oracle-xe bash -c ' CONTAFIN_DMP=\$(ls /tmp/CONTAFIN_ORACLE*.dmp | head -1) imp system/${ORACLE_PWD}@localhost:1521/roa \ FILE=\$CONTAFIN_DMP \ LOG=/tmp/contafin_import.log \ FROMUSER=CONTAFIN_ORACLE \ TOUSER=CONTAFIN_ORACLE \ IGNORE=Y \ COMMIT=Y \ BUFFER=10485760 \ FEEDBACK=10000 echo "" echo "Verificare obiecte importate:" sqlplus -s system/${ORACLE_PWD}@localhost:1521/roa <