Connecting to MySQL server via kubernetes pod using Intellij - mysql

We have a MySQL server that is running on AWS using AWS RDS service and some Kubernetes pods which run some services that connect to this MySQL instance.
I have been using Intellij Idea (2020.1) to connect to these MySQL servers for quite some time. However, recently we have changed the policy to connect to these instances, and now it's only possible to connect to the MySQL servers from the Kubernetes pods. Hence, I now need to login to these pods and then query MySQL using the command-line MySQL-client.
Is there any way I can still use Intellij to connect to these MySQL instances than having to log in to the pods using something like SSH tunnelling or something like that?

Yes, setting up an SSH tunnel is recently straight forwards, but the setup depends on your VPC and EC2 configuration. There are a lot of how-tos on the net, e.g.: https://medium.com/#michalisantoniou6/connect-to-an-aws-rds-using-an-ssh-tunnel-22f3bd597924

Related

How can I securely connect to databases in GKE using GUI tools?

I'd like to connect to my databases in GKE using GUI tools but I don't want to expose the services to the world. What are some ways to accomplish this?
Update: for instance, I'd like to use TablePlus to connect to a mysql pod inside the cluster.
Create a new VM in the region where your cluster lives.
Install the GUI tool.
Specify an IP address in the cluster's IP range.
See the example below, which describes how to connect to a database which is running on a GKE cluster.
https://cloud.google.com/composer/docs/access-airflow-database

Can we set up a database on Amazon EC2 similar to how XAMPP is configured on my local system

Can you install MySQL for AWS Elastic Cloud Compute (EC2) directly on the instance? I can't afford to purchase a separate RDS instance at the moment.
My website is setup on AWS EC2 already and now I'm going to try out some features with a database. I need to set up the instance to run on the EC2 localhost and connect it to my website to store my user data.
So first you need to separate XAMPP from mysql in your thought process. XAMPP is a tool only for your local development. You can set up a database on the Elastic Cloud Compute (EC2) instance similarly to how you set up your XAMPP config locally.
Here are the official docs on how to install a full LAMP stack on an EC2 instance running the Amazon Linux AMI - https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/install-LAMP.html

Connect to AWS-RDS MySQL from another aws Ubuntu server

I am pretty new to aws stack and trying to setup a simple node-mysql app.
Node is running on AWS EC2 Ubuntu 14.04 instance, and MySQL is running on AWS RDS instance.
I am trying to connect to MySQL from my Node client using popular MySQL connector https://github.com/mysqljs/mysql but for some reason always getting 'Connection timeout'. Since node connection doesn't work, I tried to connect using a Telnet just to see if I at least can create any kind of connection.
telnet instance.12345.amazonaws.com 3306
but also unable to connect. Please note both of the connections e.g. though node app and through telnet do work when I try running them from my Windows localhost.
Things I've considered:
EC2 Ubuntu instance has Outbound rules to allow any kind of out
request.
Running app as sudo.
RDS MySQL instance has inbound
port 3306 open.
Installed MySQL client on my EC2 machine.
Basically have no idea on what exact step I've missed during setup and just trying to poke anything possible, any help/suggestion is greatly appreciated.

Custom Amazon EC2 instance and managing MySQL

so I've made an instance at amazon free web service, I've installed through putty mysql, php5, apache and so on on an ubuntu instance... But I can't for the life of me seem to find out how to manage the mysql on that instance. What am I missing? If I look in the Amazon RDS I can only manage for another instance, not for the one I have custom running...
As you have installed MySQL in the EC2 instance you can manage it via terminal.
Login to your instance using putty/ssh and connect to MySQL using below command
mysql --user=username --password=password
you need to install MySQL client if you installed on only MySQL Server.
If I look in the Amazon RDS I can only manage for another instance, not for the one I have custom running...
Yes, RDS is a service where Amazon manages the entire database box for you. The AWS Console manages (paid) RDS instances, not databases in general.
But I can't for the life of me seem to find out how to manage the mysql on that instance.
The "normal" way. Amazon doesn't come with CPanel or other GUI administration tools. Mainly because experts don't need them.
If you want to manage your MySQL graphically, install something like PHPMySQLAdmin or the like.
Note: never open the MySQL port to the internet. If you need to connect to MySQL, use "port forwarding" in Putty to forward port 3306 to the remote box port 3306. Then you can run a MySQL GUI client locally.

Using Apache jmeter for MySQL through SSH

We have a web application hosted on Amazon Web services. We are using MySQL instance on EC2.
I want to stress test a DB on EC2 running MySQL. To connect to it one needs to use SSH. I can connect to it through putty. But I don't have any idea on how to use jmeter to run queries on this DB.
How can I connect to MySQL instance through SSH inside jmeter test plan?
I have tried jmeter-ssh sampler, but it only runs SSH commands over SSH. Not useful in my case, I guess.
I would imagine you could do this through an ssh tunnel. There's a short tutorial for running jmeter through an ssh tunnel here:
http://blog.ionelmc.ro/2012/02/16/how-to-run-jmeter-over-ssh-tunnel/