I have hosted a database at www.freemysqlhosting.net/. Also, I have a Google APP Engine project , through which I would like to connect to the said database. I read that external requests are not possible in GAE, and one has to use urlFetch. But, without any other server to process some kind of web api, is it possible to do this ?
www.freemysqlhosting.net/, as far as i know, only hosts the website.
If the database can be accessed using an ip address/port combination then all you need to do is enable billing on your application so you can access the sockets apis - and you should be good to go.
Sockets API reference
Related
I have this setup currently.
My front end runs on Google App Engine ( GAE ) on PHP. I use PDO to connect to an open AWS RDS MYSLQ 8.
I can not move the data out of the AWS RDS instance.
I have been requested to make the RDS secure and not allow open in coming ports like 0.0.0.0/0 in the AWS security group.
I want to know if there is a serverless way to achieve this type of connection without setting up a EC proxy or an Google Compute Engine server.
I am not able to find a solution and all known solution points to setting up a proxy.
Any one have any thoughts on this problem?
It's hard to tell something without any codes and errors stacks etc. But I have some thoughts.
If you are thinking of "serverless" solution. "serverless" does not mean that there is no server, but it means that there is no need to care about sever which is being maintained by some service provider (like GAE or other). So practically there is no 100% serverless solution, but it's just covered behind provider logic.
The main question is that you cannot connect to RDS. This should be possible form local machine. So you should be able to develop something that is working on your local machine and than for sure you are able to deploy the same logic to App Engine.
If above is not possible, you should consider GCP cloud SQL or serverless.
Right now I have a localhost database using WAMP server.
I connect and insert data to this DB by making a POST request to the file's PHP link (e.g localhost/sensor_data/connect_To_DB_And_Insert_Data.php).
I want to do the exact same thing with Azure SQL so my database won't be local anymore but on a remote server.
I have already created a database but I don't know how to upload a PHP file that can be accessed online using a link. There are so many documentations that I'm kind of lost and I didn't find an answer to this yet.
So my question is, how do I upload a PHP file on Azure, that it can be accessed by a link, so I can insert data to the database by making a post request to that link ?
Firstly, you just need to change the connection string in your PHP code. Then your PHP application will be able to connect to Azure SQL. In this way, you do not need to create any Azure host server (Web app or VM).
You can get the connection string on Azure portal:
Attention, as Azure SQL has enabled firewall. So, if you want to connect to it from your local server, you need to add your IP to the allowed IP list
However, as #UkraineInTheMembrane suggested in the comment, you can also to use Azure Web App or VM to host your PHP application.
With Azure Web App, here is a get-started tutorial for PHP: Create a PHP web app in Azure , in this tutorial, git is used to manage your code.
There are also many other approaches to upload your code to azure web app: https://learn.microsoft.com/en-us/azure/app-service/deploy-zip
apparently my hosting provider does not support Remote MySQL Usage as it says in its Knowledge Base even though i bought a premium package
remote MySQL connections are disabled for security and performance reasons. You can only connect to MySQL from your PHP scripts hosted on our servers.
is there any way i can make an API so that i can connect to my MySQL Remotely ?. i need to use the Database in my Host Account as a source of information for my Android Application. thanks
You should look into using something like a HTTP Tunnel.
This post outlines a method of doing this for Android.
Basically you connect through this tunnel which is placed on your server, and can the communicate with the server as if you were localhost.
SSH is also another option, although you'll need remote SSH access enabled by your host. That's normally something you'll have to specifically request for them to enable.
You would then create an SSH tunnel using a technique like this and then use that as your connection for your database. Once you've initiated the connection you would then query it as normal.
There are possibilities here.
Your hosting provider may have allowed access of the database only
on certain IP(s) on certain PORTS. In this case, you cannot access
the database even if you write API's because the connection is not
open to the IP/PORT through which you are accessing through.
The database admin can also block access to certain table(s) or
database(s) for certain users.
I am new at android.
I have some problems with android database and how to deploy it into a server without develop a web site for the application.
I want to publish this app into google play after a while.
so an online web server is needed.
Locally woking is useless for me.
So my questions are:
1) If and only if with using sqlite database, can i deploy my application into a server to make it accessible ?
2) if sqlite is not sufficient for me , then how can use php & mySQl ? and could you please offer me some a kind of hosting services for android applications?
3) I want to manage sending notifications from the server and provide communications between devices. Is there any service to provide my needs ?
Thank you so much.
No you can't...You need to have separate database(sql server/mysql) for your server. And then write some webservice so that you mobile app can communicate with server database.
SqLite is only for mobile device and no server supports it, APIK.
Have a web app installed on a local internal hardware. I am trying to figure out how best (even if possible) to replicate the data to an external server with the same app installed so they can sync the data between them. So if external they can access via web if internal they can access locally.
PHP / CodeIgniter App running on MySQL.
Had idea of having the local app remotely connect and use the external server DB as the main source but then thought what if internet isn't available how best could I handle that?
So your webservice runs on a machine in your local network. And if you're not on the local network you want to connect via Internet?
Can you detect when you're on the local network? Maybe this is as simple as trying http://mywebservice/, otherwise switch to Internet mode http://mywebservice.mydomain.com.
You could also consider dropping local availability. Does it happen a lot that you are on the local network but don't have Internet access?