Yes, you read that right. Â Thanks to the power of Crossover (Wine) I’m running SQL 4.21 on OS X. Â But the installation is *NOT* straightforward. Â Actually it doesn’t install at all. Â But you can ‘transport’ a working copy from a Windows machine into Wine, and it’ll run.
The first thing is, if you’ve ever dealt with MSSQL is that it is VERY picky about machine names. Â So first install MS SQL 4.21 in a NT 3.1/3.5/3.51/4.0 VM with a name you like. Also remember to set the default client library to TCPIP. Then create a Wine instance on your target box. Â Next you’ll need to make a few changes to the registry to force the machine name:
HKEY_CURRENT_USER\Software\Wine\Network
UseDnsComputerName
REG_SZ N
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ActiveComputerName
ComputerName
REG_SZ MSDE
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName
ComputerName
REG_SZ MSDE
I called my machine MSDE, as I have no imagination. Â With those keys in place the next thing to do is grab the service keys..
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\SQLServer
and
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\SQLMonitor
Then finally the MS SQL product key:
HKEY_LOCAL_MACHINE\Software\Microsoft\SQLServer
The final step was to copy over the c:\sql directory, and create icons for the SQL Server, and the management tool.
To run, start the server first (SQLSERVR.EXE) , then launch the admin tool (SQLADMIN.EXE), and you should (hopefully) be able to connect!
And there we go! Is it useful? Not really, but I mean it is cool! I haven’t tried this with 6.0 or 6.5 but I imagine they should work as well. 7.0 and beyond are more complicated to transpose as they require a great deal of COM integration. In theory they should work.