Thursday, April 27, 2006

Problems with Oracle VMware

I've some performance problems with the Oracle VMware:
- I don't have enough memory in my laptop (see below picture), you can correct this by changing the memory settings (from 720MB to 640MB)
- I've also speedstep technology on my processor, which result in less performance when the (battery) power isn't full. This can be corrected by setting the below parameters. (see VMware KB)

Following changes I made in C:\Documents and Settings\All Users\Application Data\VMware\VMware Workstation\config.ini :
--
prefvmx.useRecommendedLockedMemSize = "FALSE"
prefvmx.allVMMemoryLimit = "750"
prefvmx.minVmMemPct = "100"
host.cpukHz = 1700000
host.noTSC = TRUE
ptsc.noTSC = TRUE
--

So, I'm waiting for a bit more memory to test again. I hope I will discover the full potential of this Oracle VMware soon.

Monday, April 24, 2006

Trying VMware image of Oracle 10gR2 on RedHat Linux (RHEL4)

My goal is to run Oracle 10gR2 in a VMware session. This allows me to do whatever I want on the OS and on the database. I will mainly use it as a testing/playing environment as I try a lot of new (beta) things, apply patches and do a lot of demos and POCs. VMware allows me to reverse the image/snapshot as much as I like.

This week-end I thought to try it again! Previous times it worked, but too slow, now I've a new laptop (Dell Inspiron 9300), so I'm more hopefull. My thoughts...

The installation:
You've the choice to install a VMware with as OS; Redhat or Novell. I chose for Redhat (RHEL4). You need to download three zip files from OTN and an additional download on the Redhat site. You also need to do some registration to get a trail key. The links to download are in this url: http://www.oracle.com/technology/tech/linux/vmware/index.html as also a detailed readme about the installation. It takes some time to download as it's a bit more than 4GB!

Once downloaded you need to unzip all files in the same directory! I did a mistake here, by using different directories, which caused the installation to fail (didn't find the right files).

You run the installer, and he does all the work. I used everywhere the default settings and it worked perfectly.

The VMware environment:
Oracle delivers a nice package in this VMware image. I got Oracle 10gR2, JDeveloper 10g, HTMLDB 1.6, OWB 10g, RAC, Migration Workbench and some others. It needs to be said that these versions are not the latests one. Today there're already some patches for the database and JDev, HTMLDB and the others have also a more recent version. But nevertheless it's nice to have all this, without doing any installation or configuration.

Performance:
I'm not satisfied with the first tests. I've certainly a lack of memory in my laptop (only 1GB), but there's also something strang happening with the consumption of memory of VMware (it sometimes swaps from 300MB to 50MB etc.).
I found some performance improvements on the KB of vmware.com and at first sight it's getting better.
Tomorrow I will post these improvements and I will do some indepth testing of the RAC database...

Friday, April 21, 2006

Methodology - Part 3

As Steven Feuerstein and Tom Kyte are my mentors in the Oracle Development domain I asked them what they thought about using a methodology...
(I already posted the reply of Steven in the post "Methodology - Part 2"), here is the answer of Tom:
"I'm old fashioned.
I sort of like getting the requirements, crafting a prototype, refine the requirements, implement the solution.
APEX is best suited for very small development teams (1 to some very small number).
Not a big fan of XP or Agile - the old "throw it out there and see if it sticks" method.
We are redoing asktom from the ground up now. two developers. step one - list the requirements. step two - prototype/discuss prototype. step three (which we are in now) refine. step 4 - implement (with the requisite test phase and all) "

Many thanks to Tom and Steven for their opinions! I really appreciate it.

Thursday, April 20, 2006

Windows!! where're you?

Today at the customer I had a really nice joke!

At 12h55 my desktop pc restarted, just like that?!
Ofcourse I was writing some scripts, some info was loading etc.
At the time I saw the strang behaviour of Windows, I couldn't do anything anymore! My windows/docs closed like that, although for some windows for 2 seconds it asked if he should save the content. Before I could say 'Yes' it was already gone... I couldn't stop the shutdown progress anymore!!

But hey! I was not alone ;-) my colleagues had the same phenomenon.

