MySql中允许远程连接

原创 2015年11月18日 13:22:11

要达到这个目的需要实现两点

  1. 开通用户权限
  2. 解除本地绑定

    开通用户权限

    首先登陆服务器端的mysql

//不使用空格可以直接登陆
mysql -u用户名 -p密码

mysql> use mysql
mysql> select user, host from user;

效果图
执行了代码以后会看到所有的用户以及对应的host
其中host的意思就是指允许访问的Ip地址,%的意思就是任何IP,当然如果是你的本地服务器,你也可以配置为本地的一个IP。
用户可以通过sql语句来让host为全部即可

//更新host, 这里要选择一个存在的user和host
//user表中 user跟host合起来才是主键,所以不能重复,如上图所示,如果只查询root更新会报错
mysql> update user set host = '%' where user = 'root' and host = 'localhost'

这样就修改了一个已存在的用户的权限。

Or

可以选择重新创建新的用户权限。

// 当然也可以指定部分权限,比如只读之类的
mysql>GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'%' IDENTIFIED BY 'newpassword' WITH GRANT OPTION;

下面是全局的权限列表
全局管理权限:
FILE: 在MySQL服务器上读写文件。
PROCESS: 显示或杀死属于其它用户的服务线程。
RELOAD: 重载访问控制表,刷新日志等。
SHUTDOWN: 关闭MySQL服务。

数据库/数据表/数据列权限:
ALTER: 修改已存在的数据表(例如增加/删除列)和索引。
CREATE: 建立新的数据库或数据表。
DELETE: 删除表的记录。
DROP: 删除数据表或数据库。
INDEX: 建立或删除索引。
INSERT: 增加表的记录。
SELECT: 显示/搜索表的记录。
UPDATE: 修改表中已存在的记录。

特别的权限:
ALL: 允许做任何事(和root一样)。
USAGE: 只允许登录–其它什么也不允许做。

解除地址绑定

我之前开通了权限,但是本地的绑定还没有解除,所以本地通过命令行仍然不能连接到服务器数据库。后来看了一些资料才知道地址绑定这个东西。
我的服务器是Ubuntu Server 服务器通过apt-get安装的mysql,配置文件的位置如下:
/etc/mysql/my.conf
其中的一行就是bind-address = 127.0.0.1
将其注释掉即可

如果是windows的服务器,应该是my.ini文件,需要到安装mysql的位置去找找了。
自此,本地可以通过mysql -h host -r -p来访问远程的mysql数据库了

当解除了地址绑定以后需要重启mysql的服务即可生效

版权声明:本文为博主原创文章,转载请标明链接,注明出处。

如何让mysql数据库允许远程访问

在mysqlWorkBench里执行如下命令 use mysql; update user set host = '%' where user ='root'; 如果控制台输出如下: update ...
  • qq_33556185
  • qq_33556185
  • 2017年02月14日 17:55
  • 1670

MYSQL添加远程用户或允许远程访问三种方法

添加远程用户admin密码为password GRANT ALL PRIVILEGES ON *.* TO admin@localhost IDENTIFIED BY \'password\' WIT...
  • preterhuman_peak
  • preterhuman_peak
  • 2014年10月23日 14:40
  • 134356

mysql5.5 允许远程访问

mysql5.5 允许远程访问的方法
  • cyw8998
  • cyw8998
  • 2017年04月05日 16:11
  • 2201

linux下mysql允许远程连接

1.查看linux防火墙是否开放3306端口 执行iptables -nL --line-number 这里显示DROP代表防火墙阻止了3306端口。 2.添加防火墙例外 执行v...
  • sinat_21125451
  • sinat_21125451
  • 2017年03月31日 14:16
  • 1464

mysql允许远程连接

1。改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host"...
  • yax405
  • yax405
  • 2013年07月18日 15:43
  • 419

如何让mysql数据库允许被远程连接访问

  • 2015年05月05日 09:09
  • 20KB
  • 下载

MySQL如何允许远程连接

MySQL如何允许远程连接
  • TheBlackbeard
  • TheBlackbeard
  • 2016年09月19日 21:52
  • 453

服务器的MySQL不能远程访问的解决方案

  • 2011年08月26日 00:22
  • 926B
  • 下载

20161026MYSQL中允许远程登录设置

#mysql -uroot -p"你的密码" MYSQL>use mysql; #进入MYSQL数据库 MYSQL>update user set host='%' where user='roo...
  • wangchangshu2
  • wangchangshu2
  • 2016年10月26日 10:37
  • 153

windows下设置mysql允许远程连接

建议只在开发的时候打开就是打开mysql表,设置里面的user表host默认是localhost只允许本地访问可以改成指定ip或直接改成%允许所有的远程访问然后cmdnet stop mysqlnet...
  • borsam
  • borsam
  • 2008年03月19日 11:39
  • 10873
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MySql中允许远程连接
举报原因:
原因补充:

(最多只允许输入30个字)