Question:
Can the WAMP be used for Online Databases or just Localhost?
Mythia
2010-12-14 06:45:58 UTC
Im trying to have an easier way to access someones database for MySQL and PhpMyAdmin....

Is the WAMP able to sign on to a Database or does it only work for Local host uses.?


(For example the SQL Management Studio can log onto a database.... Can WAMP do the same???)

Thanks
Four answers:
jp_dfw
2010-12-14 07:00:34 UTC
I think there's a strong possibility you're misunderstanding what WAMP is. WAMP is a "canned" server installation of Apache web server, MySQL database and PHP for Windows. It's server software usually combined with some simple management software like phpmyadmin or a server process manager. It can be run on a desktop or on a server. It's typically an easy way for a web developer to create a desktop development environment for creating web sites / applications.



You appear to be asking about client software for accessing a MySQL database which a WAMP package is most definitely not. It is, however, a good starting point to develop your own software (written in PHP and based in a web browser).



Were you perhaps looking for something more like SQLyog?
karsten
2016-12-10 14:11:51 UTC
Wamp Server Remote Access
deonejuan
2010-12-14 06:50:31 UTC
It depends on the Internet Provider. You will be well off to design in Linux (LAMP) as that will be the folder structure, if the ISP hosts php/mySQL. If you want abstract access to a database look into Java / Hibernate to have your business logic as its own layer, distinct from the MySql tables and its SQL statements.
BurrintheSaddle
2010-12-14 09:43:15 UTC
You would need to allow connections remotely from within MYSQL,



I would be explicit on who you allow access to this, it can be dangerous.



Checkout this link:

http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html



MySQL Remote Access



You need type the following commands which will allow remote connections.

Step # 1: Login Using SSH (if server is outside your data center)



First, login over ssh to remote MySQL database server:



ssh user@mysql.nixcraft.i



Step # 2: Edit my.cnf File



Once connected you need to edit the MySQL server configuration file my.cnf using a text editor such as vi.



* If you are using Debian Linux file is located at /etc/mysql/my.cnf location

* If you are using Red Hat Linux/Fedora/Centos Linux file is located at /etc/my.cnf location

* If you are using FreeBSD you need to create a file /var/db/mysql/my.cnf



Edit /etc/my.cnf, run:

# vi /etc/my.cnf

Step # 3: Once file opened, locate line that read as follows



[mysqld]



Make sure line skip-networking is commented (or remove line) and add following line



bind-address=YOUR-SERVER-IP



For example, if your MySQL server IP is 65.55.55.2 then entire block should be look like as follows:



[mysqld]

user = mysql

pid-file = /var/run/mysqld/mysqld.pid

socket = /var/run/mysqld/mysqld.sock

port = 3306

basedir = /usr

datadir = /var/lib/mysql

tmpdir = /tmp

language = /usr/share/mysql/English

bind-address = 65.55.55.2

# skip-networking

....

..

....



Where,



* bind-address : IP address to bind to.

* skip-networking : Don’t listen for TCP/IP connections at all. All interaction with mysqld must be made via Unix sockets. This option is highly recommended for systems where only local requests are allowed. Since you need to allow remote connection this line should be removed from my.cnf or put it in comment state.



Step# 4 Save and Close the file



Restart the mysql server, enter:

# /etc/init.d/mysql restart

Step # 5 Grant access to remote IP address



Connect to mysql server:

$ mysql -u root -p mysql

Grant access to a new database



If you want to add a new database called foo for user bar and remote IP 202.54.10.20 then you need to type the following commands at mysql> prompt:mysql> CREATE DATABASE foo;

mysql> GRANT ALL ON foo.* TO bar@'202.54.10.20' IDENTIFIED BY 'PASSWORD';

How Do I Grant Access To An Existing Database?



Let us assume that you are always making connection from remote IP called 202.54.10.20 for database called webdb for user webadmin, To grant access to this IP address type the following command At mysql> prompt for existing database, enter:

mysql> update db set Host='202.54.10.20' where Db='webdb';

mysql> update user set Host='202.54.10.20' where user='webadmin';

Step # 5: Logout of MySQL



Type exit command to logout mysql:mysql> exit

Step # 6: Open port 3306



You need to open TCP port 3306 using iptables or BSD pf firewall.

A sample iptables rule to open Linux iptables firewall



/sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT



OR only allow remote connection from your web server located at 10.5.1.3:



/sbin/iptables -A INPUT -i eth0 -s 10.5.1.3 -p tcp --destination-port 3306 -j ACCEPT



OR only allow remote connection from your lan subnet 192.168.1.0/24:



/sbin/iptables -A INPUT -i eth0 -s 192.168.1.0/24 -p tcp --destination-port 3306 -j ACCEPT



Finally save all rules:

# service iptables save

A sample FreeBSD / OpenBSD pf rule ( /etc/pf.conf)



pass in on $ext_if proto tcp from any to any port 3306



OR allow only access from your web server located at 10.5.1.3:



pass in on $ext_if proto tcp from 10.5.1.3 to any port 3306 flags S/SA synproxy state



Step # 7: Test it



From your remote system or your desktop type the following command:

$ mysql -u webadmin –h 65.55.55.2 –p

Where,


This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.
Loading...