Some time later we got this mail:
"Please be advised that we suffered from a technical issue on multiple PCs, which may have caused the reboot of your machine.

Our technical team is currently investigating the problem as a matter of urgency. We will inform you as soon as normal service is restored.

We apologise for any inconvenience"

Thanks for the mail guys! I wondered, even in this timeframe, where SoX is implemented and we have so much procedures to follow, this can happen...

Sunday, April 16, 2006

Happy Easter!

This card was created by my future wife...



She also made the header of my website and blog ;-)
You can find her website on http://www.gg-design.be

Saturday, April 15, 2006

Some nice pics

I found in my archive some nice pics from the seminars I followed, organized by mine passed away friend Lex de Haan.
together with Tom Kyte
Lex shooting me and I him

together with Lex de Haan
together with Steve Adams

Steve showing some of
his famous core-dumps

on the same table with some nice people;
for ex. Anjo Kolk, Lex, Mark Bobak, ...

Methodology - part 2

After having other chats with some more experienced people in the methodology domain I suppose that the main choices as methodology are: RUP, XP and Agile...

Apparently Agile is the most modern and combines XP and RUP. You can find more info about this methodology on http://www.agilemodeling.com/

I also asked the opinion at Steven Feuerstein and what he was using. His (brief) answer:
"I don't follow any single methodology in a hard and fast way; I definitely lean to the lightweight meths., like XP and Agile. In my current main development projects, Qnxo and Qute (www.qnxo.com and www.unit-test.com), I rely heavily on table APIs and avoid writing SQL whenever possible (Qnxo generates the table APIs for me!)."

The quest goes on... I will post more about this when I find more info and make my final decision.

Friday, April 14, 2006

Links working again

Somebody told me that not all links on the blog were working... this should be solved now. It had all to do with bad copy past.

Sorry for the inconvenience.

Thursday, April 13, 2006

Oracle Development Framework

The last couple of weeks I'm looking to create a real Oracle Development Framework.

Concerning the technical part, my decision is clear. As I really adore the Oracle database, I try to do as much as possible into the database. That's why my Oracle Development Framework will exists out of Oracle 10gR2 DB, PL/SQL and Apex (Application Express - before the name was HTMLDB).
For the "functional" part / "methodology" I'm still investigating what would be the best.

Below some more detail about my quest to "The Best Oracle Development Framework":

