Thursday, January 18, 2007

Another issue with SQLServer 2005

Remote servers.

Our main database is an Ingres database, the web database is now SQLServer 2005. Occasionally we need to link data from both(for checks etc). Unfortunately Ingres cannot do cross catalog queries(no idea why, but as Postgres can't either, I blame the designer). Fortunately if you link in a remote server in SQLServer you can perform cross catalog selects. Simply set up a remote server for each Ingres catalog and use :

select *

from ingresdb1..owner.table_name

union all

from ingresdb2..owner.table_name

making sure you have set ansi_null and ansi_warnings to on.

However after I set up an ODBC connection to Ingres on the SQLServer 2005 database(which is no fun either as you need to set up IngresNet first and log in using the admin password) and then set up a remote server to Ingres in the SQLServer manager I ran a test query, it brought the whole server down.

Now MySQL cannot link to remote servers(that I know of), but I have yet to ask it to do something I know it can do and have it crash completely, I used to be able to say that was mostly true of SQLServer, but the 2005 server has been online for two weeks and crashed more than a dozen times in that period.


Labels: ,

Wednesday, January 17, 2007

SQL Server 2005

Stick with me on this one:
I've just installed the client tools for SQLServer 2005. I have a small C: drive and needed to install it on my E: drive.
  • I tell the installer to install to e:\program files\Microsoft...
  • It tells me there isn't enough room
  • I check drive e: to see that there is enough room, restart the installer and try again
  • It still fails!
  • I notice there is a button on the installer that will tell me how much disk space it needs
    • it needs 150mb on e:
    • 1.4GB on c:
    • It will install .net 2.0, visual studio developer and a whole lot more on the c: drive and I cannot change it
  • I uninstall a couple of applications and move them to the e: drive
  • I get enough room on my c: drive(just)
  • It installs

All I want to do is set up a regular backup on the database. It's is simple on the previous versions of SQLServer, but on 2005 it isn't.
I end up using the maintenance wizard to build a job that will back up the database. At the end it tells me that 1) The T-SQL isn't the real T-SQL that it will run as I have asked for weird configurations and 2) It cannot save the job as their is an error. It's a fucking wizard, I typed and selected nothing, just clicked 'next' a lot.
I think I have got it running but I've used a large number of versions of SQLServer and one of the good things about it is the minimal time it takes to dump a large database. In this version it is taking forever.

In summary SQLServer adds very little to the database engine, server, whatever, just a lot of added crap to the extras and uses a hugh amount of disc space to achieve it.
I really hate Microsoft; SQLServer was their only worthwhile product but it now appears the SQLServer development team has been infiltrated by the marketing code bloaters.

Word to the wise, a database server serves data! Add tools to make backup easier and you are away.
MySQL must be very happy with SQLServer 2005 as it's just another good reason to migrate to MySQL.

PS: The JTDS JDBC driver still talks to it, which is one thing.

Labels: , , ,