style: normalizare CRLF -> LF pentru scripturile shell
Doar line endings, zero modificari de continut (verificat cu
git diff --ignore-cr-at-eol: fara diferente ramase pe aceste fisiere).
Fisierele aveau CRLF comis efectiv in repo, nu doar in working tree.
Sunt scripturi care ruleaza pe Linux (migrarea Oracle, LXC 171 claude-agent),
iar deployate direct din working tree bash le refuza cu
"$'\r': command not found" - exact capcana pe care .gitattributes (comis in
9475842) o previne de acum inainte pentru fisierele noi.
Nu sunt incluse fisierele .md/.sql din roa-windows-setup: acelea au
modificari reale de continut, in curs, si apartin altui commit.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BhQBTegE4PiMPPaapLHjkc
This commit is contained in:
@@ -1,79 +1,79 @@
|
||||
#!/bin/bash
|
||||
# Export CONTAFIN_ORACLE și FIRMANOUA, arhive separate tar.gz
|
||||
# Rulează din LXC 108: ./export-roa2.sh [18|21]
|
||||
# 18 = Oracle 18c (compatibil 11g/18c/19c) | 21 = Oracle 21c (default)
|
||||
#
|
||||
# Exemple:
|
||||
# ./export-roa2.sh 18 # Export din Oracle 18c pe port 1522
|
||||
# ./export-roa2.sh 21 # Export din Oracle 21c PDB roa2 pe port 1521
|
||||
# ./export-roa2.sh # Default: Oracle 21c
|
||||
|
||||
DATE=$(date +%Y%m%d_%H%M%S)
|
||||
SCHEMAS="CONTAFIN_ORACLE FIRMANOUA"
|
||||
ORACLE_VER=${1:-21}
|
||||
|
||||
if [ "$ORACLE_VER" == "18" ]; then
|
||||
CONTAINER="oracle18-xe"
|
||||
PORT="1521" # Port intern container (extern e 1522)
|
||||
SERVICE="XEPDB1" # Oracle 18c PDB (nu CDB!)
|
||||
DMPDIR="/opt/oracle18/oradata/dmpdir" # Volum separat pentru 18c
|
||||
SUFFIX="_v11.2"
|
||||
VERSION="11.2"
|
||||
echo "=== Export Oracle 18c PDB XEPDB1 (compatibil 11g/18c/19c) - $DATE ==="
|
||||
else
|
||||
CONTAINER="oracle-xe"
|
||||
PORT="1521"
|
||||
SERVICE="roa2" # Oracle 21c PDB roa2
|
||||
DMPDIR="/opt/oracle/oradata/dmpdir" # Volum pentru 21c
|
||||
SUFFIX="_v19"
|
||||
VERSION="19"
|
||||
echo "=== Export Oracle 21c PDB roa2 - $DATE ==="
|
||||
fi
|
||||
|
||||
# Verifică că containerul Docker rulează
|
||||
if ! docker ps --format '{{.Names}}' | grep -q "^${CONTAINER}$"; then
|
||||
echo "EROARE: Containerul $CONTAINER nu rulează!"
|
||||
echo ""
|
||||
echo "Pornește-l cu: docker start $CONTAINER"
|
||||
echo "Apoi așteaptă ~60s pentru startup Oracle."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Verifică că baza de date Oracle e OPEN
|
||||
DB_STATUS=$(docker exec $CONTAINER bash -c "echo 'SELECT status FROM v\$instance;' | sqlplus -s / as sysdba" 2>/dev/null | grep -E "OPEN|MOUNTED")
|
||||
if [ -z "$DB_STATUS" ]; then
|
||||
echo "EROARE: Baza de date Oracle nu e disponibilă!"
|
||||
echo "Containerul rulează dar Oracle nu e OPEN."
|
||||
echo "Verifică: docker logs $CONTAINER --tail 20"
|
||||
exit 1
|
||||
fi
|
||||
echo "Oracle status: $DB_STATUS"
|
||||
|
||||
# Verifică că DMPDIR există
|
||||
if [ ! -d "$DMPDIR" ]; then
|
||||
echo "EROARE: Director $DMPDIR nu există!"
|
||||
echo "Creează-l cu: mkdir -p $DMPDIR && chmod 777 $DMPDIR"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd $DMPDIR
|
||||
|
||||
for SCHEMA in $SCHEMAS; do
|
||||
echo "Exporting $SCHEMA from $CONTAINER..."
|
||||
docker exec $CONTAINER expdp system/romfastsoft@localhost:$PORT/$SERVICE \
|
||||
SCHEMAS=$SCHEMA \
|
||||
DIRECTORY=DMPDIR \
|
||||
DUMPFILE=${SCHEMA}_${DATE}.dmp \
|
||||
LOGFILE=${SCHEMA}_${DATE}.log \
|
||||
VERSION=$VERSION \
|
||||
EXCLUDE=STATISTICS
|
||||
|
||||
# Arhivare individuală
|
||||
ARCHIVE="${SCHEMA}${SUFFIX}_${DATE}.tar.gz"
|
||||
echo "Creating archive: $ARCHIVE"
|
||||
tar -czvf "$ARCHIVE" ${SCHEMA}_${DATE}.dmp ${SCHEMA}_${DATE}.log
|
||||
rm -f ${SCHEMA}_${DATE}.dmp ${SCHEMA}_${DATE}.log
|
||||
done
|
||||
|
||||
echo "=== Done! ==="
|
||||
ls -lh $DMPDIR/*_${DATE}.tar.gz
|
||||
#!/bin/bash
|
||||
# Export CONTAFIN_ORACLE și FIRMANOUA, arhive separate tar.gz
|
||||
# Rulează din LXC 108: ./export-roa2.sh [18|21]
|
||||
# 18 = Oracle 18c (compatibil 11g/18c/19c) | 21 = Oracle 21c (default)
|
||||
#
|
||||
# Exemple:
|
||||
# ./export-roa2.sh 18 # Export din Oracle 18c pe port 1522
|
||||
# ./export-roa2.sh 21 # Export din Oracle 21c PDB roa2 pe port 1521
|
||||
# ./export-roa2.sh # Default: Oracle 21c
|
||||
|
||||
DATE=$(date +%Y%m%d_%H%M%S)
|
||||
SCHEMAS="CONTAFIN_ORACLE FIRMANOUA"
|
||||
ORACLE_VER=${1:-21}
|
||||
|
||||
if [ "$ORACLE_VER" == "18" ]; then
|
||||
CONTAINER="oracle18-xe"
|
||||
PORT="1521" # Port intern container (extern e 1522)
|
||||
SERVICE="XEPDB1" # Oracle 18c PDB (nu CDB!)
|
||||
DMPDIR="/opt/oracle18/oradata/dmpdir" # Volum separat pentru 18c
|
||||
SUFFIX="_v11.2"
|
||||
VERSION="11.2"
|
||||
echo "=== Export Oracle 18c PDB XEPDB1 (compatibil 11g/18c/19c) - $DATE ==="
|
||||
else
|
||||
CONTAINER="oracle-xe"
|
||||
PORT="1521"
|
||||
SERVICE="roa2" # Oracle 21c PDB roa2
|
||||
DMPDIR="/opt/oracle/oradata/dmpdir" # Volum pentru 21c
|
||||
SUFFIX="_v19"
|
||||
VERSION="19"
|
||||
echo "=== Export Oracle 21c PDB roa2 - $DATE ==="
|
||||
fi
|
||||
|
||||
# Verifică că containerul Docker rulează
|
||||
if ! docker ps --format '{{.Names}}' | grep -q "^${CONTAINER}$"; then
|
||||
echo "EROARE: Containerul $CONTAINER nu rulează!"
|
||||
echo ""
|
||||
echo "Pornește-l cu: docker start $CONTAINER"
|
||||
echo "Apoi așteaptă ~60s pentru startup Oracle."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Verifică că baza de date Oracle e OPEN
|
||||
DB_STATUS=$(docker exec $CONTAINER bash -c "echo 'SELECT status FROM v\$instance;' | sqlplus -s / as sysdba" 2>/dev/null | grep -E "OPEN|MOUNTED")
|
||||
if [ -z "$DB_STATUS" ]; then
|
||||
echo "EROARE: Baza de date Oracle nu e disponibilă!"
|
||||
echo "Containerul rulează dar Oracle nu e OPEN."
|
||||
echo "Verifică: docker logs $CONTAINER --tail 20"
|
||||
exit 1
|
||||
fi
|
||||
echo "Oracle status: $DB_STATUS"
|
||||
|
||||
# Verifică că DMPDIR există
|
||||
if [ ! -d "$DMPDIR" ]; then
|
||||
echo "EROARE: Director $DMPDIR nu există!"
|
||||
echo "Creează-l cu: mkdir -p $DMPDIR && chmod 777 $DMPDIR"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd $DMPDIR
|
||||
|
||||
for SCHEMA in $SCHEMAS; do
|
||||
echo "Exporting $SCHEMA from $CONTAINER..."
|
||||
docker exec $CONTAINER expdp system/romfastsoft@localhost:$PORT/$SERVICE \
|
||||
SCHEMAS=$SCHEMA \
|
||||
DIRECTORY=DMPDIR \
|
||||
DUMPFILE=${SCHEMA}_${DATE}.dmp \
|
||||
LOGFILE=${SCHEMA}_${DATE}.log \
|
||||
VERSION=$VERSION \
|
||||
EXCLUDE=STATISTICS
|
||||
|
||||
# Arhivare individuală
|
||||
ARCHIVE="${SCHEMA}${SUFFIX}_${DATE}.tar.gz"
|
||||
echo "Creating archive: $ARCHIVE"
|
||||
tar -czvf "$ARCHIVE" ${SCHEMA}_${DATE}.dmp ${SCHEMA}_${DATE}.log
|
||||
rm -f ${SCHEMA}_${DATE}.dmp ${SCHEMA}_${DATE}.log
|
||||
done
|
||||
|
||||
echo "=== Done! ==="
|
||||
ls -lh $DMPDIR/*_${DATE}.tar.gz
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
#!/bin/bash
|
||||
# =============================================================================
|
||||
# fix-sqlnet.sh - Startup script pentru Oracle 18c XE
|
||||
# =============================================================================
|
||||
# Scop: Restaurează sqlnet.ora cu suport pentru clienți vechi (Instant Client 11g)
|
||||
# la fiecare pornire a containerului Docker.
|
||||
#
|
||||
# Locație în container: /opt/oracle/scripts/startup/fix-sqlnet.sh
|
||||
# Executat automat de: gvenzl/oracle-xe la pornirea containerului
|
||||
#
|
||||
# Problema rezolvată: ORA-28040: No matching authentication protocol
|
||||
# Cauză: Oracle 18c implicit nu acceptă autentificare de la clienți 11g
|
||||
# =============================================================================
|
||||
|
||||
CONFIG_SOURCE="/opt/oracle/oradata/dbconfig/sqlnet.ora"
|
||||
CONFIG_DEST="/opt/oracle/product/18c/dbhomeXE/network/admin/sqlnet.ora"
|
||||
|
||||
if [ -f "$CONFIG_SOURCE" ]; then
|
||||
cp "$CONFIG_SOURCE" "$CONFIG_DEST"
|
||||
echo "[fix-sqlnet.sh] Copied custom sqlnet.ora with old auth protocol support"
|
||||
else
|
||||
echo "[fix-sqlnet.sh] WARNING: $CONFIG_SOURCE not found, using default sqlnet.ora"
|
||||
fi
|
||||
#!/bin/bash
|
||||
# =============================================================================
|
||||
# fix-sqlnet.sh - Startup script pentru Oracle 18c XE
|
||||
# =============================================================================
|
||||
# Scop: Restaurează sqlnet.ora cu suport pentru clienți vechi (Instant Client 11g)
|
||||
# la fiecare pornire a containerului Docker.
|
||||
#
|
||||
# Locație în container: /opt/oracle/scripts/startup/fix-sqlnet.sh
|
||||
# Executat automat de: gvenzl/oracle-xe la pornirea containerului
|
||||
#
|
||||
# Problema rezolvată: ORA-28040: No matching authentication protocol
|
||||
# Cauză: Oracle 18c implicit nu acceptă autentificare de la clienți 11g
|
||||
# =============================================================================
|
||||
|
||||
CONFIG_SOURCE="/opt/oracle/oradata/dbconfig/sqlnet.ora"
|
||||
CONFIG_DEST="/opt/oracle/product/18c/dbhomeXE/network/admin/sqlnet.ora"
|
||||
|
||||
if [ -f "$CONFIG_SOURCE" ]; then
|
||||
cp "$CONFIG_SOURCE" "$CONFIG_DEST"
|
||||
echo "[fix-sqlnet.sh] Copied custom sqlnet.ora with old auth protocol support"
|
||||
else
|
||||
echo "[fix-sqlnet.sh] WARNING: $CONFIG_SOURCE not found, using default sqlnet.ora"
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user