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.
how about MS Mail/Exchange and the other stuff? servers of yesterday, OSes of today!
Ive never dealt that much with Exchange 4… maybe? I doubt 5 will cooperate it’s much too picky with too many child processes that expect to be started as a service.
For whatever reason wine really lacks the ability to run services.
Apparently SQL 2000 can also be installed!
More information is here!
In order to get a running install, use the following steps:
– unpack the self-extracting archive
– run the installer:
wine setup.exe DISABLEROLLBACK=1 BLANKSAPWD=1 DISABLENETWORKPROTOCOLS=0 SECURITYMODE=SQL
– installer will report an error, but will keep the service installed
– move all files from c:\users\{username}\Temp\SqlSetup\Temp to c:\windows\system32
After that the server starts as soon as you start any other appliaction in wine. I recommend the following:
wine “C:/Program Files/Microsoft SQL Server/80/Tools/Binn/sqlmangr.exe”
Service is accessible on localhost:1433, user sa, empty password.