zoukankan      html  css  js  c++  java
  • MySql中允许远程连接

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

    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的服务即可生效

  • 相关阅读:
    underscore相关记录
    背包问题
    数学图形(2.26) 3D曲线结
    数学图形(1.41)super spiral超级螺线
    数学图形(2.25)三维悬链线与悬链面
    数学图形(2.24) 帖在圆柱面上的曲线
    数学图形(2.23)Cylindric sine wave柱面正弦曲线
    数学图形(2.22) 帖在圆锥面上的曲线
    数学图形(2.21) 帖在抛物面上的曲线
    数学图形(2.20)3D曲线
  • 原文地址:https://www.cnblogs.com/qitian1/p/6461604.html
Copyright © 2011-2022 走看看