Category: Microsoft
Installing Sharepoint Server 2007 on Windows Server 2008 R2
As part of our ongoing Sharepoint project, I've decided to go all modern - the base OS is 64 bit Windows Server 2008 R2 Enterprise and the database engine is 64 bit SQL Server 2008. However, as soon as you try installing Sharepoint Server 2007 with a vanilla disk, you'll run in to problems - 2008 R2 expects Sharepoint to be service packed up, and at the moment there's no media available with SP1 or SP2 embedded (in fact there's no media avaliable at all on the Volume Licensing site at all, just a note telling you that for the moment they'll ship you the physical media for free - WTF is going on at Redmond at the moment?)
Luckily, there is a pretty easy way to get around the problem.
- Copy your install disk to a hard drive
- Download Sharepoint Server 2007 SP2 here
- Run the following command from the command prompt (cd to the directory where your download is stored first): officeserver2007sp2-kb953334-x64-fullfile-en-us.exe /extract: [Location of files copied from installation disk]\Updates
- Run setup.exe from the copied installation media root
Job done ![]()
Fun with Blades
As part of a Sharepoint deployment project, this week I've been building up one of the blades in our blade centre (an HP C-Class with an MSA1500 sitting on the back). A couple of things have struck me as I've been going through the build process - firstly, the insanely huge recommended partition size for Windows Server 2008 R2. The minimum recommended is 64GB. Take a while and let that sink in. 64 GB. The blade I'm using comes equipped with a pair of 137GB SAS drives, so once we mirror them, nearly half of the available space is taken! Not funny Microsoft! I'm sure that the chaps at Redmond will justify this by saying that it means that the OS has the optimum amount of space to spread in to, but compare this with a CentOS installation on the same hardware. 1.5GB. There is no way anyone can justify more than 40 times space for an equivalent installation - our CentOS box runs mySQL, Apache with 4 virtual sites and 2 instances of our VLE (Moodle - more of that in later posts). It's just not on, and it's no wonder that a lot of the admins I speak to are looking more and more seriously at an Open Source back end...
Secondly, the lack of 64 bit driver support is a major pain. Building the blade with a SmartStart v7.9 disk was an absolute no-no, even though it's only around a year old. Had to download v8.3 to get driver support for R2 x64. It's no wonder that lacklustre support from vendors leads to the same from developers - on my 64 bit desktop, probably half of the apps are still installed in the x86 Program Files root. 64 bit computing is not a new idea, and until either Microsoft or Intel make a stand and push 64 bit then we'll be stuck in a situation where 64 bit chips are running 32 bit code, hosting virtual machines to run 16 bit code designed by 2 bit companies...
What a week! Active Directory Death and Flaky SQL Apps
Sometime last week, I wrote that I'd be testing some virtualisation options for our new deployment and reporting back to you with the results... Well, in the interim, we've had an Active Directory death. This is not just a failed server, it's a full on meltdown. We noticed something was wrong when clients started dropping off of the domain. After taking some Wireshark traces, we noticed that there were a lot of DHCP requests floating about. Immediately alarm bells started flashing, as our DHCP box also runs DNS, as well as being the Global Catalog server, the PDC emulator and the FMSO master.
The server was dead - properly FUBAR'd. We're still not 100% sure what caused the failure, but I'm pretty sure it's a person rather than technology - this is what happens when you're forced to give 8000 students admin rights. Take note. If the dead server hadn't been the Global Catalog server then we could have cleared the remnants out of AD and removed it. However, as always happens, it was, which meant that Exchange went screwy too. Cue a restore from tape, which seems to have fixed most of the problems, although the first restore left the server with no Netlogon or Sysvol share! Apart from losing the DHCP reservations database, we appear to be OK, for the moment. Now I just need to prove who did it!
Since the restore, we've had problems with one of our finance apps - the clients keep reporting a SQL Connection Reset and then hundreds of VB Runtime errors occur. Long story short, it's network... If you're a DBA and you see this in your apps, get on to your server and network guys and shout at them - the only way a SQL app should generate this is if something kills the SPID, and of course that wouldn't happen on your server, would it!
I'll be back blogging again regularly soon - the virtualisation project is still live, and I have a review of the lovely Advent One 10" laptop to give you...
TTFN!
Another Failed Patch - KB955428. How hard is it to make these things work? My Solution Here
How bloody difficult is it to get a patch to install via Windows Update? The latest failure is KB955428, an update that closes a security hole in Works 8. It's one that you want to have... Luckily, the MS support site contains the solution.
Go to the KB955428 support page
Download the patch that corresponds to your version - the language code is on the end of the file name, so mine is EN-US
Extract the installer from the cabinet file using your extractor of choice (gotta be 7-Zip!)
Double click the installer, then think about why, after ten years of trying, Microsoft still can't get this bloody technology working right. Surely installing a security patch correctly is not too much to ask for!
Virtualisation - ESXi versus HyperV
I'm currently running a large infrastructure project for a new university in Buckinghamshire. As part of this, I've taken the decision to virtualise the Active Directory, Exchange and SQL Server boxes that'll be used on the site. We have an HP blade centre in the server room with 8 fully loaded blades - dual quad core Xeons and 16GB RAM - together with an MSA1500 SAN, so power and storage won't be an issue. The only decision left to make is which virtualisation path to go down - ESXi (now free), or HyperV on Windows 2008. Over the next week or so, I'll be investigating both solutions, running some benchmarks and generally getting a feel from the guys that'll be administering the network what their thoughts are. Then I'll be sharing them with you, because that's the sort of chap I am... ![]()
Should be an interesting project...
SQL Server - Determine Table Sizes via T/SQL
If you're troubleshooting issues on SQL Server, you may find the following script useful. It will list all of the tables in a given database, giving their size, allocated space, index space, unused space, and a row count... Hope it helps you out!
USE {your_database_name}
SET NOCOUNT ON
CREATE TABLE #TBLSize
(Tblname varchar(80),
TblRows int,
TblReserved varchar(80),
TblData varchar(80),
TblIndex_Size varchar(80),
TblUnused varchar(80))
DECLARE @DBname varchar(80)
DECLARE @tablename varchar(80)
SELECT @DBname = DB_NAME(DB_ID())
PRINT 'User Table size Report for (Server / Database): ' + @@ServerName + ' / ' + @DBName
PRINT ''
PRINT 'By Size Descending'
DECLARE TblName_cursor CURSOR FOR
SELECT NAME
FROM sysobjects
WHERE xType = 'U'
OPEN TblName_cursor
FETCH NEXT FROM TblName_cursor
INTO @tablename
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO #tblSize(Tblname, TblRows, TblReserved, TblData, TblIndex_Size, TblUnused)
EXEC Sp_SpaceUsed @tablename
-- Get the next author.
FETCH NEXT FROM TblName_cursor
INTO @tablename
END
CLOSE TblName_cursor
DEALLOCATE TblName_cursor
SELECT Tblname 'Table',
TblRows 'Row Count',
TblReserved 'Total Space (KB)',
TblData 'Data Space',
TblIndex_Size 'Index Space',
TblUnused 'Unused Space'
FROM #tblSize
Order by 'Table'
DROP TABLE #TblSize
FAT16 - Remember the golden rule...
I've been playing around with my honeymoon photos (online soon!) - I've now got them in a format that I like, and they're backed up in 5 different locations, so I thought it about time I formatted the cards so I can use them again. As always happens, about an hour after I formatted it, my new mother and father in law wanted to show some of the photos to their friends on their Wii (I have cool in-law's). So, I started copying back the 700 or so photos we took of the Rockies...
About two thirds of the way through the copy, Windows through up an error message - cannot copy file blah, blah. So, I cancelled the copy, deleted the files off of the card and tried again... Same point in the copy, same problem... Hmm...
After about 10 minutes of thinking, I realised that I am, of course, an idiot. I'd formatted them with the FAT16 file system (God knows why!) which, as you'll probably know only allows 512 files on any particular volume. A reformat with FAT32 and the problem is solved. Just goes to show that even 10 years in IT doesn't stop you from making stupid mistakes...
Generating a Real, No-Foolin' Blue Screen and Crash Dump File
As you use Windows more and more, your talents will progress to the point that you may want to get in to debugging. I'll save the in's and out's of that for another post - in this one, I'll show you how to generate a Blue Screen of Death (BSOD), and more importantly a crash dump file that you can use for further analysis with your debugger of choice.
Open regedit and navigate to:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\i8042prt\Parameters
Create a new DWORD value and name it CrashOnCtrlScroll
Right-click on this newly created value and click on Modify
Enter 1 in the Value data field and click on OK
Close regedit and reboot
To generate a BSOD, hold down the right CTRL key and hit Scroll Lock twice
You may also want to have a look in the startup and recovery settings (Control Panel -> System -> Advanced -> Startup and Recovery)

