mysql5.7 设置远程访问
mysql5.7设置远程访问不是和网上说的一样建个用户赋个权限就可以访问的。比如下边这个就是建用户赋权限,可能在之前的版本可以,但是我在我的mysql上一直不行。为此烦了好久!!!项目都耽误了!!
一、原来设置远程访问的方式
Mysql默认是不可以通过远程机器访问的,通过下面的配置可以开启远程访问
在MySQL Server端:
执行mysql 命令进入mysql 命令模式,
- mysql> use mysql;
- mysql> GRANT ALL ON *.* TO user@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
#这句话的意思 ,允许任何IP地址(上面的 % 就是这个意思)的电脑 用admin帐户 和密码(admin)来访问这个MySQL Server
#必须加类似这样的帐户,才可以远程登陆。 root帐户是无法远程登陆的,只可以本地登陆
远程访问:
- mysql -h172.21.5.29 -uuser -p123456 即可了
- //172.21.5.29就是MySQL Server的IP地址,user就是刚才在 172.21.5.29上设置的远程访问帐户
另外你也可以在一个机器上模拟远程访问,就是多开几个终端,方便测试是否可以远程访问。
- mysql -hlocalhost -uadmin -padmin
结果是失败的。
原来 上面的 % 竟然不包括localhost
所以你还必须加上这样的 命令:
mysql>GRANT ALL ON *.* TO admin@'localhost' IDENTIFIED BY 'admin' WITH GRANT OPTION;
二、mysql5.7中设置远程访问
我在按照上边的方法设置后,发现用mysql -h 并不能远程访问,修改了/etc/my.cnf配置文件把
#skip-networking 注释掉
加上bind-address=0.0.0.0
然而并没有卵用!
看得我都快背下来了!
后来我直接去看他的配置文件:在/etc/mysql文件夹下

点开图中的my.cnf: 有下面一些话:
#
# * IMPORTANT: Additional settings that can override those from this file!# 其他地方的配置可以覆盖此文件的配置
# The files must end with '.cnf', otherwise they'll be ignored.
#!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/
文件最后的两个路径我很好奇,就去看了下:conf.d/:

里边一个配置文件,打开发现,就一个[mysql],然后啥都没有。
再看另一个:

也有一个配置文件,打开发现有惊喜,就在这里边有一句话:

瞬间有种见到天日的感觉!!!看它的注释就明白,只能本地连接,问题出在这!!
把bind-address注释掉:#bind-address=...
重启mysql服务,远程链接:
- mysql -h172.17.0.1 -uuser -p
//我的用户名是:user
终于进去了,哈哈!!

为了这个折腾了两天!!!我是服气mysql的!!
mysql5.7 设置远程访问的更多相关文章
- linux下设置mysql5.7数据库远程访问
1.在网上看了很多关于设置远程访问的方式,根本就不起作用,后来在网上看到有一篇文章终于解决了我的问题,在配置文件中 /etc/mysql/my.cnf : 2.编辑 vi /etc/mysql/mys ...
- Ubuntu 16.04 安装mysql并设置远程访问
说明: 一个朋友在使用ubuntu-server 16.04安装mysql,设置远程访问的时候出现了问题,请我帮忙.但是,我也没有使用过ubuntu安装mysql,于是乎搜索了很多技术文件,比着葫芦画 ...
- mysql设置远程访问
Mysql远程访问设置,容许远程连接本地数据库. 1.进入本地Mysql安装目录bin下,登录Mysql, 如图: 2. 切换数据库到内置的名为“mysql”的数据库,可以看到下面的一个名为“use ...
- MySQL8.0设置远程访问权限
mysql 8.0.11 用Navicat远程无法连接 症状: 安装了mysql 8.0.11 之后本地可以登录,但是远程第三方工具无法连接,防火墙已经放通的, 解决之道: 首先登陆到mysql命令行 ...
- mysql5.7设置简单密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
注:本文来源于< mysql5.7设置简单密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy r ...
- MYSQL 更改数据库data存储目录 创建用户 创建权限 设置远程访问的权限.
一. 怎么更改数据库data存储目录: 1. 安装MYSQL. 2. 切换到 C:\Program Files\MySQL\MySQL Server 5.6 3. 新建my.ini. 加入如下配置: ...
- linux安装mysql之设置远程访问权限
1.将3306端口加入防火墙 /sbin/iptables -I INPUT -p tcp --dport 3306-j ACCEPT #添加端口3306/etc/rc.d/init.d/iptab ...
- Linux中MySQL5.7设置utf8编码格式步骤
关于编码问题,真的是弄得我很郁闷,网上找的帖子这方面也很多但都无济于事,晚上终于找到一篇有效的,特此贴上. 转自Ubuntu中MySQL5.7设置utf8编码格式步骤 1.首先打开终端 2.输入mys ...
- ubuntu16.0.4安装mysql5.7以及设置远程访问
1.安装mysql命令 sudo apt-get install mysql-server sudo apt install mysql-client sudo apt install libmysq ...
随机推荐
- Winform开发框架中工作流模块之申请单草稿处理
在我们开发工作流模块的时候,有时候填写申请单过程中,暂时不想提交审批,那么可以暂存为草稿,以供下次继续填写或者提交处理,那么这个草稿的功能是比较实用的,否则对于一些填写内容比较多的申请单,每次要重填写 ...
- NIO相关基础篇三
转载请注明原创出处,谢谢! 说在前面 上篇NIO相关基础篇二,主要介绍了文件锁.以及比较关键的Selector,本篇继续NIO相关话题内容,主要谈谈一些Linux 网络 I/O模型.零拷贝等一些内容, ...
- Java连接MySQL数据库增删改查通用方法
版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...
- nginx+redis缓存微信的token数据
上一篇文章我们讲了如何在负载均衡的项目中使用redis来缓存session数据,戳这里. 我们在项目的进展过程中,不仅需要缓存session数据,有时候还需要缓存一些别的数据,比如说,微信的acces ...
- Oracle JDBC:驱动版本区别与区分 [转]
classes12.jar,ojdbc14.jar,ojdbc5.jar和ojdbc6.jar的区别,之间的差异 在使用Oracle JDBC驱动时,有些问题你是不是通过替换不同版本的Oracle ...
- mongodb设置用户名和密码
需求:我们需要在一个mongodb上面新建两个数据库,每个数据库的用户名和密码不一样,讲道理来说我们直接设置admin,就可以控制所有的数据库,不过用起来总是感觉有各种问题,目前还不太熟悉mongod ...
- 【java】method.invoke(方法底层所属对象/null,new Object[]{实际参数})
反射调方法时无论是静态/非静态,固定/可变参数,都有Object对象数组对参数进行包装. package com.tn.clas; import java.lang.reflect.Method; i ...
- Visual Studio 2017 : client version 1.22 is too old
使用Vs2017 编译 eShopOnContainers-ServicesAndWebApps 时,报了错误: Microsoft.DotNet.Docker.CommandLineClientEx ...
- 转:一篇讲线上优化查 CPU的脚本
原文链接:https://my.oschina.net/leejun2005/blog/1524687 摘要: 本文主要针对 Java 服务而言 0.背景 经常做后端服务开发的同学,或多或少都遇到 ...
- lua元方法
lua中有元表的概念,元表类似于基类的功能, 在元表中有两个方法可以很好的认识元表: __index和__newindex __index用于查询 对表中的字段进行访问时,如果该表有元表,并且 表中没 ...