mysql workbench连接不上远程数据库,xshell无法连接远程主机的问题
1.先说xshell无法连接的问题
最近使用virtualbox装了个ubuntu-16.04,然后在win7上使用xshell连接,首先确认win7能ping通虚拟机ip。然后确认是否安装了openssh,用命令:ps -ef |grep ssh ,发现没有安装,那就安装呗,没啥说的,使用命令:apt-get install openssh-server安装。
安装完之后用xshell连接,结果提示:SSH服务拒绝了密码。请再试一次,如图:

我使用root登录,密码也没错啊?原来是ssh默认不允许root用户登录。咋办?于是改配置文件:
vim /etc/ssh/sshd-config,找到如下一行:

如图,把PermitRootLogin这一项后面的“prohibit-password”改为:“yes”,重启ssh服务,然后回到Xshell继续使用root登录,成功。
注意:如果不改这个,使用非root是可以用xshell登录的。
2.说说mysqlworkbench无法连接的问题。
首先首先我的环境:ubuntu10.04+mysql5.7+mysql workbench
我的报错提示是这样的:
“Failed to connect to mysql at ***:3306 with user **,cann't connect to mysql server on *** (10061)”,如图:

注意看最后的10061,这个就是拒绝连接的错误码。
修改如下文件:vim /etc/mysql/mysql.conf.d/mysqld.cnf

找到“bind-address”这一项,可以看到默认只能在本地登录,把这一项注释掉,重启mysql,再试着连接,
结果又报错,
Access denied for user 'root'@***(using pasword:YES),如下:

这个我也不懂了,好在找到了资料,意思是,现在虽然mysql允许远程连接了,但是root用户还没有远程连接的权限,咋办呢?
创建一个新用户,并赋予它远程连接的权限:
1)登陆mysql
2)创建远程登陆用户并授权,在要链接的服务器上操作
mysql> grant all PRIVILEGES on *.* to 'username'@'xxx.xxx.xx.x' identified by 'password' WITH GRANT OPTION;
上面的语句表示将所有数据库的所有表的所有权限授权给 username 这个用户,允许 username 用户在 xxx.xxx.xx.x 这个 IP 进行远程登陆,并设置 username 用户的密码为 password。
分析参数:
all PRIVILEGES 表示赋予所有的权限给指定用户,这里也可以替换为赋予某一具体的权限,例如:select,insert,update,delete,create,drop 等,具体权限间用“,”半角逗号分隔。
*.* 表示上面的权限是针对于哪个表的,第一个*指的是数据库名称,后面的 * 表示对于所有的表,由此可以推理出:对于某一数据库的全部表授权为“数据库名.*”,对于某一数据库的某一表授权为“数据库名.表名”。
username表示你要给哪个用户授权,这个用户可以是存在的用户,也可以是不存在的用户。
xxx.xxx.xx.x 表示允许远程连接的 IP 地址,你的IP,如果想不限制链接的 IP 则设置为“%”即可。
password 为用户username的密码。
接着执行如下语句是设置生效
Mysql> flush privileges
最后重启mysql,然后就可以使用刚才重建的用户连接数据库了。
mysql workbench连接不上远程数据库,xshell无法连接远程主机的问题的更多相关文章
- Navicat for MySQL 使用SSH方式链接远程数据库(二)
这里我们使用SSH连接远程mysql数据库 2 SSH这种方式,可以使我们连接到远程服务器,但是现在并不能访问数据库,因为我们还没有连接到数据库 3 既然已经连接到服务器了,我们就该连接服务器上的数据 ...
- navicat突然连接不上远程linux服务器上的mysql
我linux服务器上的mysql是docker安装的,突然有一天我的navicat连接不上服务器上的mysql,于是开始了下面一系列的修复 1.首先登录服务器上mysql,看是否能正常登录,我发现不能 ...
- mysql workbench如何把已有的数据库导出ER模型
mysql workbench的特长是创建表结构的,然后在结构图中,圈圈点点,很容易就利用可视化方式把数据库建好,然后再导入到数据库服务器中,这种办法很效率.但是有时我们有一个需求,事先没有建表结构模 ...
- Dreamwaver 使用root用户连接不上远程服务器
我用dreamweaver连接远程服务,开始用的是root用户登录的,但是连接不上.网上查了一下,解决教程非常复杂,我就不列出来了. 后来我想了一下,之前我有连接过.我感觉可能是用户的问题,于是我在远 ...
- 使用instantclient_11_2 和PL/SQL Developer工具包连接oracle 11g远程数据库
本文转自CSDN博客,http://blog.csdn.net/helifengwell/archive/2010/08/18/5820434.aspx 1,先到Oracle站点下载Instant C ...
- 本机不安装Oracle客户端,使用PL/SQL Developer和 Instant Client 工具包连接oracle 11g远程数据库
一.先到Oracle网站下载Instant Client 下载地址:http://www.oracle.com/technetwork/cn/database/features/instant-cli ...
- 使用instantclient_11_2 和PL/SQL Developer工具包连接oracle 11g远程数据库(转)
1,先到Oracle网站下载Instant Client : http://www.oracle.com/technology/global/cn/software/tech/oci/instantc ...
- MySQL 连接不上本地数据库
1.打开 DOS 窗口,输入 mysql 连接命令时,提示报错 Cannot connect to MySQL server on 'localhost' (10061),如下图: 2.上面问题原因 ...
- mysql同一台服务器上不同数据库中个别表内容同步
>>>>>>soft_wsx>>>>>>--数据备份与还原>>同步备用服务器--1.完全备份主数据库--2.使用带S ...
随机推荐
- hTML5实现表单内的上传文件框,上传前预览图片,针刷新预览images
hTML5实现表单内的上传文件框,上传前预览图片,针刷新预览images, 本例子主要是使用HTML5 的File API,建立一個可存取到该file的url, 一个空的img标签,ID为img0,把 ...
- 配置本机IIS服务器
1.控制面板---程序---(程序和功能) 安装完成之后就可以访问本地的localhost 2.进入防火墙界面--高级设置 至此开放端口完成
- 自己对js对原型链的理解
js对象分为2种 函数对象和普通对象 函数对象 比如 function Show(){}var x=function Show2(){}var b=new Function("show3&q ...
- div的水平和垂直居中
CSS实现div的水平居中 div的水平居中可以通过margin设置为0 auto实现. .myDiv { width: 200px; height: 100px; margin: 0 auto; } ...
- django表单验证和跨站伪造csrf
Form验证 django中的Form一般有两种功能: 输入html 验证用户输入 django使用内置form方法验证表单提交的数据 html页面 <!DOCTYPE html> < ...
- Dev控件GridView单元格绑定控件
Dev控件GridView单元格绑定控件 //文本按钮 RepositoryItemButtonEdit btnFields = new RepositoryItemButtonEdit();//创建 ...
- 纯JS判断各种浏览器类型及版本.
IE11或者非IE if (!document.all) { alert('IE11+ or not IE'); } IE10 if (document.all && document ...
- Hybrid APP混合开发的一些经验和总结
http://www.cnblogs.com/kingplus/p/5588339.html 写在前面: 由于业务需要,接触到一个Hybrid APP混合开发的项目.当时是第一次接触混合开发,有一些经 ...
- Mac安装mysql
### 第一步 安装后一定要记住初始密码 ### 第二步 打开终端 cd /usr/local/mysql/bin ./mysql -u root -p #输入初始密码 set password = ...
- JavaScript原型
prototype与_proto_ 对象的 prototype 属性的方法.属性为对象所属的那一"类"所共有.对象原型链通过 proto 属性向上寻找. 为 proto 指定 nu ...