Connection failed to MySQL after upgrade AWS RDS instance - mysql

I have upgrade instance class of mysql rds on aws from tiny to small. After it complete upgrading I cannot connect to that database from my local machine.
I'm very new to aws rds please help.
(I use dbeaver and mysqlworkbench to test connection on my macbook)
I also try create new one with the same security group without encryption the new database connection works fine!

Related

Create new AWS RDS instance and import data rather than update MySQL version from 5.6 to 5.7

I currently have an RDS instance running in AWS based on mysql version 5.6. I need to update it to 5.7 and the main thing recommended is to use the major update functionality in AWS console. However, I have looked through the documentation and it seems quite complicated so I was wondering if the following procedure is a valid workaround that will achieve the same result?
Create a new RDS instance based on mysql version 8 (can also do 5.7)
Export data in database from original RDS instance into a dump file (using export data functionality of mysql workbench)
Reconnect existing bastion EC2 instance to connect to new RDS instance with mysql version 8 (using mysql workbench) and access new RDS through that
Import database from dump file created in step 2 into the new RDS instance (using import data functionality of mysql workbench)
Configure application to use details of the new RDS instance
Is this a valid procedure? If not, what is wrong with it?
Your procedure looks good. Do not forget to set inbound rules on the new RDS instance. Using MySQL Workbench is a good way to move data once you connect to your new instance. Once you have the new version all setup, inbound rules set, and data ported to the new instance, be sure to delete the old RDS instance as well.

How to run SQL Profile on AWS Aurora or Mysql

What tool can I use to run sql profile against a AWS Aurora or AWS Mysql database? Seems like a simple task that I have done many times against local mysql sql db or ms sql server, but for the life of me I cannot get to work. Is this something that can be done? I have been trying to use Neor Profile without success. However, I'm able to use Neor Profile successfully on my local mysql db.
Because Neor Profile basically serves as a proxy, you have to use port 4040 in your application and then Neor connects to AWS via port 3306. I can successfully get Neor Profile 'profiling' against the AWS db but when I run my local application or mysql workbench, via port 4040, it doesn't connect, with a general connection error.
My question, which I can't find by searching the Internet or help files is...Can you perform a sql profile against a AWS Aurora or AWS Mysql database?

Can AWS RDS be used as a MySQL host only?

Is it possible to use AWS' RDS MySQL solution in tandem with my current file server host? By that, I mean, can I connect to the RDS MySQL server as I am with my hosts current database?
I've tried the AWS documentation but it seems a bit flaky in this area.
Thank you,
Amazon RDS is a database server, just like any other. If you start up an RDS MySQL server, you can connect to it from anything else that can connect to a MySQL server.
The difference is that you do not have direct host access to the RDS server. Meaning, you cannot SSH into it and get a command prompt.
But you can connect to it from any MySQL client, including MySQL Workbench.

How Ruby on rails works with Amazon RDS

I have a ruby on rails run on amazon ec2, database is mySQL.
Now I want to use Amazon RDS to backup this database in case the ec2 fails.
I read through the Amazon RDS user guide,it tells how to create a DB instance.
My question is:
1.what is the relation between created DB instance and my ec2 database?
2.When the DB instance "connect" to my ec2, what will happen?
The data used to send to ec2 mySQL server will be send to DB instance?
Is the database totally shifted to DB instance?So before I connect I should creare a same database in DB instance and tell ec2 send data to RDS ever since
3.If not,how the DB instance know the ec2 is down and takeover the data?
EDIT:
(Unsure)Is it that DB instance is just a place to put database.In order to use it,I need to set up database in DB instance,then connect to it by modifying database.yml file(this file tell rails server where the stored data goes).
How Is it possible to tell when the local database stops then at that time switch to DB instance?
There is absolutely no relationship between your EC2 MySQL DB and the RDS DB Instance. So what you are asking for is just not possible.
A better approach I would say is to have only RDS (No need to have MySQL running locally on EC2 instance). RDS takes snapshots regularly. Also, RDS is a managed service, so most of the MySQL administration tasks are handled by AWS and you don't have to worry. And you can rely on RDS snapshots from Backup perspective.

How does one see what data is stored in the RDS database?

Running our app on Amazon RDS. How does one review / inspect data in the database? For example, how can I get a list of articles?
My app is running on Ruby on Rails and on Heroku. One method I thought of, is by running the Heroku console command.
Is there a better way to see what data is stored in the RDS database?
I use MySQL Workbench to view data, run queries, and so on. It connects right up to the Amazon RDS MySQL instance using the regular MySQL settings.
Updated:
Be sure to add the ip address of the computer for which you're connecting to the RDS instance to the access list in RDS. IIRC, by default RDS instances will only accept connections from within AWS.
I was using SequelPro but they don't support ssl. Amazon RDS says something to the effect of having to use SSH to connect your EC2 to your RDS.
This is essentially what was done in the following tutorial which uses MySQL Workbench: http://thoughtsandideas.wordpress.com/2012/05/17/monitoring-and-managing-amazon-rds-databases-using-mysql-workbench/
I had also been using SequelPro before but this tutorial is very clear and I was up and running on MySQL Workbench in just a few minutes.