- I had some chats with others about frameworks, way of working etc. Apparently “Extreme Programming” is in! (http://www.extremeprogramming.org/) “XP” is a deliberate and disciplined approach to software development.
- I read an article of Duncan Mills. He gave an excellent presentation on meta framework. He discussed the challenges we face when developing (web) applications and how meta frameworks can help us developers to tackle those problems. A recap of his presentation can be found
here. The presentation of Duncan can be downloaded here.
- But this is my favorite!
“Cleaning Up PL/SQL Practices” (By Steven Feuerstein) I found on OTN. As I find Steven one of the PL/SQL guru's, I thought about follow his guidelines and use his soft (PL/Generator, Qnxo, Ounit; soft for PL/SQL framework, unit testing, best practices, checks, …) together with the approach of XP.
- Next to that my other "leader" is Tom Kyte. I really appreciate his view, his approach of proving what he's saying, his knowledge and the way he promotes Oracle.

Maybe you have other idea's, feel free to put your comments. I'm interested in knowing more and viewing other opinions about the "right" methodology...

Wednesday, April 12, 2006

Top 10 things I hate of a DB - Something serious!?!

As a big Oracle supporter and promoter I was amazed by the below articles...
These top 10s are not from me!!!

TOP 10 THINGS I HATE ABOUT SQL SERVER:
http://weblogs.sqlteam.com/jeffs/archive/2005/05/24/5248.aspx
Top Ten Things I Hate About the Oracle Database:
http://www.rittman.net/archives/2006/04/top_ten_things_i_hate_about_th.html
I-Hate-Oracle Club:
http://thedailywtf.com/forums/25910/ShowPost.aspx

*** for the persons who didn't understand... this is something to laugh!!! Don't take it serious (as some people do!) ***

Tuesday, April 11, 2006

My top 10 Oracle books

I was searching for some good Oracle books and thought it would be nice to share my list with you... Of course you have the normal reading stuff, like the Oracle concepts guide, installation manual and all the other docs you get with the database. Next to that you have the "white" Oracle education books to get an overview of a particular item. For ex. when I do a new OCP exam, I use these books to prepare myself.
These books are all good, but ...
I'm somebody who doesn't like to say something, without really knowing, testing and proving what I "think" I know. In my opinion (I didn't yet read them all, but this is just a matter of time), the below books use the same approach; they say something and they prove what they're saying with real test cases, so I can test it myself and see if it's still/also valid for my database.

I really like the Oracle database and I would like to do as much as possible in the database, that's why my list is limited to Oracle DB and PL/SQL books.

  1. Expert Oracle Database Architecture: 9i and 10g Programming Techniques and Solutions (by Thomas Kyte)
    Apress, ISBN: 1590595300
  2. Practical Oracle 8i: Building Efficient Databases (by Jonathan Lewis)
    Addison-Wesley Professional, ISBN: 0201715848
  3. Oracle PL/SQL for DBAs (by Arup Nanda and Steven Feuerstein)
    O'Reilly Media, ISBN: 0596005873
  4. Oracle Insights: Tales of the Oak Table (by a lot of people - Oaktable members)
    Apress, ISBN: 1590593871
  5. Cost-Based Oracle Fundamentals (by Jonathan Lewis)
    Apress, ISBN: 1590596366
  6. Effective Oracle Database 10g Security by Design (by David Knox)
    McGraw-Hill Osborne Media, ISBN: 0072231300
  7. Mastering Oracle PL/SQL: Practical Solutions (by Connor McDonald, Chaim Katz, Christopher Beck, Joel R. Kallman, David C. Knox)
    Apress, ISBN: 1590592174
  8. Oracle Data Warehouse Tuning for 10g (by Gavin JT Powell)
    Digital Press, ISBN: 1555583350
  9. Mastering Regular Expressions (by Jeffrey Friedl)
    O'Reilly Media, ISBN: 0596002890
  10. Oracle Regular Expressions Pocket Reference (by Jonathan Gennick, Peter Linsley)
    O'Reilly Media, ISBN: 0596006012
This list of books is just what I think are good books for me and for my team, in the limited area of databases and PL/SQL, next to the Oracle manuals and OTN sources.
I should put some xml/xmldb/java related books on my list, but for the moment I don't do a lot with these features and I'm satisfied with everything I find on OTN.

If you know some other good books or want to share your thoughts, you may add your comments.

Monday, April 10, 2006

Remember Vi commands

Here a quick example to replace a string in the whole text via the vi editor (unix):
:1,$s/search text/replace text/g

As I needed to re-search it for the second time, I thought to put it on my blog...

Vi Cheat sheet: http://www.lagmonster.org/docs/vi.html

Thursday, April 06, 2006

Comments possible

Apparently you couldn't put any comments on the posts... this should be possible now.
You're free to make comments!

Tuesday, April 04, 2006

Changing WE8ISO8859P1 to UTF8 with ALTER DATABASE CHARACTERSET!

Today I did something "tricky" with the Oracle database... I went from one characterset to another although it was not a superset/subset of eachother.

The client requested to go from WE8ISO8859P1 to UTF8 characterset.
You would normally create a new database with the new characterset and do an export/import, but I looked for an other solution.
Why did I do that?
- I didn't have enough free space to create a new database
- I didn't want the people have to change all connection settings
- It needed to go as quick as possible and on 3 environments (dev, test, prod)

I found a note on Metalink (Note:260192.1) which described how you could do it. Basically I followed it, and the first tests after the change in characterset were good.
I will provide a zip-file with all the scripts I used and the steps I followed. A Metalink note is good, but it always refers to other notes... In the zip-file you see how I did it, the most important file is change_charset.sql. The zip-file can be downloaded here.

Good luck with the conversion.