Thursday, February 26, 2009
Accessing MySQL Database(s) with JDBC
A new technical article entitled "Using MySQL With Java Technology", has been posted on java.sun.com at: http://java.sun.com/developer/technicalArticles/mysql_java/index.html
This article explains the essential steps involved in manipulating the data in a MySQL database from a Java application. MySQL Connector/J JDBC driver was used in the example code to show the database connectivity, data manipulation steps. Application developers who are new to Java programming language [but not to MySQL database] are the target audience of this article.
Stay tuned for the next article in this series "Using MySQL with PHP" ..
Tuesday, February 24, 2009
Sun Blueprint : MySQL in Solaris Containers
While the costs of managing a data center are becoming a major concern with the increased number of under-utilized servers, customers are actively looking for solutions to consolidate their workloads to:
- improve server utilization
- improve data center space utilization
- reduce power and cooling requirements
- lower capital and operating expenditures
- reduce carbon footprint, ..
To cater those customers, Sun offers several virtualization technologies such as Logical Domains, Solaris Containers, xVM at free of cost for SPARC and x86/x64 platforms.
In order to help our customers who are planning for the consolidation of their MySQL databases on systems running Solaris 10, we put together a document with a bunch of installation steps and the best practices to run MySQL inside a Solaris Container. Although the document was focused on the Solaris Containers technology, majority of the tuning tips including the ZFS tips are applicable to all MySQL instances running [on Solaris] under different virtualization technologies.
You can access the blueprint document at the following location: Running MySQL Database in Solaris Containers
The blueprint document briefly explains the MySQL server & Solaris Containers technology, introduces different options to install MySQL server on Solaris 10, shows the steps involved in installing and running Solaris Zones & MySQL, and finally provides few best practices to run MySQL optimally inside a Solaris Container.
Feel free to leave a comment if you notice any incorrect information, or if you have generic suggestions to improve documents like these.Acknowledgments
Many thanks to Prashant Srinivasan, John David Duncan and Margaret B. for their help in different phases of this blueprint.
| Best Practices
Sunday, February 22, 2009
PeopleSoft HRMS 8.9 Self-Service Benchmark on M3000 & T5120 Servers
Sun published the PeopleSoft HRMS 8.9 Self-Service benchmark results today. The benchmark was conducted on 3 x Sun SPARC Enterprise M3000 and 1 x Sun SPARC Enterprise T5120 servers. Click on the following link for the full report with the benchmark results.PeopleSoft HRMS 8.9 SELF-SERVICE Using ORACLE on Sun SPARC Enterprise M3000 and Enterprise T5120 Servers
Admittedly it is Sun's first PeopleSoft benchmark after a hiatus of over five years. However I am glad that we came up with a very nice cost effective solution in our comeback effort to the PeopleSoft applications' benchmarking.
Some of the notes and highlights from this competitive benchmark are as follows.
- The benchmark measured the average search and save transaction response times at a peak load of 4,000 concurrent users.
- 4,000 users is the limitation of the benchmark kit. All vendors using this benchmark kit are bound to this limitation. Hence it is easy to compare the performance as the throughput achieved by each vendor will be the same. In comparing the benchmark results from workloads like these, lower average [transaction response times, CPU, memory utilizations] and the hardware in use (lesser the better), usually indicate better performance.
- IBM and Sun are the only vendors who published benchmark results with PeopleSoft HRMS 8.9 Self-Service benchmark kit.
- Sun's benchmark results are superior relative to IBM's best published result on a combination of z990 2084-C24 and eServer pSeries p690 servers. While I leave the price comparisons to the reader1, I'd like to show the performance numbers extracted from the benchmark reports published by Sun and IBM. All the following data/information is available in the benchmark reports. Feel free to draw your own conclusions.
Average Transaction Response Times
Average CPU Utilizations
Average Memory Utilizations
Vendor: Sun Microsystems
|Web||T5120||1||UltraSPARC-T2||1.2 GHz||1||4||8 GB|
|App||M3000||2||SPARC64-VII||2.52 GHz||1||4||8 GB|
|DB||M3000||1||SPARC64-VII||2.52 GHz||1||4||8 GB|
2 x Sun Storage J4200 arrays were used to host the database. Total disk space: ~1.34 Terabytes. Consumed only 120 GB disk space -- 115 GB for data on one array; and 5 GB for redo logs on the other array.
|Web||p690 (7040-681)||1||POWER4||1.9 GHz||4||NA (?)||12 GB|
|App||p690 (7040-681)||1||POWER4||1.9 GHz||12||NA (?)||32 GB|
|DB||zSeries 990, model 2084-C24||1||z990 Gen1||???||6||NA (?)||32 GB|
1 x IBM TotalStorage DS8300 Enterprise Storage Server, 2107-922 ws used to host the database. Total disk space: ~9 Terabytes.
- The combination of Sun SPARC Enterprise M3000 and T5120 servers consumed 1030 Watts on the average in a 7RU space in achieving 4,000 concurrent users. That is, in the case of similarly configured workloads, M3000/T5120 support 3.88 users per watt of the power consumed; and 571 users per rack unit.
Just like our prior Siebel
and Oracle E-Business Suite Payroll 11i
benchmarks, Sun collaborated with Oracle Corporation in executing this benchmark. And we sincerely thank our peers at Oracle Corporation for all their help and support over the past few months in executing this benchmark.
I'm planning to post some of the tuning tips to run PeopleSoft optimally on Solaris 10. Stay tuned ..
(Originally posted on blogs.sun.com at:
: It is relatively hard to obtain IBM's server list prices. On the other hand, it is very easy to find the list prices of Sun servers' from http://store.sun.com
Wednesday, February 11, 2009
Mounting Windows' NTFS on [Open]Solaris x86/x64
The steps outlined in this blog post are derived from the Miscellaneous filesystem support for OpenSolaris on x86
web page. I just added few examples to illustrate the steps to mount a partition with NTFS filesystem that exists on the external hard drive (in this case, it is a Seagate FreeAgent external hard drive).Step-by-Step instructions to mount NTFS filesystem on [Open]Solaris
- Install the packages : FSWpart and FSWfsmisc.
- Find the logical device name for the NTFS partition.
-l option of the
rmformat command lists all removable devices along with their device names.
# rmformat -l
Looking for devices...
1. Logical Node: /dev/rdsk/c1t0d0p0
Physical Node: /pci@0,0/pci-ide@1f,1/ide@1/sd@0,0
Connected Device: MATSHITA UJDA750 DVD/CDRW 1.60
Device Type: DVD Reader
2. Logical Node: /dev/rdsk/c2t0d0p0
Physical Node: /pci@0,0/pci1179,1@1d,7/storage@1/disk@0,0
Connected Device: Seagate FreeAgentDesktop 100F
Device Type: Removable
Size: 953.9 GB
- Identify the NTFS partition on the external disk with the help of
In this example, partition #1 i.e., c2t0d0p1 has the NTFS filesystem.
# fdisk /dev/rdsk/c2t0d0p0
Total disk size is 60800 cylinders
Cylinder size is 32130 (512 byte) blocks
Partition Status Type Start End Length %
========= ====== ============ ===== === ====== ===
1 IFS: NTFS 0 60800 60801 100
SELECT ONE OF THE FOLLOWING:
1. Create a partition
2. Specify the active partition
3. Delete a partition
4. Change between Solaris and Solaris2 Partition IDs
5. Exit (update disk configuration and exit)
6. Cancel (exit without updating disk configuration)
Enter Selection: 6
- Mount the NTFS partition just like mounting an UFS filesystem using the
mount command. Use the argument
ntfs to the command line option
-F. Since the filesystem was mounted in a slightly different way than the conventional way, use
/usr/bin/xlsmounts to see the detailed mount table information.
# mount -F ntfs /dev/dsk/c2t0d0p1 /mnt
PHYSICAL DEVICE LOGICAL DEVICE FS PID ADDR Mounted on
/dev/dsk/c2t0d0p1 /dev/dsk/c2t0d0p1 ntfs 6755 127.0.0.1:/ /mnt
# ls /mnt
expForSun.dmp MySQL5.1 RECYCLER
medium-64-bit $RECYCLE.BIN System Volume Information
ADDR column in the output of
xlsmounts. NTFS mount uses userland NFSv2 server to access the filesystems on raw partitions. That is why the mount was shown as NFS client mounted from 127.0.0.1:/
- To unmount the NTFS filesystem, use
/usr/bin/xumount. Solaris standard
umount command unmounts the filesystem but does not terminate the background NFS server process.
# /usr/bin/xumount /mnt
- OR -
# /usr/bin/xumount /dev/dsk/c2t0d0p1
Check the Miscellaneous filesystem support for OpenSolaris on x86
page and Moinak Ghosh's blog post Mount and Access NTFS and Ext2FS from Solaris x86
for the rest of the fine details.
(Originally posted on blogs.sun.com at:
Sunday, February 08, 2009
Workaround to "eject of cdrom /dev/dsk/cxtxdxsx failed" Error on SXCE b106
On Solaris Express Community Edition build 106,
fails intermittently (esp. when inserted the blank media) with the error:
eject of cdrom /dev/dsk/cxtxdxsx failed
# cat /etc/release
Solaris Express Community Edition snv_106 X86
Copyright 2009 Sun Microsystems, Inc. All Rights Reserved.
Use is subject to license terms.
Assembled 13 January 2009
eject of cdrom /dev/dsk/c1t0d0s2 failed: A security policy in place prevents this sender
from sending this message to this recipient, see message bus configuration file (rejected
message had interface "org.freedesktop.Hal.Device.Storage" member "Eject" error name
"(unset)" destination "org.freedesktop.Hal")
Upgrade to snv_107. Meanwhile check the bug #6791982
(Originally posted on blogs.sun.com at:
- Edit /etc/dbus-1/system.d/hal.conf.
Add the following line to the
<policy context="default"> section.
- Restart the D-Bus message bus system service.
svcadm restart svc:/system/dbus:default
On a totally unrelated note, to see all the existing SMF services with a simple description, run:
svcs -o FMRI,DESC
- Finally try to eject the CD/DVD disk by typing the