Sep
09
2021 Posted by James Cockayne

DB2 on Apple Silicon

Apple’s Macs have been a popular development platform for many years now, but IBM have never really committed to supporting DB2 servers on macOS it seems.  There was a version of DB2 Express-c v9.7 made available some years ago, but it was lacking features and is obviously way too far out of date to consider these days.  A useful solution was to run Docker containers, or full virtual machines with Linux or Windows to make DB2 available locally, but the switch to the new Apple Silicon processors, or the M1 chip, means the Mac now uses the ARM64 instruction set rather than sharing the Intel/AMD x86-64 processors common to Windows and Linux platforms – and there is no option to download a copy of DB2 that runs on this processor.

So is that the end of having DB2 installed locally?  Not quite.  You may have heard that Apple provides software called Rosetta 2 that can translate macOS applications intended for x86-64 processors so they can run on the new ARM64 based chips.  What you may not have heard is that there is a version of Windows designed to run on ARM64 processors that can do the same for Windows applications – enabling 64bit Windows applications that are designed to run on Intel/AMD x86-64 processors to run on ARM64.

Being Mac fans here at Triton…. ok some of us here at Triton are Mac fans… we had to give it a go with DB2 – and what do you know:

 

DB2 on Apple Silicon

 

Success.  What you’re seeing in the screenshot is DB2 for Windows x86-64 running on a Windows 10 ARM64 virtual machine hosted by a M1 MacBook Air.  Windows is doing the CPU translation magic, and Parallels is running the Windows OS in a virtual machine on the M1 macOS host.

There were a couple of minor snags on the DB2 install – the setup program checks the CPU architecture, and as Windows reports ARM it will not proceed.  However, running the installer manually bypasses that check and allows Windows to apply the CPU translation.  And one warning came from the installer – a failure to create a link for the DB2 First Steps app, but that can be ignored (unless you want to use the First Steps app I guess, but who does?).

It’s worth noting that I also tried this using the UTM virtualisation software instead of Parallels and that works as well, albeit the setup of Windows is a bit more involved and the experience is a bit more clunky.  But UTM is available at no cost so I’m not complaining.

Obviously, this all falls in the ‘interesting technical exercise’ category as there may well be issues and there will be no support from IBM or Microsoft.  For that matter Microsoft don’t sell the ARM version of Windows directly to consumers currently, you have to sign up for the Windows Insider Program and use a preview version.  But if you want to try a local install of DB2 on your new M1 Mac (good as the cloud is, I find a train tunnel defeats it every time…) maybe give it a go.

Here are some links to resources used in this blog:

 


Subscribe for updates

* indicates required



4 thoughts on “DB2 on Apple Silicon”

  1. Dirk Bundies says:

    Hi James,

    thanks for your post!
    “running the installer manually bypasses that check”, how did you do that?

    Regards,
    Dirk

    1. James Cockayne says:

      Hi Dirk

      I used a Server fixpack for the install – after unzipping the package the installer is located here:

      SERVER_DEC\db2\Windows\DB2 Server.msi

      It can take a minute before the splash screen shows. Let us know how you get on with Windows 11!

      1. Steve Dryburgh says:

        Hi James, I am attempting to load Db2 on my M1 machine but am getting the errors that the archatec is not compatible would you be able to piont me to where I would get the server fixpack you mentioned above? SERVER_DEC\db2\Windows\DB2 Server.msi. I really appreciate this.

  2. Dirk Bundies says:

    Hi James,

    thanks a lot, that worked! I’ve used DB2 v11.5.6000.1809.

    Regards,
    Dirk

Leave a Reply to James Cockayne Cancel reply

Your email address will not be published. Required fields are marked *

« | »
Have a Question?

Get in touch with our expert team and see how we can help with your IT project, call us on +44(0) 870 2411 550 or use our contact form…