Tuesday, 10 April 2012
BIOS settings for VirtualBox
If you use VirtualBox you might check out a few BIOS settings regarding virtualization.
Running a 64 bit guest OS needs you to enable the VT-settings (on my HP ProBook 6550b it's called "Virtualization Technology setting"). On other notebooks it might be called otherwise.
Make sure you reboot your OS.
Another thing to consider is so called "trusted execution" or "Data Execution Prevention". Of course you want this enabled to be more secure against mal-ware. However it turns out that it is quite a performance-drain when using VirtualBox. A colleague who tipped me told that he copied a VM with SOASuite to his new laptop, where Weblogic need 15 minutes to start! After a change in the settings he managed to decrease this to 5 minutes. Which is pretty normal for a Weblogic startup. He couldn't remember the settings, it had something to do with "security".
So I turned "Data Execution Prevention" (as it is called on my HP) off and it turns out that my complete VM "feels" faster. I did not time my VM yet, but it seems to cope with the performance improvement of my colleague (thanks).
Wednesday, 4 April 2012
Unexpire passwords of Meta Data Service Repository
Today I ran into the unability to deploy my SOA/BPM project to my development SOASuite installation in my Virtual Machine. I haven't used it for a while, and it turns out that the passwords of my MDS users in the database are expired.
Since it is my personal dedicated development server I don't want passwords to expire at all. So I found out that I have to update the default profile to have the password expiration turn of:
Since it is my personal dedicated development server I don't want passwords to expire at all. So I found out that I have to update the default profile to have the password expiration turn of:
ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED PASSWORD_LIFE_TIME UNLIMITED;To check this you can use the following query:
select LIMIT from dba_profiles where RESOURCE_NAME ='FAILED_LOGIN_ATTEMPTS' and PROFILE = (select profile from dba_users where username like 'DEV_%');But still the passwords are expired... You can alter user every MDS user one by one. But you can also use the following piece of plsql (run as System):
declare cursor c_ddl is select 'alter user '||username ||' identified by welcome1' ddl from all_users where username like 'DEV_%'; begin for r_ddl in c_ddl loop execute immediate r_ddl.ddl; end loop; end;You should change the 'DEV_%' in the where clause of the cursor to reflect the prefix of the MDS users in your system. And to possible show errors you might want to catch exceptions within a local block around the execute immediate.