Clon home-a 11.2.0.4 z RAC dm03 na dm04

— tar home-a, ktory klonujemy na inna maszyne

[root@dm03dbadm01 product]# tar -cvf 11.2.0.4_clon.tar 11.2.0.4

— tworzymy katalog przejsciowy

[root@dm04dbadm01 ~]# mkdir /u01/install
[root@dm04dbadm01 ~]# chown oracle:oinstall /u01/install
[root@dm04dbadm01 ~]# chmod 777 /u01/install
[root@dm04dbadm02 ~]# mkdir /u01/install
[root@dm04dbadm02 ~]# chown oracle:oinstall /u01/install
[root@dm04dbadm02 ~]# chmod 777 /u01/install

— kopia na docelowe maszyny i rozpakowanie home-a

[root@dm03dbadm01 product]# scp 11.2.0.4_clon.tar oracle@dm04dbadm01:/u01/install
[root@dm03dbadm01 product]# scp 11.2.0.4_clon.tar oracle@dm04dbadm02:/u01/install
[root@dm04dbadm01 u01]# cp -Rp /u01/install/11.2.0.4_clon.tar /u01/app/oracle/product/
[root@dm04dbadm01 u01]# cd /u01/app/oracle/product/
[root@dm04dbadm01 product]# tar -xvf 11.2.0.4_clon.tar
[root@dm04dbadm02 ~]# cp -Rp /u01/install/11.2.0.4_clon.tar /u01/app/oracle/product/
[root@dm04dbadm02 ~]# cd /u01/app/oracle/product/
[root@dm04dbadm02 product]# tar -xvf 11.2.0.4_clon.tar

— na dwoch nodach export zmiennych pod nowego home-a

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0.4/dbhome_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/lib64
export CLASSPATH=$ORACLE_HOME/jdk:/$ORACLE_HOME/jlib:/$ORACLE_HOME/rdbms/jlib
export PATH=/home/oracle/.local/bin:/home/oracle/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/oracle/.local/bin:/home/oracle/bin:$ORACLE_HOME/bin

— clon node 1

ORA-24777: use of non-migratable database link not allowed

— aplikacja czasami chce zbyt dużo od klasycznego dblinka i należy zmienić parametry połączenia w samej aplikacji na shared, albo dblink-a

— tworzymy go z opcją shared i dorzucamy authenticated

CREATE SHARED PUBLIC DATABASE LINK podajemy_nazwe_linka
CONNECT TO podajemy_login IDENTIFIED BY "podajemy_haslo"
AUTHENTICATED BY podajemy_login IDENTIFIED BY "podajemy_haslo""
USING '(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = podajemy_hosta)(PORT = 1521)) (CONNECT_DATA = (SERVICE_NAME = podajemy_service_name)))';

ORA-02020: too many database links in use

— jak mamy za dużo otworzonych dblinków i jest to jedynie wybryk natury, to ubijamy (o ile można)

alter session close database link NAZWA_DBLINKA;
exec dbms_session.close_database_link (’NAZWA_DBLINKA’);

— a jak mamy zbyt mało, sprawdzamy:

show parameter open_links
open_links integer 4
open_links_per_instance integer 4

— zmieniamy parametry i przekręcamy db

alter system set open_li…

RDS Oracle DB REDO dodanie, usuniecie itd.

— dodanie plikow

EXEC rdsadmin.rdsadmin_util.add_logfile(p_size => '500M’);
EXEC rdsadmin.rdsadmin_util.add_logfile(p_size => '500M’);
EXEC rdsadmin.rdsadmin_util.add_logfile(p_size => '500M’);
EXEC rdsadmin.rdsadmin_util.add_logfile(p_size => '500M’);

— switchlog-a

EXEC rdsadmin.rdsadmin_util.switch_logfile;

— checkpoint

EXEC rdsadmin.rdsadmin_util.checkpoint;

— drop starych

EXEC rdsadmin.rdsadmin_util.drop_logfile(grp => 1);
EXEC rdsadmin.rdsadmin_util.drop_logfile(grp => 2);

Adrci – czyszczenie

— wyswietlenie home-ow

adrci> show homes
ADR Homes:
diag/rdbms/baza/baza

— attach do home-a

adrci> set home diag/rdbms/baza/baza

— wyswietlenie policy

adrci> show control
adrci> select SHORTP_POLICY,LONGP_POLICY from ADR_CONTROL;
ADR Home = /u01/diag/rdbms/baza/baza:
SHORTP_POLICY LONGP_POLICY
720 8760
1 rows fetched

— ustawienia

GATHER_FIXED_OBJECTS_STATS (x$, v$…)

— jeżeli wolno działają nam zapytania na x$, v$ itp. to warto sprawdzić kiedy były przeliczane statystyki:

select operation, start_time from DBA_OPTSTAT_OPERATIONS order by start_time;

— przeliczenie statystyk:

exec dbms_stats.gather_fixed_objects_stats;