mysql安装、用户密码、密码策略、授权用户等(mysql5.7版本)

1.mysql安装后相关目录与文件:
    主配置文件: /etc/my.cnf
    数据库目录: /var/lib/mysql/
    默认端口号: 3306
    进程名: mysqld
    传输协议: TCP
    进程所有者: mysql
    进程所属组: mysql
    错误日志文件: /var/log/mysql.log

2.mysql密码策略:
    0或者LOW 长度;
    1或者MEDIUM 长度;数字、小写/大写,特殊字符
    2或者STRONG 长度;数字、小写/大写,特殊字符;字典文件

3.恢复root密码的相关配置说明(当mysql的root密码忘记时使用)
    --skip_grant_tables:此选项会让MySQL服务器跳过验证步骤,允许所有用户以匿名的方式,无需做密码验证直接登陆MySQL服务器,并且拥有所有的操作权限。
    --skip_networking:此选项会关门MySQL服务器的远程连接。这是因为以--skip_grant_tables方式启动MySQL服务器会有很大的安全隐患,为了降低风险,需要禁止远程客户端的连接。

4.mysql授权用户的权限:
  命令        权限
  usage          无权限
  SELECT      查询表记录
  INSERT       插入表记录
  UPDATE      更新表记录
  DELETE      删除表记录
  CREATE      创建库、表
  DROP       删除库、表
  RELOAD     有重新载入授权 必须拥有reload权限,才可以执行flush [tables | logs | privileges]
  SHUTDOWN    允许关闭mysql服务 使用mysqladmin shutdown 来关闭mysql
  PROCESS    允许查看用户登录数据库服务器的进程 ( show processlist; )
  FILE       导入、导出数据
  REFERENCES   创建外键
  INDEX      创建索引
  ALTER        修改表结构
  SHOW DATABASES             查看库
  SUPER               关闭属于任何用户的线程
  CREATE TEMPORARY TABLES   允许在create table 语句中使用 TEMPORARY关键字
  LOCK TABLES             允许使用 LOCK TABLES 语句
  EXECUTE             执行存在的Functions,Procedures
  REPLICATION SLAVE       从主服务器读取二进制日志
  REPLICATION CLIENT        允许在主/从数据库服务器上使用 show status命令
  CREATE VIEW             创建视图
  SHOW VIEW              查看视图
  CREATE ROUTINE         创建存储过程
  ALTER ROUTINE            修改存储过程
  CREATE USER             创建用户
  EVENT                有操作事件的权限
  TRIGGER,             有操作触发器的权限
  CREATE TABLESPACE        有创建表空间的权限

5.授权用户的客户端地址:
  库名
  所有库所有表:    *.*
  一个库:       库名.*
  一张表:       库名.表名

6.授权用户的用户名:
  授权时自定义 要有标示性,存储在mysql库的user表里

7.授权用户的客户端地址
  所有主机:         %
  网段内的所有主机:   192.168.1.%
  1台主机:        192.168.1.1
  数据库服务器本机:   lsocalhost

具体过程如下:

将下载好的软件包使用tar -xvf 命令解压后使用yum软件管理工具安装(使用yum安装可以解决依赖关系)

  

提示如下则安装成功。(也可以使用、rpm -qa | grep mysql 查看软件是否已安装)

  

启动mysql服务

  

利用grep 工具筛选包括password的行,使用随机密码登录mysql数据库,现在会发现无法执行查询语句,因为首次登录需要修改密码。

  

修改数据库本地用户root登录密码为‘Aa123456...’(如下图修改密码后执行查询语句就不会报错)

  

使用修改后的密码登录系统(修改的密码要遵循mysql默认的密码策略,即长度为8,包含数字、小写/大写,特殊字符)

  

修改密码策略为0,长度为6,并设置密码为123456(密码策略为0是只验证密码长度,上述有详细介绍)

  

退出当前连接,使用修改后密码连接

  

上述命令行中密码策略的修改为临时修改,重启服务无效,永久修改需写入、/etc/my.cnf配置文件中,如下:

在mysql命令行下也能执行系统命令,需在命令前加system 如修改配置文件system  /etc/my.cnf

  

查看当前密码策略已经为LOW(0)长度为6

  

在配置文件中添加如下配置项重启后实现跳过验证恢复root密码(必须把上述在配置文件的密码策略注释才会重启成功)

  

重启服务后,输入mysql直接进入数据库

通过mysql库下的user表修改本地root用户密码为654321,

删除刚才的跳过验证无密码登录额配置或者注释,重启服务,使用刚刚修改的密码654321登录数据库服务

  

新建jrjs库.jrjs表

  

授权一个jrjs用户权限为所有权限,密码为“Aa123456.”

  

使用授权用户jrjs登录数据库,查看当前登录用户权限。

  

  以上就是关于mysql数据库密码,用户授权,配置文件等的相关知识及具体操作方法。

                                                2019-09-21

