Rechercher dans ce blog

mercredi 18 mai 2011

Memo de commandes unix, oracle

commandesexlpication
Prtconf  voir la config SYSTEM
lsvg rac_fg1voir vg detail
lsvg  -l rac_fg1voir les raw devices
cat /etc/olr.locchemin de  inventory
olrconfig_loc=/u01/app/grid/11.2.0/cdata/aix_rac2.olr
crs_home=/u01/app/grid/11.2.0
Cat  /etc/oracle/ocr.loc 
ocrcheck -local 
ocrdump -local olr.lst    
mkgroupcreation des  groupes
mkusercreation  des user os
passwd pour modifier  les  passwrd
./runcluvfy.sh stage -pre crsinst -n aix-rac1,aix-rac2 -r 11gR2 -verbosepre requis  avant installation
cluvfynoeuds du  rac  se  voient
./runcluvfy.sh comp ssa -n aix-rac1,aix-rac2 -verbosecheck des  shared storage
./runcluvfy.sh comp admprv -n aix-rac1,aix-rac2 -o user_equivcheck  user equivalence
cluvfy comp clocksync -n allntp  + ctssd
./runcluvfy.sh stage -pre crsinst -n aix-rac1,aix-rac2 -r 11gR2 -verbose
  -fixup -fixupdir /tmp
