Navicat连接虚拟机上的mysql
- 刚刚在虚拟主机上安装mysql, 想使用Navicat 操作mysql. 但是连接不上
报错: 2003 - can't connect to MySQL server on '192.168.1.108'(10038)
使用apt-get安装的mysql, 没有修改任何配置. 在虚拟机里 查看数据库,
use mysql; # mysql库里有一个user表
show tables;
select user,host from user;
# 看到root那一行记录 root对应的host是localhost, 也就是不能远程登录的意思. 需要将其修改成%.
update user set host='%' where user='root'; #表示允许远程其他用户登录还有一种方法(没有尝试): grant all privileges on *.* to 'root'@'%' identified by '密码' with grant option; #也是修改登录权限,这个和修改表任选其一
- 设置完user表还是不行, 继续
netstat -apn | grep 3306 #显示的如果是127.0.0.1:3306那么就注释/etc/mysql/mysql.conf.d/mysqld.cnf 中的bind-address 127.0.0.1
注释完成后重启mysql.
#重启mysql (Ubuntu系统)
/etc/init.d/mysql restart再使用netstat -apn | grep 3306 查看 如果显示的是 :::3306 就OK了 连接成功!!!
- flush privileges #刷新权限, 有的时候可能需要刷新一下,
- 上面的是在Windows的Ubuntu虚拟机上操作的, 在服务器上操作的时候发现略有不同, 记录一下. 在服务器上创建新的用户的时候, 如果想要修改user表, 不需要修改mysqld.cnf文件, 在修改user 表之后, 重启mysql 即可生效.
不用注释掉这一行了。因为这里不是绑定127.0.0.1,如果绑定127.0.0.1,那就注释掉。 - 如果新买的阿里云服务器,安装mysql之后,在服务器上能访问,Navicat链接不上,并且已经按照上面的步骤修改了user表和配置文件mysqld.cnf等,还是不能访问,原因是没有开放3306端口。
- 注意:如果user表中同一个用户名有多个行,比如说root 账户,有两行,一行是host 为localhost 另一行 host 为% , 这个时候如果你在其他电脑登录mysql 的 root 账号发现登录不上去,是因为mysql读取多个账号的时候,判断user,host是有顺序的。%排在localhost 的后面,所以判断结果还是localhost,只能本机登录。解决办法:可以临时修改user表的host为你当前使用的电脑IP,实现永久的在其他电脑登录mysql , 那就把localhost那个记录从user表删除。
访问控制-连接验证官方文档:https://dev.mysql.com/doc/refman/8.0/en/connection-access.html
Navicat连接虚拟机上的mysql的更多相关文章
- 本地如何连接虚拟机上的MySql
今天在本地链接虚拟机上的MySql,然而链接失败了!甚是尴尬! 首先想一想是什么原因导致链接失败: 基础环境:在Linux上安装mysql 1.检查虚拟机IP在本地是否可以ping 通过 虚拟机IP: ...
- MySql:Navicat 连接不上虚拟机上的mysql容器
1.问题显示 通过windows主机navicat连接虚拟的mysql时报如下错误. 2.问题原因 由于navicat版本的问题,出现连接失败的原因:mysql8 之前的版本中加密规则是mysql_n ...
- 如何在本地远程连接linux虚拟机上面的mysql
基础环境: 在linux安装mysql 检查远程的虚拟机是否可以ping通过 查看虚拟机IP为192.168.38.128 cmd窗口ping 192.168.38.128,出现如下界面说明是可以的 ...
- 本地连接虚拟机上面的redis
想做一个抓取系统,想到用redis存储临时数据可能会比较好些,就想着装个虚拟机,在虚拟机上面安装redis,通过本地来访问虚拟机上面的redis. 虚拟机和redis安装成功之后,发现本地怎么都连接不 ...
- java API连接虚拟机上的hbase
今天用本地的eclipse连接虚拟机上的hbase数据库,代码如下: public static void main(String[] args) throws Exception{ Configur ...
- 【liunx】使用xshell连接虚拟机上的CentOS 7,使用xhell连接本地虚拟机上的Ubuntu, 获取本地虚拟机中CentOS 7的IP地址,获取本地虚拟机中Ubuntu 的IP地址,Ubuntu开启22端口
注意,如果想用xshell去连接本地虚拟机中的linux系统,需要本地虚拟机中的系统是启动的才能连接!!!!! ============================================ ...
- 【centOS】【xshell】xshell连接虚拟机上的centOS,操作途中突然断开连接,报错:connect closed by foreign host
如题 xshell连接虚拟机上的centOS,操作途中突然断开连接,报错:connect closed by foreign host 快捷解决方法: 在虚拟机上centOS重新启动网络,即可解决问 ...
- 访问局域网内其他主机的VMware虚拟机上的mysql数据库和redis缓存
上一篇写了访问局域网内其他主机的虚拟机上的项目 ,现在说说访问局域网内其他主机的虚拟机上的数据库和缓存 博主使用的linux是Ubuntu16.04: 一.安装数据库和缓存 这里连接的数据库和缓存以m ...
- Linux 命令之 Navicat 连接 Linux 下的Mysql数据库
2016年12月7日18:44:06 -====------------------------ GRANT ALL PRIVILEGES ON *.* TO 'itoffice'@'%' IDEN ...
随机推荐
- 回炉重铸系列之javaEE基础
这篇文章主要介绍 servlet filter listener interceptor 之 知识点.博文主要从 概念,生命周期,使命介绍其区别.详情如下: 概念 生命周期 使命 servlet ...
- Zookeeper快速开始
具体部署流程: #下载 wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/current/apache-zookeeper-3.5. ...
- 微信小程序 路由跳转 异步请求 存储数据,微信登录接口
1小程序路由跳转 wx.switchTab(Object object) 这里的tabBar是底下的导航栏指定的页面 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 tabBar l ...
- Reids 连环炮面试(转)
出处: <今天面试了吗>-Redis Redis是什么 面试官:你先来说下redis是什么吧 我:(这不就是总结下redis的定义和特点嘛)Redis是C语言开发的一个开源的(遵从BSD ...
- 使ul中的li居中
1.如果li设置了float:left; 解决办法: 1.ul父元素的标签设置:text-align: center; 2.ul设置: display: inline-block; 2.li不设置fl ...
- 动态对象(dynamic)的用法
说到正确用法,那么首先应该指出一个错误用法: 常有人会拿var这个关键字来和dynamic做比较.实际上,var和dynamic完全是两个概念,根本不应该放在一起做比较.var实际上是编译期抛给我们的 ...
- mybatis整合spring下的的各种配置文件
1.applicationContext.xml <?xml version="1.0" encoding="UTF-8"?> <beans ...
- BBPlus团队ALPHA冲刺博客(肖文恒)
ALPHA冲刺博客 第一天:https://www.cnblogs.com/bbplus/p/11931039.html 第二天:https://www.cnblogs.com/bbplus/p/11 ...
- 4.SpringMVC 配置式开发-处理器映射器
处理器映射器 HandlerMapping HandlerMapping 接口负责根据request请求找到对应的Handler处理器及Interceptor拦截器, 并将它们封装在HandlerEx ...
- Delphi 数组特性