Apple iMac- Compatibility of SQL Server, Business Intelligence and other Microsoft Developer tools

  • Hi,

    For my personal use, home computing, I want to go for Apple iMac, but, only doubt factor stopping me is the compatibility of Microsoft products on Apple machines. Basically, I want to have a full home use installations of Microsoft products such as SQL Server Management Studio, Business Intelligence products (SSIS, SSAS, SSRS), Visual Studio, Access Database, SQL Server Database and MS-Office.

    General googling gave me confidence that we have Apple Mac compatible Microsoft products, however, am bit hesitant to move away from IBM "PC" concept to Apple Mac for concern of incompatibility issues with Microsoft Development tools such as SSDT and others mentioned above.

    Could you please share your thoughts?

    thank you

  • You cannot install Microsoft SQL Server software in a Mac OS but you can run Windows in a VM on a Mac OS and install your software inside the Windows installation in the VM. Look into the software "Parallels" for Mac.

    You can also boot directly into Windows as it too will run on Mac hardware natively since its on an x64 hardware architecture. Look into the software "Bootcamp" for Mac.

    There are no special teachers of virtue, because virtue is taught by the whole community.
    --Plato

  • Mac user here, I switched from Windows to Mac for personal use in 2007. I will be buying a new PC box soon, mainly for dedicated vintage gaming and SQL Server.

    As Orlando pointed out, your two common ways of doing it is to run a VM using Parallels or VMWare, or using Bootcamp to effectively dual-boot your computer in to a Windows environment. (I think there are one or two other VM packages out there, but I have no experience with them: Parallels and VMWare are the biggies) Personally I use Parallels currently though I'm contemplating a switch to VMWare. I don't think you can convert virtual machine images between those two, so I'll be doing a full rebuild.

    I would give VMWare a slight preference as you can swap images between your laptop and your employer's infrastructure, assuming they're running a VMWare environment and policy (and disk space!) allow.

    A couple of 'gotchas' with Parallels. Apple releases a new OS-X every year, and every year Parallels will hound you to buy a new upgrade. Also, they'll hound you whenever a new version of Windows comes out. As the upgrade is typically $50, it's no big deal, but it's annoying. They seem to revel in making their system incompatible with the next OS. Also, whenever they upgrade their 'Parallels Tools', it will upgrade your VM (each and every VM that you have), which will require a VM reboot. It can take a while, so personally I would upgrade the tools for the first couple of months when a new edition of the software came out, then ignore it if I didn't have a lot of time available.

    Functionally, it works just fine. I'd recommend a Mac with 8-16 gig of memory, and with iMacs and Mac Pros supporting 32 gig or more, that's what I'd do. By using a VM system, you have the option of flipping between the two operating systems. The VM software is quite mature as they've been improving it for years ever since Apple went Intel and OS-X.

    One thing to watch out for: Time Machine backups. If you're running TM, and you should!, I would do two things. First, exclude your VM from the TM backup. My VMs are typically around 80 gig: while that isn't much, every time you open that VM it is marked as updated and the system will want to back it up, which may or may not be what you want. I'd suggest copying the VM to wherever your backup is whenever you change your backup media.

    You may also have keyboard mapping issues. The Windows keyboard functionality is there, but sometimes it's hidden behind somewhat arcane keyboard combinations or menus. But it's there. The absence of a Delete key from the stock Apple keyboards has always been a source of vexation for me.

    I say go for it. I've been doing it for 8(?!) years now, I find it hard to believe it's been that long. I went to SQL PASS in 2008 and was very happy to see several people using MacBook Pros to run SQL Server on. I've seen even more (as a percentage of attendees) at the two SQL Saturday events that I've attended.

    EDIT: I forgot to mention: I've never used Bootcamp, so no thoughts on that.

    2nd EDIT: Obviously you'll need a licensed Windows OS: 7, 8, 10, Server, whatever ($100+). I'm using 7 Pro. And you can buy SQL Server Developer Edition from Amazon and other places for $55 or so which gives you all of the features of the Enterprise edition except it's not usable for a production installation. As long as you own the CDs from a Windows installation, including your Office package, you should be good to go.

    -----
    [font="Arial"]Knowledge is of two kinds. We know a subject ourselves or we know where we can find information upon it. --Samuel Johnson[/font]

  • If you have the Micrsoft developer stack installed on your PC at work, and you're essentially wanting to experiment and learn from comfort of home after hours, then consider using VPN client to remote into your work PC. That's the easiest and least expensive option.

    Assuming you want to go the route of installing and running a VM on your Mac, keep in mind it would consume about 20 GB (at least) of HD space and require at least 8 GB of RAM to be usable. If your Mac isn't up to spec for that type of multitasking, then you may be better off to purchase a low end PC laptop just for this dedicated purpose rather than cluttering up your Mac. You can spend $300 on a low-end PC laptop with QuadCore CPU, 4 GB of RAM and 500 GB HD storage, which is a cheap and capable work horse, and much less expensive than upgrading your Mac.

    "Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho

  • One thing to consider if you're going to run SQL Server locally is memory. SQL Server loves memory. Whatever you give it, it will happily use and just want 1 more GB. If you give it another 16 GB, it'll happily use it and just want 1 more GB. I agree with Eric's suggestion of running it on it's own Windows laptop, but giving it memory to work with will reduce (not eliminate) your frustration factor.

  • Ed Wagner (1/18/2016)


    One thing to consider if you're going to run SQL Server locally is memory. SQL Server loves memory. Whatever you give it, it will happily use and just want 1 more GB. If you give it another 16 GB, it'll happily use it and just want 1 more GB. I agree with Eric's suggestion of running it on it's own Windows laptop, but giving it memory to work with will reduce (not eliminate) your frustration factor.

    This reminded me of the phrase "feed the beast". 🙂

    http://imagecache5d.allposters.com/watermarker/37-3764-YPUZF00Z.jpg

    https://en.wikipedia.org/wiki/Starve_the_beast

    "Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho

  • Eric M Russell (1/18/2016)


    Ed Wagner (1/18/2016)


    One thing to consider if you're going to run SQL Server locally is memory. SQL Server loves memory. Whatever you give it, it will happily use and just want 1 more GB. If you give it another 16 GB, it'll happily use it and just want 1 more GB. I agree with Eric's suggestion of running it on it's own Windows laptop, but giving it memory to work with will reduce (not eliminate) your frustration factor.

    This reminded me of the phrase "feed the beast". 🙂

    http://imagecache5d.allposters.com/watermarker/37-3764-YPUZF00Z.jpg

    https://en.wikipedia.org/wiki/Starve_the_beast

    It is almost like we're feeding SQL Server memory, isn't it? The thing to remember is that high memory consumption is a feature, not a bug.

  • Ed Wagner (1/19/2016)


    Eric M Russell (1/18/2016)


    Ed Wagner (1/18/2016)


    One thing to consider if you're going to run SQL Server locally is memory. SQL Server loves memory. Whatever you give it, it will happily use and just want 1 more GB. If you give it another 16 GB, it'll happily use it and just want 1 more GB. I agree with Eric's suggestion of running it on it's own Windows laptop, but giving it memory to work with will reduce (not eliminate) your frustration factor.

    This reminded me of the phrase "feed the beast". 🙂

    http://imagecache5d.allposters.com/watermarker/37-3764-YPUZF00Z.jpg

    https://en.wikipedia.org/wiki/Starve_the_beast

    It is almost like we're feeding SQL Server memory, isn't it? The thing to remember is that high memory consumption is a feature, not a bug.

    Yes, so it's up to the DBA to "starve the beast" by capping Max Server Memory depending on what other services or applications need to run on the machine, which ideally should only be Windows Server.

    "Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho

  • Balancing SQL Server needs is definitely an issue with OS virtualization, then again, that's true with any virtualization setup. You've got the base machine's RAM, then in the VM manager you configure how much memory the individual VM will have, then you configure SQL Server. My last experiences with Parallels on a 16 gig iMac would let you take the VM to 16 gig available, but I don't recall it letting you virtualize more RAM.

    My iMac has been in the shop with a display problem, I should be getting it back later this week and I'll be upgrading it to 32 gig. Should be interesting.

    -----
    [font="Arial"]Knowledge is of two kinds. We know a subject ourselves or we know where we can find information upon it. --Samuel Johnson[/font]

  • wow, 32GB - that's some serious kit right there.

  • Yeah, I hope it's true! When I bought my iMac, I was told it was a 16 gig limit. But the repair shop says it has 4 memory slots, so if that's true, then I'm definitely going to bump it to 32 gig!

    VM work aside, I'm curious how fast rendering will be for video editing!

    -----
    [font="Arial"]Knowledge is of two kinds. We know a subject ourselves or we know where we can find information upon it. --Samuel Johnson[/font]

  • I am a Linux user at home (MS Environment at work), I use Crossover (by Codeweavers) to run windows programs and it works really well. They make a version for Mac as well and have a trial version which fully works but has a limited period of x amount of days, so worth a testing as you wont need a Windows VM to use it.

    Jon.

  • Jonathan-Fussell (1/20/2016)


    I am a Linux user at home (MS Environment at work), I use Crossover (by Codeweavers) to run windows programs and it works really well. They make a version for Mac as well and have a trial version which fully works but has a limited period of x amount of days, so worth a testing as you wont need a Windows VM to use it.

    Jon.

    I seriously doubt you can simply run SQL Server and Visual Studio in an emulator; these arn't just "windows programs".

    "Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho

  • I am unsure how well it will run or not however it is important to note that Crossover is not a emulator, which I why there is a chance it will work. (maybe with some extra time spent on it or not)

  • Like Wayne, I'm a Mac user and where I absolutely must use Windows I run Windows 7 in a VM (VirtualBox). This is stable and offers the compromise I need.

    I can't comment on the use of any other Microsoft software in this environment. I just haven't up to now.

    However, your question has inspired me to give it a go, so within the next couple of weeks I'll be installing Windows Server 2012 and SQL Server 2012 in a VM with 24GB RAM; the iMac has 32GB installed.

    I've no doubt that Parallels or VMWare offer a slightly slicker interface - I will see how I cope with the limitations imposed by VirtualBox before I shell out on a paid for solution.

Viewing 15 posts - 1 through 15 (of 17 total)

You must be logged in to reply to this topic. Login to reply