A buddy of mine sent me Cary Millsap's excellent new paper on the importance of performance diagnostics via extended SQL trace. Cary prefaces, "The trace file contains timings that enable you to precisely measure how long your code takes to run and why.The detailed information about individual database calls and operating system calls is vital to building scalable applications (as well as troubleshooting them in production)."
Here's the link:
http://method-r.com/downloads/doc_details/72-mastering-performance-with-extended-sql-trace
Some interesting items to note:
Page 5 /* free trace library for developers from Method-R */ - "Instrumentation Library for Oracle (ILO), a free open-‐ source project that Method R Corporation maintains at SourceForge. ILO gives you PL/SQL packages that make it dead simple for an application developer to define where in an application’s code path each business task begins and ends. It sets all the “hooks” that your systems DBAs will need later to trace speciaic business tasks by name."
Page 11 /* good info on some 11.1 trace bugs */ - "The Oracle 11.1 era has not been kind to trace file users. Bug 7522002 causes database call time values to run off a 1,024-‐nanosecond-‐per-‐microsecond clock and OS call time values to run off a 1,000-‐ nanosecond-‐per-‐microsecond clock. This causes the sequence of calls in a trace file to zigzag back and forth in time. This problem is correctible, but then bug 8342329 isn’t.It causes the Oracle kernel to emit the same tim value repeatedly for multiple distinct database calls, which is debilitating. Happily, these bugs in 11.1 have patches and are fixed in version 11.2.0.2.0."
Sunday, January 16, 2011
Monday, January 10, 2011
Oracle VM Server 2.2.1 + Oracle VM Manager 2.2.0 Installed and Configured
First blog post in the Data Dojo!
For a weekend project, I decided to wipe clean my Fedora 12 + Oracle 10g installation from my microATX miniserver (2.6 GHz dual-core, 8GB RAM 1066, 320 GB 7200 SATA) and install OVM Server and Manager from http://edelivery.oracle.com/oraclevm. I have also downloaded the OVM Templates for 10.2.0.4 and 11.1.0.6.
Steps:
a) Burned ISO image of OVM Server to CD
b) Installed OVM Server with standard partition layouts with 8GB swap and 8GB root
c) Configured static IP (192.168.1.99) for the OVM Server host
d) Edited /etc/hosts on OVM Server to set host name and static IP address
e) Opened ports 8888 and 8899 for OVM Manager remote management
# /usr/bin/system-config-securitylevel
f) Copied OVM Manager ISO image to OVM Server hard disk
g) Mounted OVM Manager ISO image from OVM hard disk as /OVMCD
# mount -o loop,ro OracleVM-Manager-2.2.0.iso /OVMCD
h) Installed OVM Manager with defaults but without SSL
i) Download and install TightVNC on OVM Server
# wget http://oss.oracle.com/oraclevm/manager/RPMS/tightvnc-java-1.3.9-3.noarch.rpm
# rpm -ivh tightvnc-java-1.3.9-3.noarch.rpm
j) Logged into OVM Manager as admin from workstation browser (http://192.168.1.99:8888/OVS)
k) Created and initialized root storage repository formatted with OCFS2 filesystem
# fdisk n /dev/sda5
# mkfs.ocfs2 /dev/sda5
# /opt/ovs-agent-2.3/utils/repos.py -n /dev/sda5
# /opt/ovs-agent-2.3/utils/repos.py -l | awk '{print $4}' |xargs /opt/ovs-agent-2.3/utils/repos.py -r
# /opt/ovs-agent-2.3/utils/repos.py -i
l) Created a Server Pool in OVM Manager
m) Extracted the VM templates into the /OVS/seed_pool directory on the OVM Server host
n) Imported the VM templates into OVM Manager and approved for use
o) Created a VM from each of the the 10g and 11g templates
o) Created a VM from each of the the 10g and 11g templates
Under the 10g and 11g VMs:
a) Changed default RAM allocation from 2GB to 1GB
b) Created a new virtual disk named virtualdisk1 (/dev/xvdc) of about 100 GB
c) Connected to the VM through the VNC console
d) Configured VM Oracle instances with defaults and static IPs
e) Created new ASM disk group from virtualdisk1
# fdisk /dev/xvdc
# /etc/init.d/oracleasm createdisk ASM1 /dev/xvdc1
$ export ORACLE_SID=+ASM
$ sqlplus / as sysdba
SQL> alter diskgroup DATA add disk 'ORCL:ASM1';
That's about as far as I have gotten with setting up my new OVM Server. Going to bed now.
Subscribe to:
Posts (Atom)