操作系统:Ubuntu 17.04 64位

MySQL版本:MySQL 5.7

一、查看3306端口是否开放

netstat -an|grep 3306

如果看到下图这样的,说明端口并未打开:

二、修改访问权限

进入目录“etc/mysql/mysql.conf.d/”,如下图所示:

在这个目录下,有一个配置文件“mysqld.cnf”,如下图所示:

打开这个配置文件:

sudo vim mysqld.cnf

文件打开后有一大段注释说明,不用去管它,直接看到下图中的部分:

注意上图中的第一行红色的注释:

“By default we only accept connections from localhost”,这几句话的意思是说“在默认情况下我们只允许本地服务访问MySQL”,所以我们需要注释掉下方那条配置,直接在它前面加上一个井号即可:

#bind-address = 127.0.0.1

如下图所是,这条配置也变成了注释:

拓展一下思路,如果我们出于安全考虑,希望限制只有某台应用服务器可以访问MySQL的话,那么其实就需要调整这条配置项就可以了。

三、修改端口号

还是这个配置文件,看到这个配置文件的中间部分的配置项:

我们需要在其中增加一条端口配置:

port = 3306

加完以后整个配置文件看起来是这样的:

修改完文件之后记得保存。

四、开放root账户的访问权限

在第三步中,我们仅仅只是取消了本地访问限制,但是我们还是没有对账户权限进行设置。

重启MySQL服务,并进入MySQL控制台:

service mysql stop

service mysql start

mysql -h 127.0.0.1 -u root -p

切换到系统数据库“mysql”中:

use mysql;

查看一下该数据库中的所有的表:

show tables;

我们要修改上图中的最后一张表“user”,看一下这张表有哪些字段:

desc user;

字段非常多,就不一一罗列了。我们要用到的只是“Host”和“User”两个字段而已:

select host,user from user;

在这张表里,我们看到root用户仅仅只能在本地访问MySQL服务,所以我们要把它修改为“%”,意思是无论在哪里root账户都能够访问数据库服务:

update user set host='%' where user='root';

注意,在真实的生产环境中,并不建议这么修改,因为安全风险太大。我建议根据实际情况将root用户的host项修改为某个指定的ip地址,或仍然保持localhost

最后一项设置,开放root账户所有权限:

grant all privileges on *.* to 'root'@'%' identified by '你的root账户密码';

使各种权限设置立即生效:

flush privileges;​

五、再次确认3306端口状态

netstat -an|grep 3306

如果看到下图这样,就可以了:

ubuntu mysql 修改 端口_在Ubuntu/Linux环境下使用MySQL:开放/修改3306端口、开放访问权限...相关推荐

  1. Linux环境下安装MySQL(源码安装)

    Linux环境下安装MySQL(源码安装) 1.事先从官网/国内镜像站点中下载源码安装包,上传至服务器: 2.安装开发工具和开发包(从5.5开始使用cmake编译) 3.创建用户和组 4.编译安装My ...

  2. Linux环境下从MySql数据库导出sql文件

    Linux环境下从MySql数据库导出sql文件(mysqldump命令) 1.导出数据和表结构: 首先要在安装mysql的/bin目录下才可以执行: #/usr/local/mysql/bin/ m ...

  3. PHP 命令行模式实战之cli+mysql 模拟队列批量发送邮件(在Linux环境下PHP 异步执行脚本发送事件通知消息实际案例)...

    源码地址:https://github.com/Tinywan/PHP_Experience 测试环境配置: 环境:Windows 7系统 .PHP7.0.Apache服务器 PHP框架:ThinkP ...

  4. 怎么判断linux22端口是否通,在Linux环境下使用SSH判断端口是否通(示例代码)

    在Linux环境下使用SSH判断端口是否通 在windows/linux环境下,可以使用telnet判断端口状态,但有时候在Linux环境下没有telnet,所以可以使用ssh判断端口状态. 一.ss ...

  5. 2008 mysql 本地安全_如何在Linux系统中建立mysql的本地安全机制?

    如何在Linux系统中对MySQL进行本地的安全机制?今天我们将给大家介绍下具体的操作方法. local-infile=0#关闭远程连接,即3306端口.这是LinuxMySQL的默认监听端口.由于此 ...

  6. linux上部署mysql服务_在Linux环境下部署MySql服务

    之前有下载部署过几次,但是每次都会踩一些坑.特此记录在liunx下部署安装mysql的基本步骤: 1.卸载老版本的mysql find / -name mysql|xargs rm -rf     查 ...

  7. linux直接联网安装mysql,linux环境下安装mysql

    Linux下安装mysql Mysql数据库的安装对于开发者来说,是我们必然会面对的问题,它的安装过程其实并不复杂,并且网络上的安装教程也非常多,但是对于新手来说,很多时候按照教程也没有能够安装成功, ...

  8. linux下apache端口被占用,【linux】下Apache无法启动(8080端口被占用)

    Linux下8080端口被占用,apache无法启动. 打开终端输入netstat -lnp|grep 8080 发现竟然是tcp6 占用里,因此ipv6启用占用了端口. 1.打开/etc/sysct ...

  9. Linux 环境下安装 MySQL,各种踩坑、疑难杂症 | 原力计划

    作者 | 红颜祸水nvn 来源 | CSDN博客,责编 | 夕颜 头图 | CSDN 下载自视觉中国 出品 | CSDN(ID:CSDNnews) 本文中,作者总结了在使用Linux CentOS 6 ...

最新文章

  1. 《大数据实践课》开创实践教学新模式:清华大数据能力提升项目特色课程系列报道之一
  2. Share一个整理美化JavaScript代码的在线工具
  3. android 显示单位 像素
  4. less的一些用法整理
  5. 将Ajax请求返回的json数据,转换成json对象
  6. 介绍一个不错的图书下载网站-顺便推荐几本书
  7. 【面试】场景 智力题
  8. 一次完整的react hooks实践
  9. java进账和转账需要锁吗,Spring与Java中的锁
  10. (转)智能投顾的大赢家,仍然会是传统机构
  11. 规划设计计算机配置,平面设计电脑配置
  12. linux添加用户及登录密码,linux 创建账户和密码
  13. 模拟Snap.com,支持js引入对链接预览的简单实现
  14. 苹果笔记本装win7_小白“复活记”,十多年前的MacBook,曲折安装Win7
  15. VS编程,几个好用的Visual Studio插件推荐(二)
  16. Java数组、集合、散列表常见算法浅析
  17. HTTP协议:无状态协议
  18. Linux命令:halt
  19. linux中 777,755等用户权限说明
  20. Python中request的content,text和string方法的区别

热门文章

  1. 计算机专业英语cpu,计算机专业英语CPU词汇
  2. 2016年蓝桥杯预赛第十题最大比例
  3. IDEA统计代码总行数———————插件管理
  4. IDEA个人习惯和记录
  5. notepad++使用方法
  6. OpenGov(一):什么是Polkadot Gov2
  7. 饥荒机器人升级上限多少_饥荒机器人满级属性是多少?血量有多高
  8. 特征选择数据集——不定期更新
  9. 生猛!实时把画质变成 4k 高清的神库!
  10. 基于MaxCompute的热门话题分析笔记