vrijdag 10 december 2010

Installatie Oracle SOA Suite (6)

Vandaag wordt de exercitie herhaald, aangezien de oude hardware gerecycled is en er nu nieuwe hardware beschikbaar is: een Windows 7 machine.
De "oude" virtuele omgeving met Vista is eveneens beschikbaar, en ach, waarom niet op allebei de SOA Suite installeren?
Hierbij het verslag:
Allereerst is op de Windows 7 machine een virtuele omgeving geïnstalleerd: de zogenaamde Windows XP Mode. Die krijg je er "gratis" bij in Windows 7. Zou het mogelijk zijn om het daar in te installeren? In elk geval lukt installatie van Oracle XE (de database) wel. En dus kunnen we de RCU ook wel gaan draaien. En hoe zetten we de database-parameter processes ook al weer op 200 (is default 40)? Het prachtige webtooltje "Database home page" laat slechts de parameters zien, dus moeten we toch onze DBA-kennis oprakelen een een SQL-plus promptje opstarten:

SQL> connect sys as sysdba
Enter password:
Connected.
SQL>

en vervolgens:
SQL> alter system set processes=200 scope=spfile;

Deze zet de parameter en schrijft hem weg in het parameter bestand spfile, zodat de database na een herstart deze waarde behoudt.

We blijken ook nog te moeten herstarten met:

SQL> shutdown immediate

en vervolgens:

SQL> startup

en vervolgens checken we de parameter waarde met:

SQL> show parameter processes

NAME TYPE VALUE
------------------------------------ ----------- ---------
aq_tm_processes integer 0
db_writer_processes integer 1
gcs_server_processes integer 0
job_queue_processes integer 4
log_archive_max_processes integer 2
processes integer 200

en hoera! het werkt. Dat was trouwens op de Vista virtuele omgeving :)

Vervolgens gaan we Weblogic installeren. Voor de Vista 32-bits omgeving kunnen we de win32-installer gebruiken, maar voor ons 64-bits OS gebruiken we de wls_1033_generic.jar, die we dus met een java-64-runtime moeten uitvoeren.

Hierna gaan we nog even op de (32-bits) Vista-omgeving de Weblogic-server opstarten, en inderdaad verschijnt na een tijdje het login-scherm in de browser (http://localhost:7001/console/).
(weblogic/manager1)

Hetzelfde truukje proberen we op "Windows XP Mode", maar daar lopen we in eerste instantie al tegen de rare Windows XP paden aan, namen met spaties.... dus verplaatsen we de zip-file naar een andere map zonder spaties, zodat we die kunnen uitpakken. Starten we dan de rcu.bat op, dan verschijnt, naast de meldingen over de characterset en de database-versie die niet blokkeren lijken te zijn, de melding dat de "shared pool size" te klein is: hij moet minimaal 147000 KB zijn en is slechts 146000KB.
Helaas trap ik in de valkuil door de parameter "shared_pool_size" te vergroten, deze was trouwens 0, maar dan kan ik de database niet meer opstarten, want de sga_target is te klein. Hoe zat dat ook al weer? Ooit heb ik het geleerd op de Oracle 10g database cursus.
De shared-pool size wordt dynamisch aangepast aan de vraag, zeg maar, en de sga_target geeft het maximum aan. Dus moeten we de sga-target vergroten, maar dat kan niet, want de database is niet opgestart!!! ORA-1034 ORACLE not available, weet je wel? En was het vroeger zo makkelijk als de waarde van de parameter veranderen in het tekstbestandje init.ora, nu maakt Oracle slechts gebruik van een binair bestand, genaamd spfile, en hoe wijzigen we daar ook alweer een waarde?
Andere aanpak: we starten de database op met "startup pfile=init.ora" waarbij we een tekstbestandje init.ora hebben aangemaakt met slechts de inhoud:
"
spfile=C:\oraclexe\app\oracle\product\10.2.0\server\dbs\SPFILEXE.ora
shared_pool_size=0
"
Uiteraard is het pad naar de spfile systeemafhankelijk, en vergeet niet dat windows xp de extensie .txt verbergt!!! (maar Oracle ziet hem wel), en zo krijgen we de database opgestart.
Laten we het nu goed doen: de sga-target vergroten:
alter system set sga_target=160000000 scope=spfile;
en natuurlijk de shared_pool_size op 0 zetten....
en vervolgens draaien we met succes de RCU-utility.
Nu gaan we de 64-bits Java development kit (JDK) installeren, want die is nodig om Weblogic te kunnen installeren. Of toch niet, want we krijgen de melding dat het niet een geldige 32-bits executable is..... Dus toch maar de weblogic 32-bits installeren? Conclusie Windows XP Mode kan alleen 32-bits software uitvoeren....
En inderdaad gelukkig lukt het wel om Weblogic 32-bits te installeren.