l option fixup
oifcfg iflist -pliste les interfaces ca doit  etre identiques des  2  cotes.
./cluvfy comp nodecon -i aggr1 -n mtlunt100,mtlunt101 -verboseconnectivite   avec l interface -i
./runcluvfy.sh comp nodecon -n aix-rac1,aix-rac2connectivité entre les  noeuds
./runcluvfy.sh comp sys -n aix-rac1,aix-rac2 -p crs -verbosepre requis  systemes
scp -r grid@aix-rac1:/u01/app/grid/11.2.0/inst/grid/* .copier depuis le  noeud 2 le directory grid
ssh  aix-rac1  date;datecheck  les  date entre les 2  noeuds
nslookup mycluster-scancheck dns
crsctl status resource -tcheck des resources
 crsctl query crs softwareversionversion clusterware
crsctl query crs activeversion 
cluvfy stage -post crsinst -n aix_rac1,aix_rac2
cluvfy comp nodecon –n all –verbose
post  install  check
crsctl check cluster -alltout les  elements  du cluster
crsctl query css votediskavoir tous les  voting  disk (nbr  impair)
ocrconfig -local -manualbackupbackup  manuel , le premier  backup a lieu  lors de l installation 
ocrconfig -local  -showbackuplocal  registry  (ASM  standalone)
ocrconfig -showbackupvoit les  backups de  l ocr
ocrconfig -backuploc /home/oracledefinit  un Path  pour  les  backups  manuels
ocrconfig -manualbackupexecute  un backup manuel
crsctl status servervoir les  serveurs + online/offline
crsctl query crs administratorqui est  admin du  cluster 
srvctl  config  serverpoolvoir  de  maniere  generale
crsctl status serverpool -fvoir  la config   complete  avec  mmin max  importance
srvctl  status  serverpoolvoir les serverpool  en detail
./runcluvfy.sh stage -pre dbinst -n all -verbosecheck  avant  install db  software
rman  target  /  catalog  catalog_rman/XXXXr@mtlunt68:1521/catalogbackup  db  avec  catalog 
srvctl start diskgroup -g DATA -n "aix_rac2,aix_rac1"demarre  un dg 
crsctl getperm resource  ora.scan1.vipName: ora.scan1.vip
owner:root:rwx,pgrp:system:r-x,other::r--,group:oinstall:r-x,user:grid:r-x
srvctl  stop instance  -d RACTEST -i RACTEST1arrete  une  instance  du rac
srvctl  status  scanSCAN VIP scan1 is enabled
SCAN VIP scan1 is running on node aix_rac1
$GRID_HOME/bin/cluvfy comp scancheck  des scans
 srvctl   status  SCAN_LISTENER 
srvctl config scanSCAN name: aix-scan, Network: 1/192.168.100.0/255.255.252.0/en2
SCAN VIP name: scan1, IP: /aix-scan1/192.168.100.204
srvctl stop scan_listener  -i 1 
srvctl start scan_listener  -i 1 
srvctl config scan_listenerSCAN Listener LISTENER_SCAN1 exists. Port: TCP:2115
srvctl  relocate  scan_listener  -i 3relocate de  l IP  scan  3
olsnodes -t savoir si le serveur   pinned ==>number est  fixe
crsctl unpin css -n unpinned  a serveur
srvctl status  listenerListener LISTENER is enabled
Listener LISTENER is running on node(s): aix_rac1,aix_rac2
srvctl start listener 
srvctl   stop  listener  -n ppr-mtlunt86 
srvctl stop listener 
srvctl  config  listenerName: LISTENER
Network: 1, Owner: grid
Home: <CRS home>
End points: TCP:1521
local_listener  sur  node 1(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aix-vip1)(PORT=1521))))
local_listener  sur  node 2(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aix-vip2)(PORT=1521))))
parametre  du spfile   des bd remote_listener aix-scan:1521
/etc/ohasd  stoparret du  clusterware
local_listener  sur  node 1(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aix-vip1)(PORT=1521))))
local_listener  sur  node 2(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aix-vip2)(PORT=1521))))
remote_listener(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aix-vip2)(PORT=1521))))
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aix-vip1)(PORT=1521))))
crsctl  check cluster -allcheck du  cluster 
crsctl status  resource  ora.mg.db -pdetail   sur la  ressource  mg
crsctl  start resource MG.db -n aix_rac1start  de  la ressource   sur noeud  1
srvctl relocate service -d PREPROD -s  relocate_dba -i PREPROD2 -t PREPROD1relocate de  preprod 1 vers  preprod2
le service  tourne   au  depart  sur 1
srvctl  add  service  -d ADOPT -s L_PBSTSC_CI -r ADOPT1,ADOPT2Loption   r  c est  les  instances  ici  c est sur les 2  noeuds
srvctl  start  service  -d ADOPT -s L_PBSTSC_CI 
srvctl   stop  asm  -farret de   l asm  en  mode force 
srvctl  config  database -d  ADOPTVALdonne la config   de  la resource   bd,inclus le  role  , les  services …
 srvctl  modify   database -d  ADOPTVAL  -a ADOPT_DATAmodifie  le  nom des dg
 srvctl  add  service  -d ADOPTVAL -s L_PBSTSC_CI sur  standalone  avec ASM 
 dans  ASMcmd
md_backup ppr-mtlunt85_asm_Metadata_backup.bck
dans  asmcmd   backup des metadata  de l asm
 cluvfy comp admprv -o db_config -d /apps/db/11.2.0 -n ppr-mtlunt85 -verboseapres  le dbca  en  rac pour les  privileges 
$ORACLE_HOME/bin/crsctl start res ora.cssdstart  css +diskmon
srvctl add asmrajout de la resource   ASM
/etc/oracle/scls_scr/qas-mtlunt89/root/crsstartdonne des  info  sur le mode demarrage Linux
/appl/grid/install/cluster.iniclustername
srvctl   start  diskgroup -g TESTBACKUP  -n mtlunt101 
crsctl stat res -w "TYPE = ora.scan_listener.type"NAME=ora.LISTENER_SCAN1.lsnr
TYPE=ora.scan_listener.type
TARGET=ONLINE
STATE=ONLINE on mtlunt100

NAME=ora.LISTENER_SCAN2.lsnr
TYPE=ora.scan_listener.type
TARGET=ONLINE
STATE=ONLINE on mtlunt101

NAME=ora.LISTENER_SCAN3.lsnr
TYPE=ora.scan_listener.type
TARGET=ONLINE
STATE=ONLINE on mtlunt101
lsnrctl status LISTENER_SCAN2 
crsctl  stat  res  -t  |  grep   db  |  while read  line  ^Jdo^Jcrsctl  status  resource $line -f^Jecho  "--------------------------------------"^Jdone info   complet   crs  
srvctl  modify  database  -d TBX -p '+CLUSTER_BD/TBX/PARAMETERFILE/spfile.334.778421477'modification du path  du  spfile.
srvctl enable cvu  -n mtlunt002 check sur clusterware  11.2.0.2

RAC 11GR2 : aspects reseaux

Exemple   base  sur   un rac  2  noeuds :
Gestion des  IP  par  gns   :

nodeIPdefined nametypeassigné parresolve by
gerer par le cluster oracle A VOIR AVEC  LES ADMIN
DHCP/DNS
A VOIR AVECLES
ADMIN DNS
virtualfixedns
aix-rac1192.168.100.180aix-rac1publicfixegns
aix-rac1172.16.22.180rac1-privprivéfixegns
gerer par le cluster oracle rac-vipvirtualdhcpgns
aix-rac2192.168.100.181aix-rac2publicfixegns
aix-rac2172.16.22.181rac2-privprivéfixegns
gerer par le cluster oracle  virtualdhcpgns
gerer par le cluster oracle  virtualdhcpgns
gerer par le cluster oracle  virtualdhcpgns
gerer par le cluster oracle  virtualdhcpgns


Sans l option gns  il faut  des ip  fixes renseignées dans  le fichier hosts :


network identityNodeIPdefined name
adresse host 1Aix_rac1192.168.100.180aix-rac1
private1Aix_rac1172.16.21.180rac1-priv
adresse vip1192.168.100.102rac-vip1
adress host 2Aix_rac2192.168.100.181aix-rac2
private2Aix_rac2172.16.21.181rac2-priv
adresse vip2192.168.100.103rac-vip2
scan vip1gerer par le cluster oracle192.168.100.204aix-scan


Le fichier hosts  sans  gns :

127.0.0.1       loopback localhost      # loopback (lo0) name/address
172.16.21.180   rac1-priv #interconnect rac1
172.16.21.181   rac2-priv #interconnect rac2
172.16.22.181   rac2_nim
172.16.22.202   aixnim
192.168.100.180 aix_rac1
192.168.100.181 aix_rac2
192.168.100.102 aix-vip1
192.168.100.103 aix-vip2
192.168.100.204 aix-scan1  aix-scan
#192.168.100.205 aix-scan2   aix-scan
#192.168.100.206 aix-scan3  aix-scan
Avec  une configuration gns on  aurait  plus  besoin de  garnir le  fichier hosts.

Principe :

Sur  les  serveurs  AIX on a  donc  2 listener manager  par  le users os  grid.
Mais pour les  modifications il  faut etre  root :

crsctl getperm resource  ora.scan1.vip
Name: ora.scan1.vip
owner:root:rwx,pgrp:system:r-x,other::r--,group:oinstall:r-x,user:grid:r-x


LISTENER_SCAN<X>  gerer par  notre user grid
LISTENER  geré par le user  grid
ps -ef | grep  tns | grep –v  grep
    grid  9437238        1   0   Apr 08      -  0:09 /u01/app/grid/11.2.0/bin/tnslsnr LISTENER -inherit
    grid 11731076        1   0   Apr 08      -  0:09 /u01/app/grid/11.2.0/bin/tnslsnr LISTENER_SCAN1 -inherit

Check  du  LISTENER_SCAN1 :

Connecter  en  tant   que user  grid.

srvctl  status  scan
SCAN VIP scan1 is enabled
SCAN VIP scan1 is running on node aix_rac1
srvctl config scan
SCAN name: aix-scan, Network: 1/192.168.100.0/255.255.252.0/en2
SCAN VIP name: scan1, IP: /aix-scan1/192.168.100.204
srvctl stop scan_listener  -i 1

srvctl start scan_listener  -i 1

srvctl config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:2115


Check du  listener  LISTENER :


srvctl status  listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): aix_rac1,aix_rac2
srvctl start listener

srvctl stop listener

srvctl  config  listener
Name: LISTENER
Network: 1, Owner: grid
Home: <CRS home>
End points: TCP:1521


Configuration au  niveau base :

La  scan  remplace  le  jeux  de  vip pour le  parametre remote_listener.
Si on  a   10  nœud  on a   qu  une  seule  ligne  a mettre.



local_listener  sur  node 1
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aix-vip1)(PORT=1521))))
local_listener  sur  node 2
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aix-vip2)(PORT=1521))))
remote_listener
 aix-scan:1521 

En   10g  c etait  :
Le  parametre  remote_listener inclus  toute  les  vip

local_listener  sur  node 1
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aix-vip1)(PORT=1521))))
local_listener  sur  node 2
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aix-vip2)(PORT=1521))))
remote_listener
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aix-vip2)(PORT=1521))))
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=aix-vip1)(PORT=1521))))


Creation d  un  service pour tester :

#srvctl  add  service -s testscan -d RACTEST -r RACTEST1,RACTEST2
En user  os  oracle
srvctl  start service  -s testscan -d RACTEST

La partie  cliente

Les  connections  clients  doive nt   resoudre les  ip scan,et  vip sinon  on aura une ORA-12545.
Connection
Sqlplus   mg@aix-scan:1521/testscan
Si  pas de resolution des ip alors  on  aura  une
ORA-12545
En  fait  le  scan redirige vers  le aix-vip<1| 2>  pas  l adresse ip.
Sur  mon client  w7 j ai  modifié le  fichier  c:\windows\system32\driver\etc\hosts pour y  inclure toute  les ip  et  les  nom de  hosts

Modification de  configuration :

Listener_scan1

Queue_size/SDU :

Ca se  fait  au  niveau   du  fichier listener.ora en rajoutant  (docid  1292915.1)
LISTENER_SCAN2=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2)))) # line added by Agent
LISTENER_ASM_NETRAC=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_ASM_NETRAC)))) # line added by Agent
LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))))# line added by Agent
#LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1)))) # line added by Agent
LISTENER_SCAN1 =
 (DESCRIPTION_LIST =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = IPC)(KEY = LISTENER_SCAN1))
  )
(DESCRIPTION =
   (SDU = 10240)
  (ADDRESS = (PROTOCOL = TCP)(HOST =192.168.100.204)(PORT = 1521)(QUEUESIZE=199))  --defaut  128
  )
)
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON # line added by Agent
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_ASM_NETRAC=ON # line added by Agent
ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN2=ON # line added by Agent
--c est  pour tracer  et checker  ca configuration
TRACE_LEVEL_LISTENER_SCAN1=16
DIAG_ADR_ENABLED_LISTENER_SCAN1=off
TRACE_DIRECTORY_LISTENER_SCAN1=/u01/app/11.2.0/grid/network/trace

Ports :

1 en  root
srvctl modify scan_listener -p 2115
en grid
srvctl stop scan_listener
srvctl stop scan_listener
srvctl  config scan_listener
SCAN Listener LISTENER_SCAN1 exists. Port: TCP:2115
Modification au  niveau  db :
alter   system  set remote_listener='aix-scan:2115' scope=both;

listener:

Modification du port   d’écoute :

Par défaut le  listener  se  nomme  listener  et écoute sur le  port  1521.
L’ objectif est de  modifier le  port d ecoute de   1521 a 1421.
Ca  va impliquer  aussi   une modification du paramètre  local_listener  de la base RAC.
Aspect  listener et  clusterware
En  root :
# srvctl  modify  listener -l LISTENER -p 1421
# su  -  grid
#srvctl  stop  listener -l LISTENER
#srvctl  start  listener -l LISTENER
#srvctl  config  listener -l LISTENER
Name: LISTENER
Network: 1, Owner: grid
Home: <CRS home>
End points: TCP:1421
Aspect bd :
Su  -  oracle
#sqlplus   / as sysdba
SQL> show  parameter  listener
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
listener_networks                    string
local_listener                       string      (DESCRIPTION=(ADDRESS_LIST=(AD
                                                 DRESS=(PROTOCOL=TCP)(HOST=aix-
                                                 vip1)(PORT=1521))))
remote_listener                      string      aix-scan:2115

 alter system set local_listener='(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =aix-vip1)(PORT = 1421)))' sid='RACTEST1'  ;
 alter system set local_listener='(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =aix-vip2)(PORT = 1421)))' sid='RACTEST2'  ;

Arret  relance  d une  vip  et probleme listener

Suite  au  redemarrage du  clusterware  j ai noté ce probleme :

# crsctl status resource -t
ora.aix_rac1.vip
      1        ONLINE  INTERMEDIATE aix_rac2                 FAILED OVER
-
Arret  de  la vip :
# srvctl  status  vip  -n aix_rac1
VIP aix-vip1 is enabled
VIP aix-vip1 is running on node: aix_rac1
·         En   fait  on  ne peut  pas arrêter  la  vip  comme ca  car il y a des dépendances :
# srvctl  stop  vip  -n aix_rac1
PRCR-1014 : Failed to stop resource ora.aix_rac1.vip
PRCR-1065 : Failed to stop resource ora.aix_rac1.vip
CRS-2529: Unable to act on 'ora.aix_rac1.vip' because that would require stopping or relocating 'ora.LISTENER.lsnr', but the force option was not specified
# srvctl  stop listener -l LISTENER  -n aix_rac1
# srvctl  stop  vip  -n aix_rac1
PRCR-1014 : Failed to stop resource ora.aix_rac1.vip
PRCR-1065 : Failed to stop resource ora.aix_rac1.vip
CRS-2529: Unable to act on 'ora.aix_rac1.vip' because that would require stopping or relocating 'ora.ractest.testscan.svc', but the force option was not specified
# srvctl  stop scan -i 1
PRCR-1065 : Failed to stop resource ora.scan1.vip
CRS-2529: Unable to act on 'ora.scan1.vip' because that would require stopping or relocating 'ora.LISTENER_SCAN1.lsnr', but the force option was not specified
# srvctl stop scan_listener -i 1
# srvctl  stop scan -i 1
# srvctl  stop listener -l LISTENER  -n aix_rac1
# srvctl  stop  vip  -n aix_rac1
PRCR-1014 : Failed to stop resource ora.aix_rac1.vip
PRCR-1065 : Failed to stop resource ora.aix_rac1.vip
CRS-2529: Unable to act on 'ora.aix_rac1.vip' because that would require stopping or relocating 'ora.ractest.testscan.svc', but the force option was not specified
# srvctl  stop  vip  -n aix_rac1
# srvctl  stop  service -s testscan  -d RACTEST -n aix_rac1
# srvctl  stop  vip  -n aix_rac1
# srvctl  start  vip  -n aix_rac1
# srvctl  start  service -s testscan  -d RACTEST -n aix_rac1
# srvctl  start scan -i 1
# srvctl start scan_listener -i 1
Apres  tous  semble  OK  mais   le  listener  LISTENER  n’écoute  aucun service.

#lsnrctl  service listener
The listener supports no services
The command completed successfully
En  fin de compte j ai  fait  u n arrêt  de la db  en  locale :
#srvctl  stop instance  -d RACTEST -i RACTEST1
#srvctl  start instance  -d RACTEST -i RACTEST1

Donc   dans notre  cas   :
1 – arret du  listener  scan
2 – arret  du listener
3 – arret des services
4--- arret de la vip
Start  en  sens inverse
Eventuellement  arret de la  db et  du  listener.