Voer de volgende stappen uit voor een installatie of een upgrade:
•Controleer dat Oracle RDBMS 11.2.0.3 of 12.1.0.2 Standard Edition One, Standard Edition of Enterprise Edition is geinstalleerd en geconfigureerd (zie volgende hoofdstuk voor de stappen). De werking van Invantive Estate met andere Oracle RDBMS-versies is niet gegarandeerd.
•De databasekarakterset moet AL32UTF8 zijn.
•[UNIX/Linux] De NLS_LANG omgevingsvariabele instellen op ‘DUTCH_THE NETHERLANDS.AL32UTF8’ voor alle gebruikers, op de webserver en op de databaseserver.
•[Windows] De HKLM\Software\Oracle\Key_Ora*\NLS_LANG registervariabele instellen op ‘DUTCH_THE NETHERLANDS.AL32UTF8’ voor alle gebruikers, op de webserver en op de databaseserver:
•Afhankelijk van het geldende beveiligingsbeleid wil je eventueel het automatisch blokkeren van accounts bij meerdere foutieve aanmeldpogingen uitschakelen. Het komt regelmatig voor dat een wachtwoord gewijzigd wordt en de auto-retry functionaliteit van Invantive Estate zorgt er dan voor dat een account geblokkeerd wordt. Meld je aan als ‘sys’ (bijvoorbeeld met SQL*Plus) en voer uit:
alter profile default
limit
failed_login_attempts unlimited
password_life_time unlimited
password_reuse_time unlimited
password_reuse_max unlimited
password_lock_time 1
password_grace_time 30;
•Verander eventueel de globale naam van de service:
alter database rename global_name to "orcl11r1.NAAMBEDRIJF.nl" scope=spfile; -- 11g R1
alter database rename global_name to "orcl11r2.NAAMBEDRIJF.nl"; -- 11g R2
•Verander eventueel de naam waaronder de database zich registreert bij de listener:
alter system set service_names='orcl11r1.NAAMBEDRIJF.nl' scope=spfile;
alter system set db_domain='NAAMBEDRIJF.nl' scope=spfile;
•Verander de NLS-instellingen van de databaseserver:
alter system set nls_language='DUTCH' scope=spfile;
alter system set nls_territory='THE NETHERLANDS' scope=spfile;
•Verander de parameter memory_target in tenminste 40 Mb maal het aantal gelijktijdige gebruikers met een minimum van 768 Mb, bijvoorbeeld met:
alter system set memory_target=512m scope=spfile;
•Zet memory_max_target op tenminste dezelfde waarde als memory_target en eventueel hoger.
•Vergeet niet om sga_target en pga_aggregate_target op 0 te zetten, bijvoorbeeld met:
alter system set sga_target=0 scope=spfile;
alter system set pga_aggregate_target=0 scope=spfile;
alter system set shared_pool_reserved_size=0 scope=spfile;
•Zorg er voor dat dumps niet de hele server in beslag gaan nemen:
alter system set max_dump_file_size="8M";
•Controleer dat automatic memory management optimaal gebruikt wordt:
select name
, value
from v$parameter
where 1=1
and name like '%size'
and value <> '0'
and name not like 'sga%'
and name not like 'db_block%'
and name not like 'max_dump%'
and name not like '%percent%'
and name not like '%message%'
and name not like 'object_cache%'
and name not like 'db_recovery_file_dest_size%'
•Om vollopen van de schijven te vermijden in het geval van storingen wil je misschien de automatische registratie van incidenten versoepelen:
$ adrci
#
# Reduce minimum duration for trace files to 2 hours.
# And 8 hours for incidents.
#
set control (shortp_policy = 2)
set control (longp_policy = 8)
#
# Or regularly execute:
#
set base /opt/prd/oracle
show homes
set homepath diag/rdbms/prd11r2/prd11r2
show incident
purge -age 1440
set control (shortp_policy = 2)
set control (longp_policy = 8)
set homepath diag/tnslsnr/ws86/listener
show incident
purge -age 1440
•Mocht de webfrontend niet rap werken in bijvoorbeeld het processen scherm en maak je gebruik van het <OMGEVING>_webschema voor de webfrontend, stel dan eventueel de database optimizer anders in:
alter system set "_optimizer_cost_based_transformation" = off scope=both
•Je kunt bij een productie-omgeving controleren of de gegevens op de juiste plek terechtkomen door meerdere keren van log bestand te wisselen met onderstaand statement. Wijzig indien nodig de log_archive_dest_1 parameter.
alter system switch logfile
•Binnen demo-installaties kun je eventueel het massaal starten van databasejobs en bijbehorende traagheid vermijden door ze uit te schakelen:
begin
for r_job
in
( select sjb.owner
, sjb.job_name
, sjb.enabled
from dba_scheduler_jobs sjb
where sjb.enabled = 'TRUE'
order
by sjb.owner
, sjb.job_name
)
loop
begin
dbms_scheduler.stop_job(r_job.owner || '.' || r_job.job_name, true);
exception
when others
then
null;
end;
dbms_scheduler.disable(r_job.owner || '.' || r_job.job_name);
end loop;
end;