A few years back I remember reading an article about Microsoft making SQL server available for Linux. At the conclusion the author pointed out it was April 1st and the article was a gag - Microsoft would never put a flagship product like SQL server on open source. Yet here we stand today about to perform an install on Redhat EC2 instance - what a dramatic turn of events.
We'll start off the demo by provisioning our EC2 instance on AWS. If you don't have an AWS account go sign up first - it just takes a credit card and internet connection. After logging in expand options under "All Services" and select EC2 under the Compute services.
Click Launch instance and you will be presented with an option of available operating systems. Select Red Hat.
The next decision is what specs to make the VM. It's important to pick a machine that will perform well but isn't over provisioned. Costing models vary but often they are pegged to how many hours the machine runs at a particular service level. For more guidance on estimating costs view the AWS simple calculator here : http://calculator.s3.amazonaws.com/index.html
We're almost ready to launch the machine. We need to configure the security group. You can use the one created by the wizard or select a pre-existing. I'll use the newly created one changing only the allowable IP address to my own.
Now things start to get a little fun. Before launching the instance we need to configure the key pair. Select 'Create a new key pair', name the pair, download, launch, and go grab a coffee while your machine spins up.
Once finished provisioning we can login using a SSH client. I'm going to download and use PuTTY. If you decide to use PuTTY you will also need to download PuTTYgen to convert the format of our key from .pem to the .ppk putty format.
Load the .pem key into PuTTy Gen and then save as private key. We'll skip the warning about creating without a passphrase for now by clicking "Yes".
Next open PuTTy and load the key to our client under SSH > Auth.
We can now create a SSH session. Grab the Public DNS of our EC2 and place it into the host name. Click connect, and login as ec2-user.
We now can begin installing Sql server. Here's the steps we need to take:
pull the mssql-server package from https://packages.microsoft.com/config/rhel/7/mssql-server.repo and place it into our /etc/yum.repos.d/mssql-server.repo folder.
install mssql-server package
Agree to license terms and set SA password
Install Firewall config tool, open port 1433
Here's how it's done via our SSH session:
cd /etc/yum.repos.d/ yum-config-manager --add-repo https://packages.microsoft.com/config/rhel/7/mssql-server.repo yum install mssql-server cd /opt/mssql/bin sudo ./sqlservr-setup yum install firewalld systemctl unmask firewalld systemctl enable firewalld systemctl start firewalld firewall-cmd --add-port=1433/tcp
The server is ready. I want to interact with the server via SQL server managment studio so I will need to perform one more step. Open port 1433 in the AWS security group.
And beautiful.. We're connected to our Red Hat Linux SQL Server through SSMS-