Step by Step - Using MySQL External Database with Amazon AWS Server | Solution!!!

This post is oriented fully and only to show how to set an Amazon AWS server and how to connect with MySQL Workbench and finally connect with your Outsystems Environment.

Based on the lack of information regarding the Amazon AWS account and his configuration and also how to connect to MySQL and finally to Outsystems, i encouraged myself to do this post to save time to current and future people having the same doubts that i had.

Depending on you desire (limitations, storage, access, etc), Amazon AWS has 12 months Free Tier (no cost). 

This post is going to be long but with the right and concise information step by step and also the problems i had.

Let's go.


-----------------------------------------------------------------------------------------------------------------------------------------

1º Step:

  • Create an Amazon AWS account (Server): 

Go to this link: https://portal.aws.amazon.com/billing/signup?nc2=h_ct&src=default&redirect_url=https%3A%2F%2Faws.amazon.com%2Fregistration-confirmation#/start

Fill the forms and finish your account creation.

If you need some guidance in order to fill the form see this link:  

https://aws.amazon.com/premiumsupport/knowledge-center/create-and-activate-aws-account/

Important Note: 

  • It is very important to know your password in order to access to your server using MySQL.


1º Problem:

  • Sign in: I created my account in Google Chrome Browser but when i was trying to Sign in i couldn't do it. 
    • 1º Solution: Clear Browser Cache and Cookies - Clear here - Google Cache and Cookies Step-by-Step
    • 2º Solution: Amazon AWS supports this browsers: Google Chrome, Mozilla Firefox, Microsoft Edge, Windows Internet Explorer, and Apple Safari. So, basically you can open other browser and sign in with your credentials and you good to go. 

-----------------------------------------------------------------------------------------------------------------------------------------

2º Step:

  • Create Database Instance:


         1- Click - Services

         2- Click - RDS


         3- Click - Database


         4- Click - Create Database

          5- Fill the forms: 

Note: 

  • It is very important to define Public Accessibility to YES because you want to connect from other sources to your Server.
  • It is also important you to know the Username.


-----------------------------------------------------------------------------------------------------------------------------------------


3º Step (This is the most important step):

  • Configure Security Groups in your Amazon AWS Account Database Instance: 

After Sign and created your Database Instance (at least one). Basically your Database Instance has from default No permission Access for Security Group and you must add some Inbound Rules to allow other sources (MySQL and Outsystems) to Access the Server.


So, basically you do this:

1- Click in your Database Instance:

2- Click in VPC:


3- Insert Inbound:


On Edit inbound Rules Button - Add this particular Inbound Rules:

1- Add Rule: Define on Type - ALL Traffic and Source - Anywhere 

2- Add Rule: Define MySQL/Aurora and Source - My IP. 

The Result should be this:


With this your good to go related to Amazon AWS Configuration.

Note:

If you want to learn more about Inbound and Outbound Rules, i will give you an brief introduction:


Inbound Rule: Is the type of Sources you are enabling to connect to your Amazon AWS Account Server.


Outbound Rule: Is the type of Sources your are enabling your Amazon AWS Account Server to access to other sources.


If you want to understand even more deeply, see this:

https://www.youtube.com/watch?v=-9j7BvAyb2w

-----------------------------------------------------------------------------------------------------------------------------------------

4º Step:

-----------------------------------------------------------------------------------------------------------------------------------------


5º Step:

  • Connect Amazon AWS in MySQL:
    • This step will enable you to connect your database in your Amazon AWS Server Account.

1- In MySQL click the Home Icon:

2- Click the Plus Icon:

3- Make the connection

Connection name: You write a name (your choice)

Hostname: Is the Amazon AWS Database Instance EndPoint.

Username: Your Username (when you create your Database Instance or you create you Amazon AWS Account, i don't remember.)

Password: The password you inserted previously when Database Instance Created.

Port: Is the same (3306)


See your Connectivity and Security Tab to get all the information.


4- Click - Test Connection

If you did everything has above, this will work.

5- Click - Ok


-----------------------------------------------------------------------------------------------------------------------------------------


6º Step:

  • Create your Database in MySQL:

Fill free to create the database you want.


-----------------------------------------------------------------------------------------------------------------------------------------


7º Step:

  • Connect to Outsystems: This is easiest part, just follow this video:

https://www.outsystems.com/learn/lesson/1880/demo-integrating-with-a-mysql-database

-----------------------------------------------------------------------------------------------------------------------------------------


Hope this helps the community.


Pedro Santos

This will really help someone.