I'm trying to connect to sql from load balanced instances - google-compute-engine

I'm trying to separate sql from my web app. I know I can connect an instance to sql by adding an ip or using proxy. The issue comes when I create a load balancer the will create different instances with different ip's. How can I make it dynamic in such a way that whenever an instance generated, automatically has access to sql?
My last resort will be opening sql to all ip's.
Also, is it reliable if I create a script on startup to start proxy in the background?

Related

Unable to decouple postgres db from ElasticBeanstalk Instance

We have an ElasticBeanstalk instance, with an internal postgres database.
As you know, there's the possibility to have internal (coupled) or external (decoupled) databases on ElasticBeanstalk
Since last year, there is the possibility to decouple internal databases from an ElasticBeanstalk instance, since these are coupled or 'tied' to the instance itself.
We want to have an external database instead of the internal one, because the new external database is encrypted, anyway, that's the reason why we want to decouple the existing one.
But if I go EB->Environments->Environment->Configuration->Database section
Then click 'Decouple Database', it shows me a MySQL related error (???), the db is postgres, no doubts about it, there's no hint to MySQL at any point in the lifetime of this EB instance.
And if I try from the eb cli the error is different but always MySQL related:
Any ideas about this?

MySql Workbench - difference between "Local instance 3306" and "Localhost via pipe"?

Im learning how to build a simple web app using PHP and MySQL. Tools:
-XAMPP for database, web and php servers
-Sublime for writing the code itself
-Mac OSX Yosemite
- Workbench for database creation
I'm having trouble understanding (and finding a good tutorial) how Workbench actually works. If I got things correctly, I need to create a connection between the Workbench (tool) and the database which sits "inside" the database server? In my case, provided by XAMPP.
After I get these two talking, I then create, edit, etc. tables inside this database, right?
Currently I have two MySql connections on the homescreen, please see attached file.
Thanks!
It's basically just the connection/transfer method. You can connect to a MySQL server via a named pipe if such ability is provided by the operating system OR via TCP connection which is generally for network access but also works and is widely used for localhost connections.
It is transparent to the user and should not affect the communication between server and the client. Those two will connect to the same database using different types of communication channels.

Connecting Symfony website to Amazon relational database

I am working on a symfony website and I want to connect it to a remote RDS on amazon on which i will be running some Select queries to fetch some data every time page refreshes.
Is there an easy way to do so? I was reading something about doctrine but I didn't get it how to get it to use a remote database. Is it possible to do without using doctrine?
Amazon RDS is a meta-layer to manage the database server itself. I assume you want to create a database, e.g. in MySQL, on Amazon RDS and use this database with Symfony and Doctrine.
If this is true, it is very simple: In your app/config/parameters.yml file, you have various database_* parameters. Just set the database_host to the IP address or domain of your DB server as provided by Amazon, set the correct user/password/port, and you're ready to go.

How split MySQL database into multiple host, keeping remote references

I'm developing a web application that will handle user and data.
One requirement for this project is that the data collected must be stored in another host than the one with webserver.
My first idea was to deploy a single database with user data, login info and preferences all together into one host and keep the webserver into another one, using remote connection for each query. But this is not required, only user data must be stored in a remote host and other info can be locally accessed by webserver.
Does exists a way to manually split a MySQL database in two different host leaving to the framework to keep remote reference and coherence?
I think you can do this:
Can MySql 5.0 have a view of a table located on another server
In the local DB define the view of the table you want to be remotelly hosted.

need to connect my same apps with one database

i have 3 servers for three applications on aws ec2 using MySql database,
now each of the application is having amember that is client subscription app,
it connects with sql databse that is created in each instance
so in this way every amamber app is having diffrent database in each server,
now we are working with a device ROKU we need to pass the XML attributes from amember to it
to varify the user so he can watch online streaming tv.
the objective
now i need to make one database that will be connected with each server using amember
so each server access one database .
Options
my options are aws RDS ,dynamoDb
Now can anyone put me in the right direction, for that.
in simple Words
need to connect my multiple apps (same app) with one database
HELLLLP
If you need to connect to a mysql database, DynamoDB is not the answer. It isn't a mysql database.
RDS is a mysql database. It connects like any other mysql database. You haven't mentioned what language[s] you are using, however. Googling "connect to mysql with [language]" should help.
I think it would be best to stick with relational databases such as MySQL.
Amazon RDS is a managed MySQL solution, but you don't have to use it for your needs.
You can use one of your EC2 instances or a new EC2 instance as the central DB and connect all the other servers to it for quires. There are pros and cons for choosing RDS over your own SQL server. If you have any questions there, feel free to edit your question and add them.
EDIT according to comment
In order to connect your application with the local MySQL. Your are probably using a connection string that points to either "localhost" or "127.0.0.1"... That is the IP of your local machine. You will have to change it to the remote IP of the machine where the DB is stored remotely.