Outils pour utilisateurs

Outils du site


bloc_note

Ceci est une ancienne révision du document !


Bloc Note rapide

#!/bin/bash
export LOG="/traces/pre_lanceur.log"

function mk_extract_sql(){
##### Backup t_versions_ihm
ORACLE_SID="$1"
FILEOUT="$2"
#select PRODUIT,APPLICATION,NVL(VERSION_SERVEUR,'0.0.0.0'),NVL(VERSION_IHM_BACKUP,'0.0.0.0'),NVL(VERSION_IHM_COURANTE,'0.0.0.0'), NVL(VERSION_IHM_BETA,'0.0.0.0'),DATE_MAJ from LANCEUR.T_VERSIONS_IHM;
echo "SET LINESIZE 1000
SET TRIMSPOOL ON
SET TRIMOUT ON
SET TERMOUT OFF
SET PAGESIZE 0
SET WRAP OFF
SET ECHO OFF
COL PRODUIT FORMAT A15
COL APPLICATION FORMAT A15
spool $FILEOUT
alter SESSION set NLS_DATE_FORMAT = 'dd-MON-yyyy';
select PRODUIT,APPLICATION,VERSION_SERVEUR,NVL(VERSION_IHM_BACKUP,'null'),VERSION_IHM_COURANTE, NVL(VERSION_IHM_BETA,'null') ,DATE_MAJ from LANCEUR.T_VERSIONS_IHM;
exit;
">/tmp/tmp_sql.sql
echo "---     selection des version en BD (/tmp/tmp_sql.sql)" >> "$LOG"
cat /tmp/tmp_sql.sql >> "$LOG"
su oracle -c ". /composants/oracle/adm/oracle_util.sh $ORACLE_SID > /dev/null 2>&1;
timeout 5 sqlplus -s / as sysdba @/tmp/tmp_sql.sql"
sed -i "s/\s\s\+/|/g"  "$FILEOUT"
rm -rf /tmp/tmp_sql.sql
}

function get_version_serveur_active(){
ORACLE_SID="$1"
echo "SET LINESIZE 1000
SET TRIMSPOOL ON
SET TRIMOUT ON
SET TERMOUT OFF
SET PAGESIZE 0
SET WRAP OFF
SET ECHO OFF
COL VERSION_SERVEUR 
spool /tmp/VERSION_SERVEUR_INSTALLEE.txt
select VERSION_SERVEUR from $USERBD.T_VERSIONS_IHM_COMPATIBLES ;
exit;
">/tmp/tmp_sql.sql
echo "---     selection des version en BD (/tmp/tmp_sql.sql)" >> "$LOG"
cat /tmp/tmp_sql.sql >> "$LOG"
su oracle -c ". /composants/oracle/adm/oracle_util.sh $ORACLE_SID > /dev/null 2>&1;
timeout 5 sqlplus -s / as sysdba @/tmp/tmp_sql.sql"
sed -i "s/\s\s\+/|/g"  "/tmp/VERSION_SERVEUR_INSTALLEE.txt"
cat /tmp/VERSION_SERVEUR_INSTALLEE.txt
rm -rf /tmp/VERSION_SERVEUR_INSTALLEE.txt
rm -rf /tmp/tmp_sql.sql
}

function get_t_version_ihm(){
ORACLE_SID=$1
APPLICATION=$2
OUTFILE="/tmp/tmp_t_ihm_version.tmp"
mk_extract_sql "$ORACLE_SID" "$OUTFILE"
while read ligne
  do
  PRODUIT=$(echo $ligne | awk -F"|" '{print $1}')
  APPLICATION=$(echo $ligne | awk -F"|" '{print $2}')
  VERSION_SERVEUR=$(echo $ligne | awk -F"|" '{print $3}')
  VERSION_IHM_BACKUP=$(echo $ligne | awk -F"|" '{print $4}')
  VERSION_IHM_COURANTE=$(echo $ligne | awk -F"|" '{print $5}')
  VERSION_IHM_BETA=$(echo $ligne | awk -F"|" '{print $6}')
  DATE_MAJ=$(echo $ligne | awk -F"|" '{print $7}')
  if [ "$ORACLE_SID" ] && [ "$PRODUIT" ] && [ "$APPLICATION" ] && [ "$VERSION_SERVEUR" ] && [ "$VERSION_IHM_BACKUP" ] && [ "$VERSION_IHM_COURANTE" ] && [ "$VERSION_IHM_BETA" ]
  then
  POST="${POST}&t_version_ihm[]="$ORACLE_SID":"$PRODUIT":"$APPLICATION":"$VERSION_SERVEUR":"$VERSION_IHM_BACKUP":"$VERSION_IHM_COURANTE":"$VERSION_IHM_BETA":"$DATE_MAJ
  echo "$VERSION_IHM_BACKUP" >> /tmp/ALL_VERSION_IHM.txt
  echo "$VERSION_IHM_COURANTE" >> /tmp/ALL_VERSION_IHM.txt
  echo "$VERSION_IHM_BETA" >> /tmp/ALL_VERSION_IHM.txt
  fi
done < /tmp/tmp_t_ihm_version.tmp
echo " --- Fichier "$OUTFILE" ---" >> "$LOG"
cat "$OUTFILE" >> "$LOG"
echo "---   --- FIN ---" >> "$LOG"
echo " ">> "$LOG"
rm -rf "$OUTFILE"
}

valide_t_version_ihm(){
ORACLE_SID=$1
echo -e "$GREY - Validation du schema lanceur ($ORACLE_SID) $NORM"
#### Requette valide repertoire
echo "SET WRAP OFF ;
set underline off ;
set heading off ;
spool /tmp/out1.sql ;
select count(DIRECTORY_NAME)from all_directories where DIRECTORY_NAME='LANCEUR_DEPOT_VERSIONS'; 
spool off; 
spool /tmp/out2.sql ;
select count(*) FROM all_tables where OWNER='LANCEUR'; 
spool off; 
spool /tmp/out3.sql ;
ALTER VIEW LANCEUR.V_VERSIONS_IHM_COMPATIBLES COMPILE; 
spool off; 
exit; 
" > /tmp/sql1.sql

su oracle -c ". /composants/oracle/adm/oracle_util.sh $ORACLE_SID > /dev/null 2>&1;
timeout 5 sqlplus -s / as sysdba @/tmp/sql1.sql
"
#ETAT_DIRECTORY=$(sed -e "s/\s\s\+//g" /tmp/out1.sql |grep -v "^\$")
ETAT_DIRECTORY=`grep -v "^\$" /tmp/out1.sql | sed -e "s/\s\s\+//g"`
ETAT_TABLE=`sed -e "s/\s\s\+//g" /tmp/out2.sql |grep -v "^\$"`
ETAT_VIEW=`grep "altered." /tmp/out3.sql | wc -l `

rm -rf /tmp/out1.sql /tmp/out2.sql /tmp/out3.sql

if [[ $ETAT_DIRECTORY -eq 1 ]] && [ "$ETAT_TABLE" -eq 2 ] && [ "$ETAT_VIEW" -eq 1 ]
then
VALIDATION=0
echo "Validation ok pour le schema lanceur" >> "$LOG"
else
VALIDATION=1
echo "Validation KO pour le schema lanceur" >> "$LOG"
echo "ETAT_DIRECTORY:$ETAT_DIRECTORY (1), ETAT_TABLE:$ETAT_TABLE (2), ETAT_VIEW:$ETAT_VIEW (1)" >> "$LOG"
fi

}
bloc_note.1736922564.txt.gz · Dernière modification : 2025/01/15 07:29 de admin