Original: http://www.chinaz.com/program/2010/0315/108707.shtml
Workaround:
1. Change the table method.
It may be that your account is not allowed to log on remotely, only on localhost. This time, as long as the computer on the localhost, log in to MySQL, change the "MySQL" Database in the "User" table "host", from "localhost" to "%"
Mysql-u root-pvmwaremysql>use MySQL;
Mysql>update User Set host = '% ' where user = ' root ';
Mysql>select host, user from user;
2. Authorization law.
For example, if you want to myuser use MyPassword to connect to a MySQL server from any host.
GRANT all privileges on * * to ' myuser ' @ ' percent ' identified by ' MyPassword ' with GRANT OPTION;
FLUSH privileges;
If you want to allow users to connect to the MySQL server from a host myuser IP 192.168.1.6 and use MyPassword as the password
GRANT all privileges on * * to ' myuser ' @ ' 192.168.1.3 ' identified by ' MyPassword ' with GRANT OPTION;
FLUSH privileges;
If you want to allow users to connect to the MySQL server's DK database myuser from the IP-192.168.1.6 host, and use MyPassword as the password
GRANT all privileges the dk.* to ' myuser ' @ ' 192.168.1.3 ' identified by ' MyPassword ' with GRANT OPTION;
FLUSH privileges;
I used the first method, just started to find no, in the online check, less execute a statement mysql>flush rivileges make the changes take effect. It's okay.
Another way, but I did not personally tried, on the csdn.net, can look.
Run on the machine where MySQL is installed:
1, d:\mysql\bin\>mysql-h localhost-u root//This should allow access to the MySQL server
2, Mysql>grant all privileges on * * to ' root ' @ '% ' with GRANT OPTION//give any host access to data
3. Mysql>flush Privileges//modification takes effect
4. Mysql>exit//exit MySQL server
This will allow you to log in as root on any other host!
Troubleshooting MySQL does not allow remote access from the method