Here you can change the amount of information collected during a crash, and redirect where it is stored...
Happy BSODing!
Vista KB947562 Installation Problems - Solved!
Having come back to my desktop after 3 weeks, as you can imagine, there were a few patches to download. Most installed fine, with the exception of KB947562, which steadfastly refused to play nicely (7 goes at installing and no luck). If you search for this KB on the Microsoft Support Site, you'll see that it's an application compatibility update, which is a nice thing to have! If you're having similar issues with installing it there is an easy solution that gets it installed with a minimum of fuss:
Go to the stand alone installation site (don't worry, it's a Microsoft page).
Validate your copy of Vista.
Download the update (it's about 3.5mb).
Double click it and follow the prompts on screen.
Simple as that!
As a rule of thumb, you can usually find stand alone installers for any of the Windows updates by putting the KB number in the search box on the Microsoft support site - it can save a hell of a lot of hair tearing (trust me!)
Access Database Password Recovery (the easy way!)
As a DBA, I hate Microsoft Access with a passion. It is one of those products that started off with an admirable intent but really should have been retired somewhere around the late 1990s. The main problem is that users create simple little databases for their workgroup to use which grow silently until they become mission critical to entire organisations (trust me, I've seen it happen and it's not pretty). I repeatedly offer to design my users nice distributed databases in SQL Server, and am constantly rebuffed.
Another major headache is when the databases are created with passwords, "for security". They're then not used for a year, which means that the passwords end up forgotten. Luckily, I have this little utility that lets me recover the password with ease. All you need to do is download the zip file by clicking here, then drag the mdb file on to the executable - the password is revealed by magic!
Now all you need to do is get your users to stop using the bloody program in the first place ![]()

15/12/09 04:39:41 pm, 