<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8932703</id><updated>2011-07-08T11:14:56.406-07:00</updated><category term='UNIX'/><category term='Corruption'/><category term='BerkeleyDB'/><category term='Parallelism'/><category term='Full Text Indexes'/><category term='VMWare'/><category term='MySQL'/><category term='Backup and Recovery'/><category term='SQLServer 2008'/><category term='Troubleshooting'/><category term='perl'/><category term='Replication'/><category term='Partitioning'/><category term='Migration'/><category term='FileSystems'/><category term='Triggers'/><category term='SQLServer'/><category term='Forums'/><category term='Oracle'/><category term='varbinary'/><category term='Maintenance'/><category term='Configuration'/><category term='SQLServer 2005'/><category term='innodb'/><category term='Clustering'/><category term='PerformanceTuning'/><category term='DataWarehousing'/><category term='Monitoring'/><category term='immediate_sync'/><title type='text'>opendba</title><subtitle type='html'>We're all about databases.  Doesn't matter what kind, as long as they are big, bad, and really fast.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://opendba.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>54</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8932703.post-7059985591739571416</id><published>2010-04-19T10:14:00.000-07:00</published><updated>2010-04-19T10:17:30.791-07:00</updated><title type='text'>Missed the MySQL Conference</title><summary type='text'>My co-worker got back from the MySQL Conference today.  Sadly I didn't make it this year, but sounds like it was great as usual.  Sorry I didn't get to see you all, but I'll do my best to catch you next year...</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=7059985591739571416' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/7059985591739571416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/7059985591739571416'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2010/04/missed-mysql-conference.html' title='Missed the MySQL Conference'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-5334804988094391607</id><published>2010-02-09T11:28:00.000-08:00</published><updated>2010-02-09T11:57:15.962-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Configuration'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle'/><title type='text'>Firewalls... what can you say?</title><summary type='text'>Every time I've had to setup something 'special' with a database server and a firewall for the first time there always seems to be way to many issues.With MySQL it's been mostly straight forward; opening an additional port or to for supporting the enterprise monitor or something, but nothing crazy.Oracle, however, gets me every time.  :(We were setting up a new Oracle 11g instance, and decided we</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=5334804988094391607' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5334804988094391607'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5334804988094391607'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2010/02/firewalls-what-can-you-say.html' title='Firewalls... what can you say?'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-853047646266286279</id><published>2009-12-01T15:21:00.000-08:00</published><updated>2009-12-01T15:42:17.624-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>MySQL Remote Connections for Replication</title><summary type='text'>Here is another interesting problem:When trying to set up master to master replication from Server A to Server B, the replication user can login from A to B, but not the other way. The error thrown out by MySQL:ERROR 1130 (HY000): Host '' is not allowed to connect to this MySQL serverThings to check:1. Replication user password and host2. Ability to ping the remote server3. nslookup the remote </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=853047646266286279' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/853047646266286279'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/853047646266286279'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2009/12/mysql-remote-connections-for.html' title='MySQL Remote Connections for Replication'/><author><name>Sabika</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-3068977832031773479</id><published>2009-12-01T12:15:00.000-08:00</published><updated>2009-12-01T12:30:21.057-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>Much Ado about a space</title><summary type='text'>After upgrading SQL Server 2005 to SP3 I had difficulty bringing SQL server back online. The error message indicated a problem when opening 'master.mdf' or a problem with start up parameters. The parameters looked ok and I did not want to reinstall the SQL server.... Online research pointed to potential master database corruption, however the problem turned out to be a simple one -there was an </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=3068977832031773479' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/3068977832031773479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/3068977832031773479'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2009/12/much-ado-about-space.html' title='Much Ado about a space'/><author><name>Sabika</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-2524568977353352073</id><published>2009-11-19T14:34:00.001-08:00</published><updated>2009-11-19T15:01:19.976-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='varbinary'/><title type='text'>Varbinary to string</title><summary type='text'>I've experienced a particular frustration with SQL Server many times over the years: the seeming impossibility of programmatically fetching a varbinary value from a table, and converting it to the string value required by a procedure call in the same batch.  One example would be when troubleshooting replication by extracting a xact_seqno varbinary(16) value from the MSdistribution_history table, </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=2524568977353352073' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/2524568977353352073'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/2524568977353352073'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2009/11/varbinary-to-string.html' title='Varbinary to string'/><author><name>penny</name><uri>http://www.blogger.com/profile/10641059789296613698</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-7002612301491762667</id><published>2009-11-19T13:53:00.000-08:00</published><updated>2009-11-23T12:20:12.970-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Replication'/><category scheme='http://www.blogger.com/atom/ns#' term='immediate_sync'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><title type='text'>solving frequent replication distribution latency errors</title><summary type='text'>We have many millions of commands a day passing through a 2-node peer-to-peer replication topology.  At some point, replication lost its ability to keep up with distribution.  After much research, we replicated the issue to Microsoft and were told that our distribution database was too big.  They recommended that we set immediate_sync on the publication to false.To me, it made no sense why this </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=7002612301491762667' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/7002612301491762667'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/7002612301491762667'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2009/11/solving-frequent-replication.html' title='solving frequent replication distribution latency errors'/><author><name>penny</name><uri>http://www.blogger.com/profile/10641059789296613698</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-3355229628586403318</id><published>2009-11-02T19:32:00.000-08:00</published><updated>2009-11-02T20:36:40.568-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><title type='text'>Shrinking data files, part 1</title><summary type='text'>You've probably heard admonishments to avoid shrinking data files, especially on a heavily used database. The standard usage of DBCC SHRINKDATABASE or DBCC SHRINKFILE (not using the TRUNCATEONLY option of these commands) will move any data at the tail of the file to the beginning. The most frequently cited negative consequence of this action is serious fragmentation of the data you moved as data </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=3355229628586403318' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/3355229628586403318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/3355229628586403318'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2009/11/shrinking-data-files-part-1.html' title='Shrinking data files, part 1'/><author><name>penny</name><uri>http://www.blogger.com/profile/10641059789296613698</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-7601871241769770270</id><published>2009-07-21T13:32:00.000-07:00</published><updated>2009-07-21T13:51:01.517-07:00</updated><title type='text'>SQL Server: Named Instance Or Default?</title><summary type='text'>I was looking for an easy way to tell if the current instance of SQL Server is a default or named instance since we use both.  I could not find anything online. After a little bit of poking around, I figured it out -its quite simple. Go to 'My Computer' and right click for the 'Manage' option. Then under 'Services' look for the SQL Server service entry. If its a named instance it will have the </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=7601871241769770270' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/7601871241769770270'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/7601871241769770270'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2009/07/sql-server-named-instance-or-default.html' title='SQL Server: Named Instance Or Default?'/><author><name>Sabika</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-8324983917791731669</id><published>2009-03-27T21:46:00.000-07:00</published><updated>2009-03-27T22:28:15.377-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Replication'/><category scheme='http://www.blogger.com/atom/ns#' term='FileSystems'/><category scheme='http://www.blogger.com/atom/ns#' term='Configuration'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>Lost and Found ?</title><summary type='text'>Sometimes you just have to laugh at the crazy things that can kill a good evening. I had this brilliant idea to change our replication setup on one of our Master-Master replication server setups this week.  I got sick of having to restart MySQL every time we wanted to add a new database and have it included in the list of replicated databases - we were using replicate-do-db in our configs.So it </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=8324983917791731669' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/8324983917791731669'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/8324983917791731669'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2009/03/lost-and-found.html' title='Lost and Found ?'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-5672271497732963749</id><published>2009-03-14T23:06:00.000-07:00</published><updated>2009-03-15T00:35:25.040-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Monitoring'/><category scheme='http://www.blogger.com/atom/ns#' term='innodb'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>What just happened to the database?</title><summary type='text'>It's always fun when you come into work and notice that one of your database monitors/graphs has changed from showing almost no row accesses/sec to 40,000 rows/sec in a matter of minutes.  And then by lunch time they are showing 90,000 rows/sec.  What's up with that?MySQL Enterprise Monitor Row Accesses:Well, of course the first thing you do is check all your cacti monitors, because there is </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=5672271497732963749' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5672271497732963749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5672271497732963749'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2009/03/what-just-happened-to-database.html' title='What just happened to the database?'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_wCOogYNSLGs/Sbyeuo9nZDI/AAAAAAAADL8/AHFRRrreUeA/s72-c/Row_Accesses.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-185420888181520869</id><published>2009-01-23T07:31:00.000-08:00</published><updated>2009-01-23T07:40:47.278-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Maintenance'/><category scheme='http://www.blogger.com/atom/ns#' term='Partitioning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='DataWarehousing'/><title type='text'>Partition Management....(Don't forget the Management)</title><summary type='text'>You'd think by now I'd know better than to cut corners.  But for some reason, I still somehow seem to decide once in a while for short term gains over long term benefits...A while back I was overloaded with stuff so I set up a year's worth of new monthly partitions in one of our reporting databases.  I did not, however, chose to create any nice job to automatically create new partitions or </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=185420888181520869' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/185420888181520869'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/185420888181520869'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2009/01/partition-managementdont-forget.html' title='Partition Management....(Don&apos;t forget the Management)'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-979328158343644240</id><published>2008-11-25T17:57:00.000-08:00</published><updated>2008-11-25T18:17:27.478-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Replication'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>MySQL Replication and bad assumptions</title><summary type='text'>Sometimes I amaze myself in my capacity to make assumptions about how things should work, especially when it comes to test plans...  ( You know what happens when we assume, right? )I had this great idea to setup a couple slaves off a master-master replication set something like this:MASTER A  &lt;--------------&gt;  MASTER B   |                          |   |                          |   |</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=979328158343644240' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/979328158343644240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/979328158343644240'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/11/mysql-replication-and-bad-assumptions.html' title='MySQL Replication and bad assumptions'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-8234313018935979924</id><published>2008-10-04T14:00:00.000-07:00</published><updated>2008-10-05T19:05:21.398-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Partitioning'/><category scheme='http://www.blogger.com/atom/ns#' term='innodb'/><category scheme='http://www.blogger.com/atom/ns#' term='Triggers'/><title type='text'>MySQL Partitioned Tables with Trigger enforced FK constraints</title><summary type='text'>Well,   I suppose its' true you can't use the official MySQL ALTER TABLE statement to do it, but if you're willing to trust your trigger coding abilities you can.All you need is an extra table and a couple triggers.The concept is fairly straight forward:Create a before insert trigger on the child table that validates the parent exists in the parent table.If there is no parent found, then insert a</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=8234313018935979924' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/8234313018935979924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/8234313018935979924'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/10/mysql-partitioned-tables-with-trigger.html' title='MySQL Partitioned Tables with Trigger enforced FK constraints'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-4045087049068994594</id><published>2008-10-01T15:26:00.000-07:00</published><updated>2008-10-01T15:55:37.982-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Corruption'/><category scheme='http://www.blogger.com/atom/ns#' term='Monitoring'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>MySQL Data Woes... or, Making Use of the Information_Schema</title><summary type='text'>To be fair - I highly doubt it has anything to do with MySQL.Database corruption - that's a different issue, often related to a bug in database code;  but this was a data corruption issue, which is always a pain in the you know what to figure out and get fixed.I spent the last day trying to figure out the weirdness in a couple of our databases, digging around, explaining to developers that </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=4045087049068994594' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/4045087049068994594'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/4045087049068994594'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/10/mysql-data-woes-or-making-use-of.html' title='MySQL Data Woes... or, Making Use of the Information_Schema'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-6428486093174113797</id><published>2008-09-28T21:12:00.000-07:00</published><updated>2008-09-28T22:04:07.568-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><title type='text'>Where are all the good MySQL DBAs?</title><summary type='text'>We've been looking for a good MySQL DBA at work for a little over a year now.  At this point I'm beginning to wonder if DBA's are a dying breed all together...Maybe it's the fact that we're in the Northwest (Seattle), or perhaps they've all gone to work for Percona?Perhaps everyone has more fun developing?  (We haven't had much trouble filling our Sr. Development positions or QA positions..)It's </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=6428486093174113797' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/6428486093174113797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/6428486093174113797'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/09/where-are-all-good-mysql-dbas.html' title='Where are all the good MySQL DBAs?'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-8332194286388191046</id><published>2008-06-11T12:11:00.001-07:00</published><updated>2008-06-11T13:26:21.168-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Forums'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>MySQL: Improving your skills with Forums</title><summary type='text'>I haven't been a big user of the MySQL Forums till recently.I'm not sure why - partly because I like to think I know something about what I do ( I just need to remember that there is always someone else who knows more), partly because I have a need to re-invent the wheel as often as possible, and partly because I dont' like waiting around for an answer...It can be a little overwhelming when you </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=8332194286388191046' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/8332194286388191046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/8332194286388191046'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/06/mysql-improving-your-skills-with-forums.html' title='MySQL: Improving your skills with Forums'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-3988605589101087176</id><published>2008-04-23T13:55:00.000-07:00</published><updated>2008-04-23T19:17:20.707-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Maintenance'/><category scheme='http://www.blogger.com/atom/ns#' term='Replication'/><title type='text'>MySQL: replicate-* rules should be dynamically configurable</title><summary type='text'>I wonder what the best way is to get a feature request more visibility (convert a feature request to an actual work item).We use replicate-do-db on all our slave servers , so after many, many, restarts of our slave servers, I checked the bug list for any feature requests surrounding this, and about 6 months ago, one was opened:          replicate-* rules should be dynamically configurableSadly, </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=3988605589101087176' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/3988605589101087176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/3988605589101087176'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/04/mysql-replicate-rules-should-be.html' title='MySQL: replicate-* rules should be dynamically configurable'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-8278080976105924269</id><published>2008-04-18T12:49:00.000-07:00</published><updated>2008-04-18T13:07:38.119-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Partitioning'/><title type='text'>Speaking at the Conference</title><summary type='text'>I had a great time speaking about partitioning at the MySQL conference this week.Special thanks go out to Mattias Jonsson as well for helping answer some of the questions afterwards.  The room was packed - which makes me excited for the future of MySQL partitioning!I hope everyone got something out of the session, and I'd gladly welcome any comments (positive or constructive).I plan on doing some</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=8278080976105924269' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/8278080976105924269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/8278080976105924269'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/04/speaking-at-conference.html' title='Speaking at the Conference'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-6517716721106396210</id><published>2008-04-10T18:15:00.000-07:00</published><updated>2008-04-10T18:49:06.422-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Backup and Recovery'/><category scheme='http://www.blogger.com/atom/ns#' term='BerkeleyDB'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle'/><title type='text'>Just a DBA in a developers world...</title><summary type='text'>Sometimes I wonder where this whole web development thing is going...I was asked to setup some backup and recovery tools for the  BerkeleyDB Java Edition (JE).Hmm... DB... I could probably argue that DB should be dropped from the name if you add Java edition to it.  I suppose maybe it's Oracle's plan to drop BerkeleyDB for the newer improved  BerkeleyDB Java Edition (JE).  Maybe that's why there </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=6517716721106396210' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/6517716721106396210'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/6517716721106396210'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/04/just-dba-in-developers-world.html' title='Just a DBA in a developers world...'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-1637556383653650425</id><published>2008-03-31T19:30:00.000-07:00</published><updated>2009-04-12T13:31:04.187-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Partitioning'/><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><category scheme='http://www.blogger.com/atom/ns#' term='innodb'/><category scheme='http://www.blogger.com/atom/ns#' term='Triggers'/><title type='text'>MySQL: Getting Creative with Partitioning (Performance Results)</title><summary type='text'>I decided to run some very basic performance test comparing the non-partitioned table with a primary key, and a partitioned table with a primary key and a unique constraint enforced via a secondary table explained in my previous post.Overall, it appears that with partitioning, as the data/rows scale, the inserts actually get faster :)  This is what I would expect theoretically, so score one for </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=1637556383653650425' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/1637556383653650425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/1637556383653650425'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/03/mysql-getting-creative-with_31.html' title='MySQL: Getting Creative with Partitioning (Performance Results)'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-5355387069868116857</id><published>2008-03-24T18:41:00.000-07:00</published><updated>2009-04-12T13:29:58.817-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Partitioning'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='Triggers'/><title type='text'>MySQL: Getting Creative with Partitioning</title><summary type='text'>Lately, I've been trying to keep up with at least one of the MySQL Forums: Partitioning.It's a great way to keep on top of issues surrounding partitioning, and also get an idea of what people are trying to do with the new 5.1 feature.  Richard came up with an interesting problem that I jumped into only to realize that I hadn't done my homework, and my initial suggestion wouldn't work at all due </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=5355387069868116857' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5355387069868116857'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5355387069868116857'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/03/mysql-getting-creative-with.html' title='MySQL: Getting Creative with Partitioning'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-5015001070207453971</id><published>2008-03-19T12:46:00.000-07:00</published><updated>2008-03-19T13:44:12.512-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>MySQL: Finally an ability to trace/profile</title><summary type='text'>Finally!  The ability to look a little closer into what's happening with SHOW PROFILEHere’s how it works:mysql&gt; set profiling=1;mysql&gt; select count(*) from mysql.user;+----------+| count(*) |+----------+|        5 |+----------+1 row in set (0.00 sec)mysql&gt; show profile;+--------------------------------+----------+| Status                         | Duration |+--------------------------------+-----</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=5015001070207453971' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5015001070207453971'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5015001070207453971'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/03/mysql-finally-ability-to-traceprofile.html' title='MySQL: Finally an ability to trace/profile'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-200106109806081988</id><published>2008-03-18T14:01:00.000-07:00</published><updated>2008-03-18T14:14:06.658-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Replication'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>Best Practices - Oops...</title><summary type='text'>Yea, yea, yea... best practices.I spent about a week troubleshooting issues on a MySQL 5.1 replication issue where certain transactions causing duplicate key on index errors stopped replication.  Easy enough to fix, right? mysql&gt; SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1; mysql&gt; start slave;Hmm... nice until it happens almost every minute...So, after reading every link I could find on the internet, </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=200106109806081988' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/200106109806081988'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/200106109806081988'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/03/best-practices-oops.html' title='Best Practices - Oops...'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-8789510017878778914</id><published>2008-01-18T10:36:00.000-08:00</published><updated>2008-01-18T10:55:52.607-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='innodb'/><title type='text'>MySQL: Innodb internals</title><summary type='text'>Went to the MySQL Performance Tuning Class last week.  I would highly recommend it to any DBA new to MySQL, or any MySQL DBA looking to boost their tuning skills and understanding of some of the various features as they relate to performance.The next few posts will have to do with information I gleaned from that class...It's always good to understand what's happening underneath the covers when it</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=8789510017878778914' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/8789510017878778914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/8789510017878778914'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2008/01/mysql-innodb-internals.html' title='MySQL: Innodb internals'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-8739715126193097905</id><published>2007-12-13T09:41:00.000-08:00</published><updated>2007-12-13T11:01:30.013-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>SQLServer: What am I running anyway?</title><summary type='text'>Microsoft has enough crazy patches and service packs to drive a dba nuts! (that said, Oracle, Mysql, and most other databases have their fair share as well). Question is though, what version are we running anyway?  For those that don't come from the Microsoftie world, the whole daily build number thing in the version is a little out of control.IE:Server A:1&gt; SELECT @@VERSION2&gt; goMicrosoft SQL </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=8739715126193097905' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/8739715126193097905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/8739715126193097905'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/12/sqlserver-what-am-i-running-anyway.html' title='SQLServer: What am I running anyway?'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-6477842626513064401</id><published>2007-11-29T09:31:00.000-08:00</published><updated>2007-11-29T10:13:35.029-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Full Text Indexes'/><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>SQLServer 2005: Full Text Issue</title><summary type='text'>In my opinion, there is security, and then there is the absurd paranoia.  Microsoft tends to ride this line a little too much lately.  Trying to be the end all to security, they forget that we have firewalls, access lists, etc, etc that should be considered when locking things down.The interesting issue I've run into with Full Text searches now, is , somewhat not surprisingling, a known Microsoft</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=6477842626513064401' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/6477842626513064401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/6477842626513064401'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/11/sqlserver-2005-full-text-issue.html' title='SQLServer 2005: Full Text Issue'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-5978395552999237343</id><published>2007-11-16T09:57:00.000-08:00</published><updated>2007-11-16T10:30:36.714-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Full Text Indexes'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='Monitoring'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>SQLServer 2005: Full Text Search Monitoring</title><summary type='text'>Seems more and more lately that a DBA can't get out of being the Full Text query expert.  Whether that is an in-database technology such as Full Text/Intermedia Text, or an external database technology such as google appliances / FAST appliances.  The typical DBA is always stuck in between somewhere, and looks like we have to understand at least how to monitor and troubleshoot these indexing </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=5978395552999237343' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5978395552999237343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5978395552999237343'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/11/sqlserver-2005-full-text-search.html' title='SQLServer 2005: Full Text Search Monitoring'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-5688989295733497376</id><published>2007-10-19T10:34:00.000-07:00</published><updated>2007-10-19T10:53:48.948-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>MySQL : the beauty in beta</title><summary type='text'>Beta or not, here we come.  Yea, you'd think I'd learn to check out the known bugs list before letting developers/qa have at the new database servers running in the lab with MySQL 5.1.21-b .  I mean, how bad could beta really be?Well, as we should all know, beta is called beta for a reason, but sometimes we open source fanatics tend to jump on board, dealing with issues along the way.  This </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=5688989295733497376' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5688989295733497376'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5688989295733497376'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/10/mysql-beauty-in-beta.html' title='MySQL : the beauty in beta'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-6460752663872663613</id><published>2007-10-17T13:34:00.000-07:00</published><updated>2007-10-17T13:39:47.162-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='innodb'/><title type='text'>MySQL innodb plugin</title><summary type='text'>Recently I've spent hours compiling MySQL 5.1.22 and trying to get my cent0s configured for innodb and partitioning.  I tried every imaginable way to run configure, use different plugins, etc.I messed with this forever, then finally looked at the config options, and sure enough, the ./configure expects innobase, not innodb as the plugin name: from:  http://www.innodb.com/support/tips     On MySQL</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=6460752663872663613' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/6460752663872663613'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/6460752663872663613'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/10/mysql-innodb-plugin.html' title='MySQL innodb plugin'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-7805285997066862065</id><published>2007-10-15T12:22:00.000-07:00</published><updated>2007-10-15T12:25:43.358-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Replication'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>SQLServer: Image Replication - Oops</title><summary type='text'>Yea, it's always something, huh?Better mind your default configuration options with SQLServer 2005 if you plan on transactional replication with LOBs.  It's nice that they only replicate the appropriate changes, but you'll get an error if you are using images with sizes &gt; the default replication size allowed.See the Microsoft article for more info.Fun... :)</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=7805285997066862065' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/7805285997066862065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/7805285997066862065'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/10/sqlserver-image-replication-oops.html' title='SQLServer: Image Replication - Oops'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-5379249032509074732</id><published>2007-10-01T09:21:00.000-07:00</published><updated>2007-10-01T09:37:14.280-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Replication'/><category scheme='http://www.blogger.com/atom/ns#' term='Backup and Recovery'/><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2008'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><title type='text'>SQLServer: Transactional Replication Issues</title><summary type='text'>After seeing a few friends at the SQLPass 2007 Summit in Colorado and discussing some of the finer 'features' of pier to pier transactional replication and large database systems (my friends work on the replication team at Microsoft), I quickly ran into one of my big grips with P2P replication and SQLServer 2005.I had noted that being able to set up P2P from a 3rd party backup tool  is essential </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=5379249032509074732' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5379249032509074732'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/5379249032509074732'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/10/sqlserver-transactional-replication.html' title='SQLServer: Transactional Replication Issues'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-4626978444138100484</id><published>2007-09-28T09:59:00.000-07:00</published><updated>2007-09-28T16:23:49.055-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='Migration'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><title type='text'>MySQL Migration Toolkit</title><summary type='text'>I've been evaluating the latest version of the MySQL Migration Toolkit to work on migrations from SQLServer 2005 to MySQL 5.1Here are some of the things I found so far:Ease of use: Very simple and fast to get up and running - I was able to get multiple databases migrated from SQLServer to MySQL without any special setup or configuration changes.  Gui is straight forward and intuitive.Took a </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=4626978444138100484' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/4626978444138100484'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/4626978444138100484'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/09/mysql-migration-toolkit.html' title='MySQL Migration Toolkit'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-2503185541678875795</id><published>2007-09-05T15:12:00.000-07:00</published><updated>2007-09-05T15:29:38.210-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><title type='text'>SQLServer: Tracking Down Stat Issues</title><summary type='text'>The old debate of auto update statistics.  I've had issues with it in the past, and coming from an old UNIX / Oracle background, I've always been of the opinion that I know best ( probably not, but it's fun to believe that).The advantage of use sp_updatestats over update statistics is that is looks at sys.sysindexes for the status of indexes and whether or not they need to be updated or not, </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=2503185541678875795' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/2503185541678875795'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/2503185541678875795'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/09/sqlserver-tracking-down-stat-issues.html' title='SQLServer: Tracking Down Stat Issues'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-1033439032751740658</id><published>2007-08-03T13:31:00.000-07:00</published><updated>2007-08-03T16:37:00.926-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><title type='text'>SQLServer: Setting up Access from UNIX</title><summary type='text'>These are the detailed instructions for getting t-sql setup to run on UNIX.This assumes that you have perl 5x installed, and CPAN as well....Update  CPAN to the current available version cpan &gt; install Bundle::CPANUse CPAN to install  the DBI::Bundlecpan &gt; install Bundle::DBIInstall FreetdsDownload files from hereGunzip and untar the freetds tar.gz fileRead the README!Run configure tool to </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=1033439032751740658' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/1033439032751740658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/1033439032751740658'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/08/sqlserver-setting-up-access-from-unix.html' title='SQLServer: Setting up Access from UNIX'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-9172440350545203640</id><published>2007-07-09T13:21:00.000-07:00</published><updated>2007-07-09T13:29:53.977-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='Parallelism'/><title type='text'>SQLServer: The problem with SQLServer is the OS it runs on :)</title><summary type='text'>Yea,  No matter what way you slice it, the really problem I have with SQLServer, is the operating system it runs on.  Seems time after time my SQLServer issues are more related to the OS than anything else.  The latest issue surrounds dual core processors and parallelism.  By default, SQLServer's optimizer seems to look at the number of processors on a systems, multiply it by 2, and use that for </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=9172440350545203640' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/9172440350545203640'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/9172440350545203640'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/07/sqlserver-problem-with-sqlserver-is-os.html' title='SQLServer: The problem with SQLServer is the OS it runs on :)'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-469141080312813493</id><published>2007-06-22T14:16:00.000-07:00</published><updated>2007-06-22T14:39:08.891-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>SQLServer 2005: Capturing Processes Waiting / Blocked</title><summary type='text'>OK - it's out of order (this is supposed to be a followup on partitioning ), but I'm always writing some code and then later losing it and re-creating it, so I decided to put this up today...Everyonce in a while we've had short 'blocking / waiting' where things back up in the system. It's kindof a pain in the you know what when it disappears after a few minutes, so I wrote some code to grab all </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=469141080312813493' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/469141080312813493'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/469141080312813493'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/06/sqlserver-2005-capturing-processes.html' title='SQLServer 2005: Capturing Processes Waiting / Blocked'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-3799421362981505932</id><published>2007-06-08T10:34:00.000-07:00</published><updated>2007-06-08T15:54:29.014-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Partitioning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><title type='text'>SQLServer 2005: Automated Partitioning Part 1</title><summary type='text'>Partitioning is great, but it has to be automated if you want to do anything regularly with it. And as it typically goes, if you can do a task in repeatable order with T-SQL commands, you ought to be able to automate it, right?In the next few weeks I'll layout a hopefully straight forward way to automate your partitioning in SQLServer 2005. Though the examples will be done with date range </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=3799421362981505932' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/3799421362981505932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/3799421362981505932'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/06/sqlserver-2005-automated-partitioning.html' title='SQLServer 2005: Automated Partitioning Part 1'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-982159143119416256</id><published>2007-05-31T15:09:00.000-07:00</published><updated>2007-05-31T15:38:46.105-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Clustering'/><category scheme='http://www.blogger.com/atom/ns#' term='Partitioning'/><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><title type='text'>TUNING: Taking Advantage of New Features</title><summary type='text'>Wouldn't it be great if we always were able to design things from scratch?  So many things could be re-hashed and re-designed.  One of the real reason's we're (DBA's that is) frustrated all the time with poorly scalable products, is that we don't pro-actively encourage evolving architectures in a meaningful, planned way.It's always those developers throwing things over the wall, or the feature </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=982159143119416256' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/982159143119416256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/982159143119416256'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/05/tuning-taking-advantage-of-new-features.html' title='TUNING: Taking Advantage of New Features'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-4851831556512839858</id><published>2007-05-25T11:43:00.000-07:00</published><updated>2007-05-25T12:27:41.587-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='Clustering'/><category scheme='http://www.blogger.com/atom/ns#' term='Partitioning'/><category scheme='http://www.blogger.com/atom/ns#' term='VMWare'/><title type='text'>MySQL: getting started for newbies</title><summary type='text'>When MySQL first came out and started popping up all over the web in the e-commerce arena, if you were like me you looked at it as a wannabe.  'Call me in a few years when you grow up'.  Yea, sometimes the Oracle in us goes to our heads a little to fast...MySQL has really gone mainstream in the last few years.  Companies that never would have considered MySQL in the past for critical database </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=4851831556512839858' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/4851831556512839858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/4851831556512839858'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/05/mysql-getting-started-for-newbies.html' title='MySQL: getting started for newbies'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-1282952376793554103</id><published>2007-05-18T11:03:00.000-07:00</published><updated>2007-05-18T11:16:01.883-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='MySQL'/><category scheme='http://www.blogger.com/atom/ns#' term='VMWare'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle'/><title type='text'>VMWare:  The greatest thing since sliced bread</title><summary type='text'>So if you like to try out new things, and you're not using VMWare yet,  get with the program!Really, though - it's so easy now (and the VMServer is free)  .  Just download and install.VMWare lets you run mini virtualized server environments within your current operating system.  Yea, there is a little overhead, but for testing and trying out new databases, configurations, applications, it's </summary><link rel='related' href='http://www.vmware.com/products/free_virtualization.html' title='VMWare:  The greatest thing since sliced bread'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=1282952376793554103' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/1282952376793554103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/1282952376793554103'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/05/vmware-greatest-thing-since-sliced.html' title='VMWare:  The greatest thing since sliced bread'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-3249863740385461737</id><published>2007-05-14T10:20:00.000-07:00</published><updated>2007-06-22T14:40:57.440-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>SQLServer 2005: DMV's and determiniing fragmentation</title><summary type='text'>Dynamic Management Views (which are not all views, some are stored procedures / functions) are very useful and if you're a DBA working with SQLServer, you should know them inside and out, and have you're list of scripts ready at hand.Here's a couple that work well for determinining fragmentaion issues:*Note: Though these can be done on line, the due use CPU and heavy READ I/O - be sure to know </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=3249863740385461737' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/3249863740385461737'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/3249863740385461737'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/05/sqlserver-2005-dmvs-and-determiniing.html' title='SQLServer 2005: DMV&apos;s and determiniing fragmentation'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-4751787006113956694</id><published>2007-04-18T12:53:00.000-07:00</published><updated>2007-05-18T10:36:32.638-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><title type='text'>SQLServer 2000: Denormalizing ?</title><summary type='text'>Ever get one of those requests to denormalize a table into a view (sometimes referred to as pivot tables) ?Here's some code to use a function and view in SQLServer to denormalize data from a single table to force a pivot table based on a key:create table test_table(    key_field    int ,    cat_field varchar (512))insert into  test_table  values (1,'John')insert into  test_table  values (1,'R')</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=4751787006113956694' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/4751787006113956694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/4751787006113956694'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/04/sqlserver-2000-denormalizing.html' title='SQLServer 2000: Denormalizing ?'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-4249308936745961002</id><published>2007-03-13T07:30:00.000-07:00</published><updated>2007-05-18T10:43:28.492-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Partitioning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='DataWarehousing'/><title type='text'>SQLServer 2005: Working with partitions</title><summary type='text'>Now that SQLServer finally supports something the database world would really consider a decent first attempt at partitioning, I think it's high time we all start putting it to practice.Partitioning in the Oracle world is almost taken for granted. It's one of the most straight forward ways to scale a database in terms of size and performance, without looking at additional hardware and/or heavy </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=4249308936745961002' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/4249308936745961002'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/4249308936745961002'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/03/sqlserver-2005-working-with-partitions.html' title='SQLServer 2005: Working with partitions'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-6929052628286636827</id><published>2007-03-05T13:26:00.000-08:00</published><updated>2007-06-22T14:40:57.441-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>SQLServer 2000: Memory Grants Pending</title><summary type='text'>I tell you -Finding out anything about memory grants pending is virtually impossible. Yea, there are a few references to it out there in the google world, but most just refer to the fact that it's not much more than the title implies. SQLServer has memory grants for processes queued up.At surface value, you would expect it would mean 'get more memory', which is what most of the links imply.As it </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=6929052628286636827' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/6929052628286636827'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/6929052628286636827'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/03/sqlserver-2000-memory-grants-pending.html' title='SQLServer 2000: Memory Grants Pending'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-7399686137072818629</id><published>2007-02-13T14:09:00.000-08:00</published><updated>2007-06-22T14:40:57.441-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>SQLServer: Joining Views in Queries</title><summary type='text'>Two Words:  Bad Idea!The problem with this is that the SQLServer optimizer has to determine the best cost for the set of joins, and then base that on a view that has additional joins underneath it.It's almost always more efficient to rewrite the query to join the actual tables, and the optimizer is much faster at finding the Cost. We were also able to determine that when evaluating joins to view,</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=7399686137072818629' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/7399686137072818629'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/7399686137072818629'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2007/02/sqlserver-joining-views-in-queries.html' title='SQLServer: Joining Views in Queries'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-114788208267611429</id><published>2006-05-17T08:58:00.000-07:00</published><updated>2007-05-18T10:42:15.790-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><title type='text'>SQLServer:  2005 Interface Woes</title><summary type='text'>We've been evaluating SQLServer 2005 for a couple weeks now. It's taken that long just to get used to the new interface. In my humble opinion, it would have been better to spend more time working on features than working on the interface.That said, after a few weeks of playing with it, I'm getting used to the new interface.Drawbacks:Very resource consuming on the desktopBringing up the properties</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=114788208267611429' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/114788208267611429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/114788208267611429'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2006/05/sqlserver-2005-interface-woes.html' title='SQLServer:  2005 Interface Woes'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-112786256670795425</id><published>2005-09-27T16:09:00.000-07:00</published><updated>2007-06-22T14:40:57.442-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>SQLServer: Issues with update triggers and bulk updates</title><summary type='text'>It appears that there may be a bug with SQLServer 2000 and some update triggers.We have a constraint update trigger on a table that verifies entries in a secondary table before allowing some fields to be updated. The trigger fires consistently when an update is done one at a time, but when a bulk update is done (refering just to many rows at once), the trigger does not consistently fire.We'll be </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=112786256670795425' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/112786256670795425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/112786256670795425'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2005/09/sqlserver-issues-with-update-triggers.html' title='SQLServer: Issues with update triggers and bulk updates'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-110072646965907945</id><published>2004-11-17T13:06:00.000-08:00</published><updated>2007-06-22T14:40:57.442-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>SQLServer: To Lock or NOLOCK</title><summary type='text'>I don't think anyone would argue that one of the biggest problems on SQLServer (besides that it runs on Windows) is how terrible it's locking and lock escalation process is.Then when things seem to go slow when on inserts, the first thing the developers do is modify all selects to use the NOLOCK hint. Yea, so in theory that makes sense, but not only does it imply that data results may be </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=110072646965907945' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/110072646965907945'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/110072646965907945'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2004/11/sqlserver-to-lock-or-nolock.html' title='SQLServer: To Lock or NOLOCK'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-110062306219064554</id><published>2004-11-16T08:27:00.000-08:00</published><updated>2007-06-22T14:40:57.443-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>SQLServer: Statistics - Auto vs Manual update ?</title><summary type='text'>Have you ever seen 'select statman(....)' running while your SQLServer is under heavy transactional load? If not, you either don't have auto update stats turned on, or you database is not really under heavy load.By default, auto update is turned on, and SQLServer keeps track of how often indexes / tables are changed. Once 20% or 500 rows are changed, SQLServer starts updating statistics to </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=110062306219064554' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/110062306219064554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/110062306219064554'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2004/11/sqlserver-statistics-auto-vs-manual.html' title='SQLServer: Statistics - Auto vs Manual update ?'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-110028201935958761</id><published>2004-11-12T09:31:00.000-08:00</published><updated>2007-05-18T10:44:22.967-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='Oracle'/><title type='text'>ORACLE: Sending Logs/Files via mailx</title><summary type='text'>This may be irrelevant depending on your choice of monitoring tools, but I tend to prefer good old fashioned shell scripts on UNIX. One issue I've always had with mailx is being able to attach error files.Here's a sample script that seems to work on most UNIX flavors with sh,bash, or ksh:#!/bin/sh#DT=`date +%d%m%y`2&gt;&amp;1 echo "Hey - ORA- error !" &gt;&gt; ${ERR_DIR}/$0.$DT.errORA_ERRS=`grep -i ora- ${</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=110028201935958761' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/110028201935958761'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/110028201935958761'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2004/11/oracle-sending-logsfiles-via-mailx.html' title='ORACLE: Sending Logs/Files via mailx'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-110021902738987376</id><published>2004-11-11T16:16:00.000-08:00</published><updated>2007-06-22T14:40:57.443-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='Troubleshooting'/><title type='text'>SQLServer: When will we have a real optimizer ?</title><summary type='text'>Yup...It appears that still in 2000 Server, the optimizer is lacking in working without current statistics. So far it's very inconsistent, but as our databases increase in #rows and transactions, we find that we need to continually update statistics.In theory, if the data distribution does not change much over time (even if the data grows in size), the optimizer should chose similar plans as </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=110021902738987376' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/110021902738987376'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/110021902738987376'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2004/11/sqlserver-when-will-we-have-real.html' title='SQLServer: When will we have a real optimizer ?'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-110010736884965183</id><published>2004-11-10T09:07:00.000-08:00</published><updated>2007-05-18T10:40:29.569-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='UNIX'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><title type='text'>SQLServer: Access from UNIX ?</title><summary type='text'>Ahh... The age old question. Yup - who really want's to use ODBC anyway?In an effort to consolidate all perl parsing/transformation code for all database extractions we went with perl DBI on Linux. Initially, we figured, no problem.Here are some things we found out:Default perl install on Fudora Core distribution of Linux had issues with SybPerl Resolution: Grab latest stable build from perl.org </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=110010736884965183' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/110010736884965183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/110010736884965183'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2004/11/sqlserver-access-from-unix.html' title='SQLServer: Access from UNIX ?'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-110001899243928477</id><published>2004-11-09T08:23:00.000-08:00</published><updated>2007-05-18T10:40:54.583-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='DataWarehousing'/><title type='text'>SQLServer: DataWarehouses and DATETIME</title><summary type='text'>So we want to grab significant transactions from yesterday for our datawarehouse, but we're not quite sure exactly what time our DTS extraction jobs will run.What is the easiest way to get all rows that have a datetime column entry from yesterday? With Oracle, we just use trunc sysdate - 1 and trunc sysdate, but I haven't been able to find a good trunc function in SQLServer.Here's what we've come</summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=110001899243928477' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/110001899243928477'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/110001899243928477'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2004/11/sqlserver-datawarehouses-and-datetime.html' title='SQLServer: DataWarehouses and DATETIME'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8932703.post-109909177255083223</id><published>2004-10-29T16:13:00.000-07:00</published><updated>2007-05-31T15:40:36.634-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Partitioning'/><category scheme='http://www.blogger.com/atom/ns#' term='PerformanceTuning'/><category scheme='http://www.blogger.com/atom/ns#' term='SQLServer'/><category scheme='http://www.blogger.com/atom/ns#' term='DataWarehousing'/><title type='text'>SQLServer: Partitions</title><summary type='text'>Initial testing with SQLServer 2000 partitions appears to work simillarly with Oracle from a select perspective.Explain plans show accessing only local partition indexes, and not all partitions (or tables) in the union views. Inserts / updates appear to first check each partition, then perform the transaction only on the necessary partition.Some of the issues we've specifically found with </summary><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8932703&amp;postID=109909177255083223' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/109909177255083223'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8932703/posts/default/109909177255083223'/><link rel='alternate' type='text/html' href='http://opendba.blogspot.com/2004/10/sqlserver-partitions.html' title='SQLServer: Partitions'/><author><name>Phil Hildebrand</name><uri>http://www.blogger.com/profile/14475657186862360705</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry></feed>
