Over-the-Top Tales from the Trenches:: Bringing order to the chaos of everyday DBA life.
Do you want to know a secret? Understanding it will prevent pain and gnashing of teeth, and also leave your face comfortably free of egg. Here it is: Some Oracle functions assume there are 31 days for each month of the year! The moral of the story: be careful when using MONTHS_BETWEEN for fractional dates.
Oracle thinks it can make queries run better by not having to parse them repeatedly, so it grows the shared pool to keep as many queries as it can. Problem: the shared pool is now 4G+. That takes a while to trawl through, which of course adds to the spins on the library cache lock and pushes up CPU usage. I’m going to get into more detail on this when I have the time, but for this db, I think I’m going to switch to manual SGA and set a hard limit of 500M-1G on the shared pool
I noticed sufficient swap/paging on AIX boxes for a Pythian client. (PAGING column in topas result). When I was investigating more about this issue, I found helpful document in Vivek Sharma ‘s blog and metalink note 316533.1.
My colleague Vamsi Chikkam noticed that the Oracle 10.2.0.3 patchset has been released for Linux and Windows 32-bit. The major bugfixes are the same as my original post with a few additions:
I always get a chuckle well not always but often, when I read anything to do with Microsoft vs. “the flavour of the month”. In this case, it looks like the flavour of the month is Oracle. The articles simple imply that SQL Server is more secure than Oracle. They go on to count the number of vulnerabilities identified over the last few years. It’s scary stuff and I’m sure we’re all running out now to ask our architects and DBAs how quickly we can port over to SQL Server.
I faced a problem yesterday. The Oracle listener crashed each time a connection was made. The OS was WINXP SP2. It goes without saying that this was a testing install. The event log showed the following error in SYSTEM log and APPS log. Finally I found the following magic command which fixed the issue after running and restarting the box.
The client entrusted me with the migration of one of their mission critical apps running 8i on HPUX to — drum role please — 9i … on … IBM Mainframe running os390 (z/os). For this client, we were able to shave $600,000 (not just the Oracle license, but also the external costs of maintaining the environment) by migrating just one HPUX machine over to the mainframe with maybe 30 or more to go.
Over the last weekend I had the pleasure to do an 8i -> 10g, Solaris -> Linux migration. Talk about going in head–first. Now, whenever I run into a situation like this, we generally recommend a two–step process so that we can iron out bugs and be able to isolate causes. However, we were under serious time constraints, and we decided to just go with the following simple plan and move straight there.
While reviewing some material in advance of my presentation at UKOUG Conference 2006, I found an interesting change in RMAN behavior in Oracle 10g. The difference is in the way RMAN handles the case when an incremental level 1 backup is taken without an available level 0 backup. This probably won’t affect anyone much, but I found it interesting. And actually, there are scenarios in which it might cause issues.
The latest release of DBD::Oracle is now ready and can be found at CPAN DBD::Oracle