Can't Connect to Amazon RDS MySQL Instance from anywhere Except Home - mysql

I am working on a school project in which we need to perform Statistical Analysis in R. For the sake of the project, I have created an Amazon Web Services RDS MySQL instance, that I would like to share with my colleagues.
I have already uploaded the data that we need for our project in the database and can connect to the instance via both the MySQL Client and R from home. However, I cannot connect from either School or any Local Café via either the MySQL Client or any Local Café.
I have configured the Security Group so that anyone can access the database (both Inbound & Outbound). The Port that I use is 1433.
Anybody has an idea how I can resolve the problem?

Can you try with this Security Group rule: 0.0.0.0/0 ?

It looks like it is because of your os firewall. Can you check that by disabling your own firewall?

Related

AWS Lightsail Plesk make DB externally accessible

I'm using Plesk installed at AWS Lighsail, I'm using the defauls MySQL database for my application. And now I'm trying to make this database externally accessible.
I've followed these instructions to whitelist the IP addresses
But the problem is not whitelisting, but more like making it accessible at all.
It shows localhost as the DB domain and I can't find how to change this or how to create an alias/forwarding or something.
The only mentions for that case I was able to find here which says:
If the server name is specified like ‘localhost’, contact your hosting provider to find out your database server address.
What can I do? Contact AWS? (my billing plan does not support this lol) Create external DB from scratch in Lightsail and point Plesk to use it instead?
Thank you!

Amazon Web Service RDS Connection Failure

I am trying to locally run a PHP based project, connecting to an Amazon RDS instance. I am receiving the following error in the browser:
![SQLSTATE[HY000] [2002]]1
I have run a series of networking tests where I pinged the following and received successful test results. I pinged:
iiNet's web address
One of iiNet's DNS servers
The loopback address of my computer
I pinged Google
I then tried the mysql utility to remotely connect and received the
ERROR 2003 (HY000): Can't connect to MySQL server
Last factor I think you should know regarding my own networking situation, I am connecting to the internet via:
modem->Zyxel VPN->Wireless Router->My laptop
What in the Sam Hill is going on?
Thanks,
CM
For this to work, the following must be true:
the RDS instance must resolve to a public IP address (I'd check this for you but since you chose to use a screenshot instead of text, I can't copy paste it, so I'll leave it to you)
the Security Group(s) associated with the RDS instance must allow traffic from your public IP ( the one you'll get from http://wtfismyip.com/text ). This won't bet true by default. I highly recommend you open to your IP, not just everyone, as Mysql is trivial to DOS attack if its port is public.
The network ACL of the VPC hosting the RDS instance must allow the traffic also. This will be allowed by default, so unless you changed the ACLs in your VPC, you can ignore this.
If all those are true, you should be able to connect!

Connect Google Data Studio to Local Mysql Server

I have started using Google's Data Studio I found it very easy to turn the Excel data into Intuitive Business Dashboards with little or no coding skills.
But I have a problem here, whenever I try to connect to Mysql DB (running on my local system) I'm facing error.
Connection Details:
Error Message:
I tried googling the Error Code but No luck.
But I'm able to access the local Mysql Server from Mysql Workbench.
What is that I am missing here? Data Studio Heros?
Thanks in advance.
Simple answer: To expose a localhost service to the web, you have to use ngrok.
For your MySQL the command is:
ngrok tcp 3306
Then the hostname you have to use data studio will be displayed.
Google Data Studio operates on the Web, thus does not have access to your personal local network. However,
You may make you MySQL db Engine accessible to the web by changing the bind-address parameter (See on MySQL Workbench, Instance > Option File > Networking > General > bind-address) to 0.0.0.0.
You also need to create a new user allowed to connect from Hosts Matching %, since Google Data Studio servers are using a dozen of different IP addresses (https://support.google.com/datastudio/answer/7088031?hl=en)
Please refer to this question:
How to make mySQL database at my local accessible from different machines?
Please note that this is a bad practice to open an access to your personal computer and you may instead want to use a MySQL or MariaDB cloud service such as https://console.cloud.google.com/launcher/details/bitnami-launchpad/mariadb
You cannot put host address as localhost.
1) You will need to check your device address at whatismyip.com or something like that.
2) Second thing you need to check is if your device is under firewall or not.
You can refer below URL for more information
http://qsok.com/x/KIBr
As Will mentioned above, it's best practise to use cloud service such as Google Cloud itself to host your MySql database and then take the connection there.
When you connect your database to Data Studio you need to open firewall for all the IP addresses it uses. You can find the whole list of IPs on the bottom of this support article https://support.google.com/datastudio/answer/7088031?hl=en
If your database is behind a firewall, you will need to open access to
the all of the following IP addresses. These are used by Data Studio
to connect to and query your MySql database.

How to connect a C # system with a MySQL database outside the LAN?

I'd like to know how to connect the client pc in a outside network for example a WAM network, i have my database in my pc and i use this like the server. I know how to connect mysql with another client computer inside the LAN network but i dont know how to do it like the other way.
if you don't understand something make me know.
PD: sorry for my english is my first question on a english forum
Ultimately it works exactly the same way - you need an IP address and a port to connect to your database on. You can either do this by setting up port-forwarding at the firewall on the network with the database server (basically, forward port 3306 to the LAN IP address), or by giving the database server a publicly available static IP and then opening port 3306 in any firewalls. Alternatively, you can set up a VPN to the network with the database server, and connect through this. If done right, the VPN option is much more secure.
However, you should ask yourself why you want to do this. Is your idea to have a client software that directly connects to the database? This is not a great design - it's usually better to have a backend database that is accessed via a frontend API (e.g. a RESTful API or similar). Among other benefits, this can give you much better (finer-grained) access control to the database.
Your MySql server should have a firewall rule to accept outside connection on MySql port (default is 3306). Best setup should allow connection from your clients WAN address only.
Then, your C# connector will be able to connect just the same as in LAN.

Does Zaiper works to connect apps to local mysql database

I am trying to connect Mysql with third party application with Zaiper. does zaiper support access to local Mysql databases?. i tried using IP: 54.86.9.50 and port;3306 but i get 504: Gateway Timeout
Thanks
Zapier developer here.
The short answer is no, you can't connect to a local database. That's because if you try to use localhost or 127.0.0.1 in the Zap, that would attempt to connect to a database on our server.
If you really wanted, you could send traffic to the IP address of your local router and then have it forward the traffic to your developer machine. Be advised there are some security risks involved with as you are opening up a port for any inbound traffic from the outside world.
Another solution is to snag an RDS instance from Amazon and use that for your Zap.