远程访问"/>
mysql创建远程连接,MySQL添加用户进行远程访问
I created user user@'%' with password 'password. But I can not connect with:
mysql_connect('localhost:3306', 'user', 'password');
When I created user user@'localhost', I was able to connect. Why? Doesn't '%' mean from ANY host?
解决方案
In order to connect remotely you have to have MySQL bind port 3306 to your machine's IP address in myf. Then you have to have created the user in both localhost and '%' wildcard and grant permissions on all DB's as such . See below:
myf (my.ini on windows)
#Replace xxx with your IP Address
bind-address = xxx.xxx.xxx.xxx
then
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass';
CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';
Then
GRANT ALL ON *.* TO 'myuser'@'localhost';
GRANT ALL ON *.* TO 'myuser'@'%';
flush privileges;
Depending on your OS you may have to open port 3306 to allow remote connections.
更多推荐
mysql创建远程连接,MySQL添加用户进行远程访问
发布评论