1: Setting up the MySQL configuration file
/etc/mysql/my.cnf
Find Bind-address =127.0.0.1 to comment out;//function is to make it no longer allow only local access;
Restart Mysql:/etc/init.d/mysql restart;
2: Log in to MySQL database : mysql-u root-p
mysql> use MySQL;
Query the host value:
Mysql> select User,host from user;
If there is no "%" of this host value, the following two sentences are executed:
mysql> Update user set host= '% ' where user= ' root ';
mysql> flush Privileges;
Or you can do it:
Mysql>grand all privileges on * * to [E- Mail protected]'% ' identifies by ' XXXX ';
Where the first * represents the database name, the second * represents the table name of the database, and if the *. * As above indicates that all the tables are allowed access under the database;
'% ': Indicates an IP address that allows access to MySQL, and of course you can configure it to a specific IP name;% means that all IPs can be accessed;
Back to ' xxxx ' for root user's password;
Example:
Any host connected to the MySQL server with user root and password mypwd
Mysql> GRANT All privileges on * * to ' root ' @ '% ' identified by ' mypwd ' with GRANT OPTION;
mysql> flush Privileges;
Hosts with IP 192.168.1.102 connect to MySQL server with user myuser and password mypwd
Mysql> GRANT All privileges on * * to ' myuser ' @ ' 192.168.1.102 ' identified by ' mypwd ' with GRANT OPTION;
mysql> flush Privileges;
Original quote: Http://www.jb51.net/article/53847.htm
Allow extranet access to MySQL