Oracle
Acces base oracle
Sudo su - oracle
Setup l'affichage et voir les session connecte à la basse :
SET pages 400 lines 200
COLUMN spid FORMAT A10
COLUMN username FORMAT A20
COLUMN program FORMAT A45
SELECT s.inst_id,
s.sid,
s.serial#,
p.spid,
s.username,
s.program
FROM gv$session s
JOIN gv$process p ON p.addr = s.paddr AND p.inst_id = s.inst_id
WHERE s.type != 'BACKGROUND';
Générer le path et sid
export PATH=$PATH:/app/oracle/product/11.2.0.4/dbhome_1/bin/
export ORACLE_SID=Nom database
export ORACLE_HOME=/app/oracle/product/11.2.0.4/dbhome_1/
. oraenv mettre le sid et path en rapport
sqlplus / as sysdba
drop user TABLE cascade;
Vérifier et débloquer un compte verrouillé
export ORACLE_HOME=/u01/app/oracle/product/11gr2/db_1
export PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_SID=gcldev
sqlplus /nolog
connect / as sysdba
SELECT username, account_status FROM dba_users;
SELECT username, account_status, created, lock_date, expiry_date FROM dba_users WHERE account_status != 'OPEN';
ALTER USER nomducompte ACCOUNT UNLOCK;
ALTER USER nomducompte BY new_password;
Problème demarrage timezone
ps -ef | grep pmon
Pour redémarrer les bases manuellement :
export ORACLE_HOME=/app/oracle/product/10.2.0.5SE/dbhome_1
export ORACLE_BASE=/app/oracle/product/10.2.0.5SE/dbhome_1
export ORACLE_SID=PIMS1
sqlplus / as sysdba
Démarrer la base
startup
Pour arrêter la base:
shutdown immediate
============================================================================
Lorsque l'on exécute la commande (sqlplus / as sysdba) surtout sur la base l'on obtient le message d'erreur suivant :
ORA-01804: failure to initialize timezone information
Solution :
Prendre un autre fichier timezone sur n'importe quel répertoire :
export ORA_TZFILE=/app/oracle/product/11.2.0.4/dbhome_1/oracore/zoneinfo/timezlrg_14.dat
============================================================================
Pour supprimer les logs de listener de plus de Xjour (exemple +24)
cd /app/oracle/diag/tnslsnr/prdoran1/listener/alert
find . -name "log_*.xml" -ctime +24 -exec rm -f {} \;
Pour lister les traces +15 j :
find . -name "*.trc" -ctime +15 -exec ls -l {} \;
Avant de remplacer "ls -l" par "rm -f" assure toi que la base est démarrée depuis plus de 15 j
============================================================================
Il existe des bases selon la version d'oracle, pour les lister :
cd /app/oracle/product/
Ensuite la version ex :
cd /app/oracle/product/11.2.0.4/dbhome_1/dbs/
Ce qui nous intéresse c'est le init* pour savoir le nom de la base (ex: la base initNODHOS1.ora ça représente la base NODHOS1 donc pour l'utiliser on doit lancer l'export :
export ORACLE_HOME=/app/oracle/product/11.2.0.4/dbhome_1
ensuite :
export ORACLE_SID=NODHOS1
Après on va pouvoir lancer sqlplus en tant que NODHOS1 et démarrer la base