问题描述

在Windows系统中安装了监控MySQL数据库服务器性能的工具Spotlight on MySQL,利用Spotlight连接Linux服务器中的MySQL,进行相关配置如下:

 

点击"Connect"进行连接,连接过程中出现异常提示:
Unable to connect to "192.168.xxx.xxx"
Spotight encountered the following error during connection: Failed to connect with error: Host 192.168.xxx.1' is not allowed to connect to this MySQL server

 

问题分析

Host 192.168.xxx.1' is not allowed to connect to this MySQL server
选定的host不允许连接到MySQL服务器,很可能是MySQL中没有开放任意IP连接MySQL的权限,默认情况下出于安全策略的考虑并没有开放给任意IP连接MySQL

解决方案

在MySQL服务器上作如下配置:

方式1:配置指定IP的用户具备连接MySQL的权限

# 连接mysql
mysql -uroot -proot # 使用mysql
show databases;
use mysql; # 创建指定IP用户具备root用户权限
select host,user,password from user; # 查看user表中host和user字段的对应关系
update user set host='192.168.xxx.xxx' where user='root'; # 指定某个主机的 IP
update user set host='%' where user='root'; # 包括所有主机IP均可以root账户连接 MySQL # 刷新权限配置,使配置生效
flush privileges;
 

备注:方式1执行修改权限时可能会出现提示"ERROR 1062...",但不影响本次权限的修改

方式2:直接授权任何主机以root用户均可连接MySQL

# 连接mysql
mysql -uroot -proot # 授权root/root账户具备包括连接MySQL的权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION; # 刷新权限配置,使配置生效
flush privileges;
 

以上配置生效后,再次用Spotlight连接Linux服务器上的MySQL,即可连接成功,如下:

 

Windows系统浏览器访问Linux服务器的IP,然后检测MySQL连接状态:连接ok

 

参考资料:
[1] 在windows系统连接linux系统下的mysql
[2] windows下用navicat远程链接虚拟机Linux下MySQL数据库

Windows连接Linux服务器中MySQL数据库-权限配置的更多相关文章

  1. 连接云服务器中MySql数据库遇到的问题

    使用的免费的云服务器,上面只能下载MySql数据库,不过当云数据库使用绰绰有余了,也就放一些测试数据而已 而且上面只可以部署php项目,.netcore项目部署实现比较麻烦 问题如下: 下载了navi ...

  2. navicat for mysql远程连接ubuntu服务器的mysql数据库

    经常玩服务器上的mysql数据库,但是基于linux操作Mysql多有不便,于是就想着使用GUI工具来远程操作mysql数据库.已经不是三次使用navicat-for-mysql了,但是每次连接远程服 ...

  3. Windows连接Linux服务器远程开发解决方案

    解决方案 vscode+Linux服务器 解决连接问题 vscode商店下载remote-ssh工具,然后进行配置. 这个网上依旧有很多详细的教程了,这里就不过多赘述. 配置免密登录 这一部分是我要重 ...

  4. 连接Linux服务器操作Oracle数据库

    连接Linux服务器操作Oracle数据库   由于项目已经上线,现场的数据库服务器不允许直接用Oracle的客户端plsqldev.exe来连接,只能通过Linux服务器的命令来操作. 以下是用Se ...

  5. 设置 Linux 服务器中 MySQL 允许远程访问

    开启 MySQL 远程访问权限: 在linux系统上登陆mysql服务. -- root 是用户名 [root@localhost ~]# mysql -u root -p Enter passwor ...

  6. Linux 命令之 Navicat 连接 Linux 下的Mysql数据库

    2016年12月7日18:44:06 -====------------------------  GRANT ALL PRIVILEGES ON *.* TO 'itoffice'@'%' IDEN ...

  7. .Net Core 在Linux服务器下部署程序--(1). Windows 连接 Linux服务器

    下载Linux服务器连接软件,市面上有Putty,FinalShell等,我以FinalShell为例,下载地址为 :http://www.hostbuf.com/t/988.html,软件安装结束后 ...

  8. 在LINUX系统中MySQL数据库区分表名的大小写--解决办法

    因为linux下mysql默认是要区分表名大小写的.mysql是否区分大小写设置是由参数lower_case_table_names决定的, 其中:1)lower_case_table_names = ...

  9. Linux服务器制定mysql数据库备份的计划任务

    首先,创建一个shell脚本: Shell #!/bin/bash mysql_pwd="1234567890" mysql_dump="/usr/local/mysql ...

随机推荐

  1. SELinux初学者指南

    SELinux(Security Enhanced Linux)是美国国家安全局2000年发布的一种高级MAC(Mandatory Access Control,强制访问控制)机制,用来预防恶意入侵. ...

  2. 20155213 2016-2017-2 《Java程序设计》第十周学习总结

    20155213 2016-2017-2 <Java程序设计>第十周学习总结 教材学习内容总结 掌握Java Socket编程 理解混合密码系统 掌握Java 密码技术相关API的使用 网 ...

  3. 20155317 2016-2017-2 《Java程序设计》第十学习总结

    20155317 2016-2017-2 <Java程序设计>第十学习总结 教材学习内容总结 1.网络编程的概念: 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作 ...

  4. C语言学习笔记1

    C语言假期学习笔记1 关于吃回车问题 第一个解决方案是使用ch=getchar(); 第二个方案是在scanf(" %c",&b):在%c加空格,将存于缓冲区的回车符读入 ...

  5. 1178: [Apio2009]CONVENTION会议中心

    1178: [Apio2009]CONVENTION会议中心 https://lydsy.com/JudgeOnline/problem.php?id=1178 分析: set+倍增. 首先把所有有包 ...

  6. ASP.NET获取汉字拼音的首字母

    代码 #region GetChineseSpell获取汉字拼音的第一个字母 //获取汉字拼音的第一个字母 static public string GetChineseSpell(string st ...

  7. 利用工厂模式实现serviec层和dao层解耦

    利用工厂模式实现serveice和dao层的解耦,这样就可以不用在service层实例化dao层的对象,当dao层代码发生改变的时候(数据库实现发生改变)直接修改配置文件就不用改变service层的代 ...

  8. Codeforces Round #500 (Div. 2) D - Chemical table

    首先我们如果满足三缺一,那么必有同行和同列的点 如果两行有同列的数,我们可以设想,他们最后会全部填充成为两者啥都有的情况 显然这个是个并查集 现在我们有了很多集合,每个集合自己可以进行三缺一操作,但是 ...

  9. [leetcode]三数之和

    三数之和 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组. 注意:答案中不可以包含重复 ...

  10. LearnPython - Zip格式文件的解压缩

    import zipfile import os def unzip(zip_name, target_dir): files = zipfile.ZipFile(zip_name) for zip_ ...