登录  /  注册
mysql的远程访问连接eoe
php中文网
发布: 2016-06-07 15:34:41
原创
913人浏览过

很多情形需要遇到mysql的远程访问连接,但root用户只能本地连接。要实现你的的pc上的mysql数据库远程连接访问,必须另开账户。 首先, 在MySQL Server端: 执行mysql 命令进入mysql 命令模式, Sql代码 mysqlusemysql; mysql GRANT ALL ON *.* TO admin@ '%'

很多情形需要遇到mysql的远程访问连接,但root用户只能本地连接。要实现你的的pc上的mysql数据库远程连接访问,必须另开账户。

首先,在MySQL Server端:
执行mysql 命令进入mysql 命令模式,
Sql代码 mysql的远程访问连接eoe mysql的远程访问连接eoe

  1. mysql> use mysql;
  2. mysql> GRANT ALL ON *.* TO admin@'%' IDENTIFIED BY 'admin' WITH GRANT OPTION;
  3. #这句话的意思 ,允许任何IP地址(上面的 % 就是这个意思)的电脑 用admin帐户 和密码(admin)来访问这个MySQL Server。

实现远程登录的方式:

  1. 在另一台MySQL 客户端(装有mysql程序包的pc ,windows或者是linux均可)
    执行命令:

    Sql代码 mysql的远程访问连接eoe mysql的远程访问连接eoe

    1. mysql -h172.21.5.29 -uadmin -padmin 即可了
    2. //172.21.5.29就是MySQL Server的IP地址,admin admin就是刚才在 172.21.5.29上设置的远程访问帐户


注意:

如果上面的命令你执行完毕, 你在 本地就是localhost , 执行 :

Sql代码 mysql的远程访问连接eoe mysql的远程访问连接eoe

  1. mysql -hlocalhost -uadmin -padmin

结果是失败的。原来 上面的 % 竟然不包括localhost 所以你还必须加上这样的 命令:
mysql>GRANT ALL ON *.* TO admin@'localhost' IDENTIFIED BY 'admin' WITH GRANT OPTION;

此命令才能保证在本地能够以admin账户登录。

原博客地址:http://www.cnblogs.com/xd502djj/archive/2011/04/01/2001826.html


如果上面的信息还不够清晰,可以参考如下的内容:

MySQL远程访问权限,允许远程连接的开启

1、登陆mysql数据库

mysql -u root -p

查看user表 www.2cto.com

mysql> use mysql;

Database changed

mysql> select host,user,password from user;

+--------------+------+-------------------------------------------+

| host | user | password |

+--------------+------+-------------------------------------------+

| localhost | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |

| 192.168.1.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |

+--------------+------+-------------------------------------------+

2 rows in set (0.00 sec)

可以看到在user表中已创建的root用户。host字段表示登录的主机,其值可以用IP,也可用主机名,

(1)有时想用本地IP登录,那么可以将以上的Host值改为自己的Ip即可。

2、实现远程连接(授权法)

将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%。

update user set host = ’%’ where user = ’root’;

将权限改为ALL PRIVILEGES

mysql> use mysql;

Database changed

mysql> grant all privileges on *.* to root@'%' identified by "root";

Query OK, 0 rows affected (0.00 sec) www.2cto.com

mysql> select host,user,password from user;

+--------------+------+-------------------------------------------+

| host | user | password |

+--------------+------+-------------------------------------------+

| localhost | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |

| 192.168.1.1 | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |

| % | root | *A731AEBFB621E354CD41BAF207D884A609E81F5E |

+--------------+------+-------------------------------------------+

3 rows in set (0.00 sec)

这样机器就可以以用户名root密码root远程访问该机器上的MySql.

3、实现远程连接(改表法)

use mysql;

update user set host = '%' where user = 'root';

这样在远端就可以通过root用户访问Mysql.

原博客:http://www.2cto.com/database/201205/130093.html。


来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 技术文章
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2023 //m.sbmmt.com/ All Rights Reserved | 苏州跃动光标网络科技有限公司 | 苏ICP备2020058653号-1

 | 本站CDN由 数掘科技 提供

登录PHP中文网,和优秀的人一起学习!
全站2000+教程免费学