mysql5.7 设置远程访问的实现
作者:冷小鱼 发布时间:2024-01-20 12:40:57
mysql5.7设置远程访问不是和网上说的一样建个用户赋个权限就可以访问的。比如下边这个就是建用户赋权限,可能在之前的版本可以,但是我在我的mysql上一直不行。为此烦了好久!!!项目都耽误了!!
一、原来设置远程访问的方式
Mysql默认是不可以通过远程机器访问的,通过下面的配置可以开启远程访问
在MySQL Server端:
执行mysql 命令进入mysql 命令模式,
Sql代码
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上设置的远程访问帐户
另外你也可以在一个机器上模拟远程访问,就是多开几个终端,方便测试是否可以远程访问。
我发现一个问题, 如果上面的命令你执行完毕, 你在 本地就是localhost , 执行 :
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
终于进去了,哈哈!!
来源:https://blog.csdn.net/yanxilou/article/details/104433693


猜你喜欢
- 作用:调用方法改为调用对象, 比如 : p.set_name() 改为 p.set_name区别:前者改变get方法,后者改变set方法效果
- 今天写了一个java项目连接数据库,之后写了一个执行入库操作的模块。此时暴露出一个问题就是项目的中文插入到数据库时会是乱码:项目输出的中文:
- 用科讯CMS“分页显示(专题)文章列表标签”,可以在栏目文章列表下面产生一个页码行。从图可以看出,这段DIV,还需要CSS修饰,但是查看Ht
- 本文实例讲述了JS异步函数队列功能。分享给大家供大家参考,具体如下:场景:做直播,会有入场消息,入场特效,用户如果有坐骑,需要给他展示几秒钟
- Django中的中间件是一个轻量级、底层的插件系统,可以介入Django的请求和响应处理过程,修改Django的输入或输出。中间件的设计为开
- 本文通过一个详细的例子,来阐述了在线编辑XML文档数据的方法。由于Netscape对XML的支持比较弱,因此,要实现跨平台的数据交换,数据的
- Axios是一款网络前端请求框架,基本用法如下:1. Axios基本用法:const response = await Axios.crea
- 一、go语言内存布局想象一下,你有一个如下的结构体。type MyData struct {
- 前言CSV(Comma-Separated Values)即逗号分隔值,一种以逗号分隔按行存储的文本文件,所有的值都表现为字符串类型(注意:
- 前言;python由于它动态解释性语言的特性,跑起代码来相比java、c++要慢很多,尤其在做科学计算的时候,十亿百亿级别的运算,让pyth
- 本文实例讲述了python使用正则表达式匹配字符串开头并打印的方法。分享给大家供大家参考,具体如下:import res="nam
- 一、TensorBoardTensorBoard 一般都是作为 TensorFlow 的可视化工具,与 TensorFlow 深度集成,它能
- SQL Server发展至今,关于日期的格式的控制方法,有传统的方法,比如CONVERT(),也有比较便利的新方法,比如FORMAT();同
- 因为比较简单,我就不说什么了。一看就明白的!1.sql防注入函数Function ChkStr(InString) &
- 本文实例为大家分享了vue更多筛选项小组件的实现方法,供大家参考,具体内容如下效果:就是一个简单的小效果,当有很多筛选条件时,默认只展示几项
- 第四篇《WEB标准能有多难?》专栏文章将结束关于文本部分的XHTML的讲解。那么这篇主讲的内容涉及链接、标题、插入、删除、上下标、分割线、换
- 需求描述项目首先要用户选择某个问题,选择之后使用ElementUI的Notification组件提示用户正在对文件格式进行检查(需要先提交给
- createTrackbar是Opencv中的API,其可在显示图像的窗口中快速创建一个滑动控件,用于手动调节阈值,具有非常直观的效果。具体
- 等间距取值a = np.linspace(float(-pi), float(pi), 100)从-pi到pi取100个值对区间进行等间距取
- 一年前网上还找不到关于 inline-block 属性的文章,为了方便大家更好的理解该属性,当时总结整理了篇《display:inline-