Linux环境下MySQL的安装、密码策略、忘记密码后的破解及用户授权等。的更多相关文章

  1. Linux环境下Python的安装过程

    Linux环境下Python的安装过程 前言 一般情况下,Linux都会预装 Python了,但是这个预装的Python版本一般都非常低,很多 Python的新特性都没有,必须重新安装新一点的版本,从 ...

  2. Linux环境下NodeJS的安装配置(HelloWorld)

    Linux环境下NodeJS的安装配置(HelloWorld) 最简单的环境安装,测试helloworld.给初学者!! 安装脚本,请仔细阅读逐行执行: #!/bin/bash #检查是否已经安装 r ...

  3. Linux环境下使用yum安装zip和unzip

    Linux环境下使用yum安装zip和unzip. yum install zip yum install unzip

  4. PCL库在Linux环境下的编译安装

    PCL库在Linux环境下的编译安装 PCL库的源码库:https://github.com/PointCloudLibrary/pcl 下载完了之后解压下来 编译库的几个步骤 mkdir build ...

  5. Linux环境下mysql安装并配置远程访问

    环境:centOS 1.下载mysql安装文件 [root@localhost ~]# wget http://dev.mysql.com/get/mysql-community-release-el ...

  6. Linux环境下MySql安装和常见问题的解决

    MySql安装 首先当然是要连接上linux服务器咯,然后就是下面的命令甩过去,梭哈,一通运行就是啦   梭哈 下载: sudo wget http://dev.mysql.com/get/mysql ...

  7. Linux环境下MySQL5.7安装记录

    参考文档 <Installing MySQL on Unix/Linux Using Generic Binaries> https://dev.mysql.com/doc/refman/ ...

  8. Linux环境下卸载、安装及配置MySQL5.1

    Linux环境下卸载原有MySQL5.1数据库,并重新安装MySQL数据库的示例记录. 一.卸载MySQL 查看主机中是否安装了MySQL数据库: [root@RD-viPORTAL- ~]# rpm ...

  9. Linux(Ubuntu)下MySQL的安装与配置

    转自:http://www.2cto.com/database/201401/273423.html 在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今 ...

随机推荐

  1. 一个有趣的 5 X 5 方阵一笔画问题

      这个问题是在我上小学时同学告诉我的,当时觉得好玩,就随便瞎画这玩儿,不过从小学到大学,没有一次画成功过.这个问题起初同学告诉我的时候,图不是这样画的,我只是为了好表达,将问题抽象成网格了,原问题是 ...

  2. cmd指令集

    CMD指令集 win+R打开运行 输入命令 可以快速执行一些程序或者功能 cmd的指令通常在system中使用 在电脑的环境变量中path中添加环境变量 环境变量可以在cmd的黑窗口进行执行进行快速打 ...

  3. nginx对特定参数限流

    接到一个需求, 需要对请求(GET)里面的某个参数  的特定的值, 进行限流; 因为不限流的话, 不知道什么时候这个id的请求飙一下, 服务端就被压死了... 就像这样: /index.html?id ...

  4. 一文了解Python常见的序列化操作

    关于我 一个有思想的程序猿,终身学习实践者,目前在一个创业团队任team lead,技术栈涉及Android.Python.Java和Go,这个也是我们团队的主要技术栈. Github:https:/ ...

  5. JavaScript 数据结构与算法之美 - 十大经典排序算法汇总(图文并茂)

    1. 前言 算法为王. 想学好前端,先练好内功,内功不行,就算招式练的再花哨,终究成不了高手:只有内功深厚者,前端之路才会走得更远. 笔者写的 JavaScript 数据结构与算法之美 系列用的语言是 ...

  6. Storm 系列(五)—— Storm 编程模型详解

    一.简介 下图为 Strom 的运行流程图,在开发 Storm 流处理程序时,我们需要采用内置或自定义实现 spout(数据源) 和 bolt(处理单元),并通过 TopologyBuilder 将它 ...

  7. 使用PHP结合Ffmpeg快速搭建流媒体服务实践

    一.背景 笔者想将自己收藏的一些电影放到网站上可以用来随时播放,不过遇到了一个问题,便是如果直接将MP4文件放放到网站目录当中,手机端必须下载整个视频才可以播放,而如果跨外网传输,这实在是不太现实. ...

  8. 牛客练习赛38 E 出题人的数组 2018ccpc桂林A题 贪心

    https://ac.nowcoder.com/acm/contest/358/E 题意: 出题人有两个数组,A,B,请你把两个数组归并起来使得cost=∑i∗ci 最小,归并要求原数组的数的顺序在新 ...

  9. Codeforces 938D Buy a Ticket

    Buy a Ticket 题意要求:求出每个城市看演出的最小费用, 注意的一点就是车票要来回的. 题解:dijkstra 生成优先队列的时候直接将在本地城市看演出的费用放入队列里, 然后直接跑就好了, ...

  10. Atcoder E - Meaningful Mean(线段树+思维)

    题目链接:http://arc075.contest.atcoder.jp/tasks/arc075_c 题意:问数组a有多少子区间平均值为k 题解:一开始考虑过dp,但是显然不可行,其实将每一个数都 ...