During my Christmas break I’ve been working on another project. I was playing World of Warcraft and was checking out some of the add-ons. I noticed there wasn’t any text to speech add-ons, so I thought I bet I could make it work. Check out the site here: WoWSpeech.net
I just installed the wordbook plugin for my wordpress blog. Hopefully this will help me add some content to my facebook page which I have seriously neglected. It seems like a nice plugin, let’s hope it works.
I ran across a great site today for people with kids or just want to filter traffic on their network. I have 3 kids and I just bought my 5 and 3 year old a macbook to share. When I ran across http://OpenDNS.org I thought wow this would be a great time to do some filtering to keep them from coming across something they shouldn’t.

It’s very simple to create an account and set it up since it is based on DNS. Since it is based on DNS it is easy to work around, but I figure it will be a few years before my kids get to that point.
One issue I ran into though is their documentation for the Mac is based on a wired ethernet connection. Who uses patch cables at home anymore? Luckily I found a link to a site that shows how to get around this on the Mac. You can read about hit here: http://qmail.jms1.net/djbdns/osx.shtml#dhcp-nameserver
Ever been frustrated by a processes that you could not kill on a Linux box? I know I have, especially working with Samba and NFS. Good news, there is a new sleep state that will help eliminate the problem and more code makes use of it. In fact most of the NFS code has already been converted. Check out the link here and read more about it: http://lwn.net/Articles/288056/
I’ve tried the firefox 3 beta a couple times on my linux box. Every time I try it the fonts and toolbars are obnoxiously big. I couldn’t find any help on this. It seemed like a dpi issue, so I went to about:config and searched for dpi. There it was layout.css.dpi. Mine was set to -1, I changed it to 150 which seemed about right.
Type about:config in you browser window. Then type dpi in the filter text box and double click the layout.css.dpi to change the value. I changed mine to 150.
Two things I ran across today that I need to look further into.
http://latencytop.org/ - This shows what processes are waiting on and looks very interesting.
The other is Group Scheduling in Linux 2.6.24 and above. This allows you to put processes in a group so that one set of processes can share the same resources. For example, you can assign two different users 50% of the processor and one use could be running 50 compiles but should not affect the performance of the second user.
The procedure below will allow you to move Oracle data and redo files.
1. It is a good idea to make a backup of the directory you are moving just in case something goes horribly wrong. 
# cp -rp {data_dir} {backup_dir}
2. log in as the oracle user
# su -l oracle
3. move the database files
# mv {data_dir} {new_data_dir}
4. Set SID, log into database.
# export ORACLE_SID={ORACLE_SID}
# sqlplus /nolog
SQL> connect /as sysdba;
5. Create pfile from spfile
SQL> create pfile from spfile;
6. In another terminal, modify the newly created pfile. It is usually called init{SID}.ora and can be in different directories. Look in udump, dbs, and other directories until you find the newly created pfile. Check the date to make sure it is the one you are looking for. Now, fix the directories for the control_files variable.
7. Go back to the original terminal and create spfile from pfile;
SQL> create spfile from pfile;
8. Mount database.
SQL> startup mount;
9. Alter the database to look in the new location for the data files and redo logs. Below is an example. (Do this for all data and redo logs.)
SQL> alter database rename file ‘/home/oracle/oradata/{SID}/sysaux01.dbf’ to ‘/usr/local/app/oracle/oradata/{SID}/sysaux01.dbf’
SQL> alter database rename file ‘/home/oracle/oradata/{SID}/redo01.log’ to ‘/usr/local/app/oracle/oradata/{SID}/redo01.log’
10. Open database.
SQL> alter database open;
Now it should hopefully come up properly. You man want to shut it down and bring it up once more to make sure everything is working properly.
Disclaimer: This is plagiarized! See: http://www.anysql.net/en/oracle/oracle_bug_exp00003.html
When you use old version of exp to export tables with LOB column from Oracle 9.2.0.5 or higher version, you will get an error “EXP-00003 : no storage definition found for segment …..”, actually this is an Oracle bug, you could temporary get it resolved by replace a view “exu9tne”, as following:
Before exporting, run the following SQL under sys:
CREATE OR REPLACE VIEW exu9tne (
tsno, fileno, blockno, length) AS
SELECT ts#, segfile#, segblock#, length
FROM sys.uet$
WHERE ext# = 1
UNION ALL
SELECT * FROM SYS.EXU9TNEB
/
After exporting, run the following to restore the view definition according to Metalink Notes.
CREATE OR REPLACE VIEW exu9tne (
tsno, fileno, blockno, length) AS
SELECT ts#, segfile#, segblock#, length
FROM sys.uet$
WHERE ext# = 1
/
When trying to install an older version of the JRE on a newer Linux distro I was getting the following error:
Unpacking...
tail: cannot open `+480' for reading: No such file or directory
Checksumming...
1
The download file appears to be corrupted. Please refer
to the Troubleshooting section of the Installation
Instructions on the download page for more information.
Please do not attempt to install this archive file.
This is because tail has changed in the newer Linux distros. the +{number of lines} does not work unless you proceed it with a -n. So, edit the .bin file you downloaded make the following changes:
Replace: tail +480 $0 > $outname
With: tail -n +480 $0 > $outname
Replace:
if expr $sum1 != 22444 || expr $sum2 != 13542 ; then
echo “The download file appears to be corrupted. Please refer”
echo “to the Troubleshooting section of the Installation”
echo “Instructions on the download page for more information.”
echo “Please do not attempt to install this archive file.”
exit 1
fi
With:
# if expr $sum1 != 22444 || expr $sum2 != 13542 ; then
# echo “The download file appears to be corrupted. Please refer”
# echo “to the Troubleshooting section of the Installation”
# echo “Instructions on the download page for more information.”
# echo “Please do not attempt to install this archive file.”
# exit 1
# fi
I usually use phpMyAdmin to dump my table to SQL, but sometimes it is easier to do it from the command line. Use the following syntax to dump a table to SQL.
mysqldump -p -e -c --add-drop-table -r table.sql dbname table
Warning: The –add-drop-table will cause it to drop the existing table when you import.
You can import this with the command
mysql -p dbname < table.sql