• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

MySQL-Front联接远端的MYSQL

mysql 搞代码 7年前 (2018-06-06) 151次浏览 已收录 0个评论

mysql-Front连接远端的MYSQL
    用MySQL-Front连接远端的MYSQL就会有些问题。大多提示1045错误:”Access denied for user [email protected],请检查用户名和口令”.怎么回事呢?
  
    首先让我们看一下远端MYSQL的用户表
  
  mysql> select host,user
  -> from user;
  +—————+——+
  | host | user |
  +—————+——+
  | localhost | root |
  +—————+——+
  5 rows in set (0.00 sec)
    由此我们可以看到root用户仅允许本地(localhost)登录,如果要远程登录该mysql服务器的话,就需要新建一个普通权限的用户,新建用户使用如下命令:
  
    mysql> grant select,update,insert,delete on mas.* to duan@localhost identified by “123456”;

或GRANT ALL PRIVILEGES ON *.* to duan@localhost identified by “123456”;  
    这句命令的意思是:新建用户duan,并且只允许该用户在本地(localhost)登录,密码是123456,并且赋予它对mas库中所有表select,update,insert的权限。我们在这有一个mas库,所以用mas.*代表mas库下的所有表。如果要对所有的表,包括mysql库的表都有操作权限则可以替换成“*.*”.
  
    现在该duan用户,已经可以登录mysql了,但是也还是只能本地登录。若要duan用户可以远程登录mysql,则还需要如下命令:
  
    mysql> update user set host = ‘%’ where user = ‘duan’;

【也可以直接GRANT ALL PRIVILEGES ON *.* to duan@’%’ identified by “123456”;】  
    现在我们再查看mysql的管理库:
  
  mysql> select host,user
  -> from user;
  +———–+——+
  | host | user |
  +———–+——+
  | % | duan |
  | localhost | root |
  +———–+——+
  5 rows in set (0.00 sec)
  然后重启mysql: root@# service mysql restart

   通过以上操作,我们知道其实用root用户也可以远程登录mysql的,就是把root的host字段改成%即可,但是强烈不建议如此做,否则会带来严重的安全风险。
  
    好了,我们可以连接我们的远端mysql了,在MySQL-Front上新建连接,输入连接名,远端的Linux的IP地址,输入用户名duan和密码123456,选择连接端口,mysql默认的是3306,OK,连接成功了。
撤销已经赋予权限的用户的权限:
revoke all on *.* from duan@%;


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:MySQL-Front联接远端的MYSQL
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址