1.再Linux上成功安装mariadb数据库后,不管是在dos(敲命令mysql -h192.168.136.8 -uroot -p)下或者是navicat(创建连接)下连接mariadb数据库,会报错:

Can't get hostname for your address

2.在vim /etc/my.cnf文件下,添加

[mysqld]

skip-name-resolve

解释:连不上mariadb数据库的原因是由于mysql对连接的客户端进行DNS反向解析。

①有2种解决办法:
   第一种:把client的ip写在mysql服务器的/etc/hosts文件里,随便给个名字就可以了。
   第二种:在 my.cnf 中加入 –skip-name-resolve 。
   对于第一种方法比较笨,也不实用,那么 skip-name-resolve 选项可以禁用dns解析,但是,这样不能在mysql的授权表中使用主机名了,只能使用IP。
②我理解mysql是这样来处理客户端解析过程的,
  当mysql的client连过来的时候,服务器会主动去查client的域名。
  首先查找 /etc/hosts 文件,搜索域名和IP的对应关系。
  如果hosts文件没有,则查找DNS设置,如果没有设置DNS服务器,会立刻返回失败,就相当于mysql设置了skip-name-resolve参数,如果设置了DNS服务器,

就进行反向解析,直到timeout。

③所谓反向解析是这样的:
  mysql接收到连接请求后,获得的是客户端的ip,为了更好的匹配mysql.user里的权限记录(某些是用hostname定义的)。
  如果mysql服务器设置了dns服务器,并且客户端ip在dns上并没有相应的hostname,那么这个过程很慢,导致连接等待。
  添加skip-name-resolve以后就跳过着一个过程了。

3.一般情况下,应该就能连上mariadb数据库了。如果上述方案还是不行的话,那么就可能是你的数据的权限没有分配,执行以下命令:

登录Linux的mariadb数据库,使用mysql -uroot -p //这样应该可以进入MySQL服务器

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION //赋予任何主机访问数据的权限

mysql>FLUSH PRIVILEGES //修改生效

mysql>EXIT //退出MySQL服务器

window下利用navicat访问Linux下的mariadb数据库相关推荐

  1. linux开启mysql窗口_通过window(Navicat)访问linux中的mysql数据库

    Centos安装Mysql数据库 查看我们的操作系统上是否已经安装了mysql数据库 [root@centos~]# rpm -qa | grep mysql//这个命令就会查看该操作系统上是否已经安 ...

  2. 在Windows下使用Navicat连接Linux下的MySql

    用Navicat链接MySql会失败,这是因为MySql是安装在Linux(虚拟机)上的,而你用的是Windows系统,相当于是两台电脑,你需要将权限MySql的访问权限授予其他电脑,具体设置如下: ...

  3. 利用多线程实现linux下C语言的聊天室程序:

    转载:http://www.360doc.com/content/16/0421/11/478627_552531090.shtml 利用多线程实现linux下C语言的聊天室程序: 客户端代码: th ...

  4. 解决Navicat连接linux下mysql数据库卡顿的问题

    解决Navicat连接linux下mysql数据库卡顿的问题 进去到 etc目录下 vi my.cnf 添加 skip-name-resolve 取消名臣检测

  5. ubuntu14.04中利用samba访问linux/windows共享目录的方法

    ubuntu14.04中利用samba访问linux/windows共享目录的方法 时间:2015-02-04 00:07来源:网络整理 作者:赵红霞 点击: 209 次 ubuntu14.04中访问 ...

  6. linux 目录下创建子目录,在 Linux 下用 mkdir 命令来创建目录和子目录

    了解了用 ls 命令在目录中列出条目后,现在我们要学习在 Linux 系统下创建目录.在 Linux 下,我们可以使用 mkdir 命令.Mkdir 是"make directory&quo ...

  7. linux下的shell脚本,linux下的shell脚本的使用

    什么是shell? Shell是一个命令解释器,它在操作系统的最外层,负责直接与用户进行对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕反馈给用户.这种对话方式可是交互 ...

  8. windows下的文本文件在linux下查看,中文显示乱码

    windows下的文本文件在linux下查看,中文显示乱码 伏心救赎 2013-03-05 14:37:37 581 收藏 分类专栏: 基于类linux的开发 </div></div ...

  9. Linux下的tree命令 --Linux下目录树查看

    Linux下的tree命令 --Linux下目录树查看 有时我们需要生成目录树结构,可以使用的有ls -R,但是实际效果并不好 这时需要用到tree命令,但是大部分Linux系统是默认不安装该命令的, ...

最新文章

  1. R语言ggplot2可视化:ggplot2中使用element_text函数设置轴标签文本粗体字体(bold text,只设置x轴的标签文本使用粗体字体)
  2. Delphi中将DBGRID中的内容输出到WORD中
  3. 全球第一所人工智能大学成立:培养硕博研究生,全员全额奖学金
  4. python知识:@classmethod和@staticmethod的异同
  5. 万立快速开发平台——软件制作大师
  6. android 解析网络数据(JSON)
  7. Java SSM篇2——框架的基本认识
  8. mybatis那些事~
  9. 通过 User-Agent 请求头判断设备类型
  10. 史上最全Oracle文件损坏处理办法(附实验步骤)
  11. delete容易出错的地方
  12. 深入浅出MySQL出版了
  13. 为什么使用 SLF4J 而不是 Log4J 来做 Java 日志
  14. 访问虚拟机web应用程序
  15. 5类6类7类网线对比_五类网线、六类网线和七类网线有什么区别?如何挑选网线?...
  16. 计算机领域顶级期刊是什么,喜报 | 我所一篇论文被计算机领域顶级期刊TKDE录用...
  17. 朋友圈终于能斗表情包了,会发表情包您就多发点!
  18. 简单的漫画创作项目comicgen
  19. 关于C/C++中的short类型
  20. Notion-数据导入

热门文章

  1. java判断用户是否在某一个区域登录_Java实现QQ登录和微博第三方登录
  2. ERP成分简介--听觉感觉反应
  3. 服务器远程管理app,用什么软件远程管理服务器最好? - 选择攻略!
  4. mysql隔离级别加锁情况_MySQL数据库事务各隔离级别加锁情况--read committed amp;amp; MVCC...
  5. python ssl模块用法详解_一看就懂,Python 日志模块详解及应用!
  6. 72岁奶奶在抖音教物理火了,百万粉丝追更,网友:小时候要有这种老师就好了...
  7. AI医疗版App Store来了:GE发布“爱迪生魔盒”,集成各方医疗方案,李开复点赞...
  8. 谷歌又有手机黑科技:进入办公室就变静音,遇车祸自动报警
  9. ICML新研究提出泛化能力评估新指标:直接上向量余弦距离就OK,还开源了相关代码...
  10. (十六) 整合spring cloud云架构 -使用spring cloud Bus刷新配置