mysql2014授权设置_mysql权限管理(2014-09-15)

本文比较碎片化,不过以问答的形式比较容易理解。

如何查看mysql的当前登录的用户?

select user();

mysql -hlocalhost -uroot  与

root@192.168.11.100 区别?

mysql -hlocalhost -uroot只能在本地进行登录,而

root@192.168.11.100不能在本地登录。

mysql匿名账户

mysql的匿名账户即user为空的行,对应的为空的

0818b9ca8b590ca3270a3433284dd417.png

匿名账户在最新的版本中只能有对test进行操作,可以进行创建表、删除表等操作,之前的匿名用户的操作权限比较多,所以建议在安装完mysql之后第一件事就是把不用的用户都删除,只保留

root@localhost

可以使用如下语句:

delete from mysql.user where user != 'root' or host ! ='localhost';

flush privileges; //  修改后的mysql用户信息会暂时存在内存中,为了即时生效,需要使用flush privileges将内存中权限的数据刷新到磁盘中。

如何创建一个新的用户?

创建新的用户常用的有两种方法,即create user 、grant方法,个人常用的是grant方法,create user方法,在创建完用户之后还需要再进行授权,需要多些操作。当然也可以直接对mysql.user表进行insert操作,建议不进行这样操作,之前有进行过这样的操作,有出现权限问题,即root用户下只有没有mysql库。

create user 例子:

create user ' t_user'@'192.168.1.15' identified by '123456';

flush privileges;

这样创建之后只能看到一个库,其他库是看不见的

0818b9ca8b590ca3270a3433284dd417.png

grant 例子:

grant select,insert on dbanme.* to username@'ip地址' identified by '密码';

flush privileges;

如:

grant select on daosen.* to 'admin'@'192.168.11.212'  identified by '123456';

使用grant时需要注意的是,如果账号存在,则添加权限,若没有用户则创建用户并赋权限。

若admin用户存在,再使用grant 中使用identified by 会覆盖之前密码。如

grant select on daosen.* to 'admin'@'192.168.11.212'  identified by 'admin';这时的admin的密码就会被修改为admin 。如下图:

admin授权密码为123456

0818b9ca8b590ca3270a3433284dd417.png

登录:

0818b9ca8b590ca3270a3433284dd417.png

root用户登录下再对admin用户授同样的权限,只修改下密码:

0818b9ca8b590ca3270a3433284dd417.png

使用admin密码123456登录,报密码错误:

0818b9ca8b590ca3270a3433284dd417.png

使用admin密码admin登录,正常登录:

0818b9ca8b590ca3270a3433284dd417.png

注:添加完一个用户之后需要到mysql.user表中确认用户是否添加成功,是否有相关的权限。

如何更改用户密码?

方法一:

(推荐使用)

set password for ‘wubx’@’localhost’ = password(‘NewPass’);

flush privileges;

0818b9ca8b590ca3270a3433284dd417.png

方法二:(不推荐)

update mysql.user set password=password(‘密码’) where user=’用户名’ and host=’主机名’;

flush privileges;

方法三:

mysqladmin –u用户名 password ‘新密码’–hhost_name

如何设置mysql用户的过期?

mysql账户、密码过期设置,5.6.17之后的功能

Alter user 帐号名 password expire;

如何修改用户名?

rename user 旧账号@旧IP to 新账号@新IP

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

通过这命令不仅可以修改用户名,同时也可以修改用户对应的IP地址

mysql用户名最多只能支持多少个字符?

mysql用户名最多只能支付16个字符,若超过可能会出现内存溢出现象,我们规定mysql的用户名称以字母开头。

MySQL的帐号权限管理最低的要求?

保持最小权限授权,操作最少的用户。另外对生产库需要做两件事

1. 只保留root@localhost用户

2.删除test数据 ,要把test库删掉,truncate mysql.db;需要再执行下flush privileges;

0818b9ca8b590ca3270a3433284dd417.png

为什么不用视图?

mysql中没有物化视图,不会带来查询性能的提升,也只是查询语句而已。

如何创建具有可以将自己的权限再授权给其他用户的新用户?

grant all priviliges on *.*   to  admin@'localhost' with grant option;

需要加上with grant option;即可

生产环境中是否保留test库?

建议删除test库,另外有一个特别的地方,凡以test开头的数据,新建的没授权的用户都可以在上面进行创建表等操作。可以查看下这类库的权限。

0818b9ca8b590ca3270a3433284dd417.png

mysql库中的host表是否有用?

目前没有发过这表的用处,可能后期官方会去除,但目前的版本中若没有这个表数据库会无法启动。

如何收回权限?

revoke delete from wubx@192.168.11.212;

revoke  delete on daosen.* from wubx@localhost;

注:使用revoke前一定要查下这个用户是否有这个权限

对mysql的master及slave采用什么权限?

只要

REPLICATION SLAVE权限,如下:

GRANT REPLICATION SLAVE ON *.* TO 'slave001'@'192.168.0.99' IDENTIFIED BY '123456';

对生产环境中应用采用什么权限?

个人觉得主要是insert、update、delete、select操作,一般就可以了。

show processlist与  show full processlist有什么区别吗 ?

show full processlist 较长的SQL不截断,show processlist会进行截断。

show processlist各字段的意义?

0818b9ca8b590ca3270a3433284dd417.png

.SHOW PROCESSLIST作用: 显示了正在运行的进程线程。

. SHOW PROCESSLIST 将生成以下列:

. –  Id:连接标识符

. –  User:发出语句的 MySQL 用户

. –  Host:发出语句的客户机的主机名

. –  db:选择默认数据库,否则为 NULL

. –  Command:线程正在执行的命令类型

. –  Time:线程处于当前状态的时间(秒)

. –  State:指示线程正在执行的内容的操作、事件或状态

. –  Info:线程正在执行的语句;否则为 NULL

常出现的权限问题及解决方法

忘记密码怎么办?

1.

把skip-grant-tables 这个配置文件my.cnf到加到参数文件,重启,然后更改密码

把参数去掉,再重启就OK了,连接到mysql中

2.进入mysql

,操作mysql.user

update mysql.user set password=pasword('newpassord') where user=XXXX and host=XXXX;

flush privileges;

生产对于已经授权的用户列表,拒绝某台机器连接?

基本环境介绍服务帐号  app_dev@’192.168.10.%’ ,

基于这样的用户: 192.168.10.%用户段的IP都可以连接进来,但运行中发现某台机器不是我们要的机器或是这台机器经常干一些让我们喜欢的事,假设这个IP是:192.168.10.11,连接MySQL的IP还有十几个,我们怎么拒绝192.168.10.11这个IP连接呢?

192.168.10.11的IP的进行特别再赋权限,

这样可以只有app_dev@'192.168.10.11' 可以使用,即最小匹配。如:

对某一段的IP赋:grant all privileges on *.* to admin@'192.168.10.%' identified by '123456';

进行限制:

grant all privileges on *.* to admin@'192.168.10.11' ;

连接数统计

通过

information_schema.processlist分析数据库的当前连接数,分析哪个用户、哪个主机、哪个IP等。

当前的连接数:

select count(*) from information_schema.processlist;

select  * from information_schema.processlist; //等价于: show processlist

0818b9ca8b590ca3270a3433284dd417.png

若只要输出 ip:port 的形式,substring_index(字符串,分割符,需要的第几个字段)

select substring_index(host,':', 1) from information_schema.processlist;

统计每个IP连接数:

select substring_index(host,":", 1) ip, count(*) from information_schema.processlist group by ip;

到库级别的ip连接数查看: select db, substring_index(host,":", 1) ip, count(*)  from information_schema.processlist  group by db, ip;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/271306.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python网站后台_Python 网站后台扫描脚本

Python 网站后台扫描脚本1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 #!/usr/bin/python #codingutf-8 import sys import urllib import time url "http://123.207.123.228/" txt open(r"C:\Users\ww\Desk…

数据库系统的三级模式结构知识笔记

1、数据抽象的三个层次数据库系统利用三个层次划分来抽象来对用户屏蔽系统的复杂性、简化用户与系统的交互。1.1 物理层物理层属于最低级层次的抽象,描述数据在存储器上如何进行存储的。物理层会详细描述复杂的底层结构。1.2 逻辑层逻辑层属于中间层,用来…

Arrays.sort()排序

/*** Arrays.sort()排序* 默认升序*/Testpublic void test(){Integer[] result {1,4,7,9};Arrays.sort(result);for (int i 0;i<result.length;i)System.out.println(i);}

import package的问题

在新建class的时候除了名字还可以选择包名&#xff1a; 新建2个包名&#xff0c;然后在不同的包里写2个同名的类&#xff0c; 程序中导入另外一个包 package com.hs;import com.hy.Father; 当直接使用Father的时候提示是引用的com.hy.Father public static void main(String[] …

数据库技术基础:常见基本模型介绍笔记

1、层次模型层次模型采用树型结构表示数据与数据间的联系。层次模型中每个节点表示一个实体&#xff0c;实体之间的联系用节点之间的连线表示&#xff0c;并且除了根节点以外&#xff0c;其他节点有且仅有一个双亲节点。层次模型特点&#xff1a;记录之间的联系通过指针实现&am…

升序

/*** 升序*/Testpublic void test25() {List<Integer> array Stream.of(1, 8, 5, 3).collect(toList());// 升序排序array.sort(Integer::compareTo);System.out.println(array);}

数据库技术:数据存储和查询知识笔记

1、存储管理器存储管理器作用&#xff1a;负责数据库中数据的存查询和更新。存储管理器负责和文件系统交互&#xff0c;将不同的DML语句翻译成底层文件系统命令&#xff0c;通过这种方式原始数据就通过文件系统存储在磁盘上。存储管理器是存储底层数据和应用程序、以及向数据库…

lambda中orElse(null)使用

如果取得第一个元素&#xff0c;则用findFirst() 最后提取元素的时候&#xff0c;可以用&#xff1a;get或者orElse(null) 这里要注意的是&#xff0c;规范用法是orElse(null) 用get方法&#xff0c;如果filter中获取的是null&#xff0c;那么用get方法会抛出异常&#xff1…

数据挖掘:数据仓库相关知识笔记

1、数据仓库介绍数据仓库&#xff08;DW&#xff09;&#xff1a;可以满足管理人员的决策分析需要&#xff0c;在数据库基础上产生了满足决策分析需要的数据环境。传统数据库和数据仓库比较比较内容传统数据库数据仓库数据内容当前数据历史的、存档的、归纳的、计算的数据目标面…

python200行代码_如何用200行Python代码“换脸”

本文将介绍如何编写一个只有200行的Python脚本&#xff0c;为两张肖像照上人物的“换脸”。 这个过程可分为四步&#xff1a; 检测面部标记。 旋转、缩放和转换第二张图像&#xff0c;使之与第一张图像相适应。 调整第二张图像的色彩平衡&#xff0c;使之与第一个相匹配。 把第…

git的smart Checkout跟force checkout的区别

1:在切换分支的时候,常常会遇到下图的问题 是因为我在test分支上修改了代码&#xff0c;但是没有commit&#xff0c;切换到其他分支上就弹出了这个窗口 我们需要怎么处理呢 2:可以看到弹框底部有Force Checkout Dont checkout Smart Checkout,表示什么意思呢 Smart …

数据挖掘相关知识介绍

1、数据挖掘定义把数据库中大量数据背后隐藏的重要信息抽取出来&#xff0c;然后为公司创造很多潜在的利润&#xff0c;针对这种海量数据库中挖掘数据信息的技术称为数据挖掘&#xff08;DM&#xff09;。2、数据挖掘的分类按照数据库种类&#xff1a;关系型数据库的数据挖掘、…

c语言数字灵活多变的访问形式_学习C语言你必须知道的事儿!

是新朋友吗&#xff1f;记得先点蓝字关注我哦&#xff5e;今日课程菜单Java全栈开发 | Web前端H5大数据开发 | 大数据分析人工智能Python | 人工智能物联网有听过这样一段话&#xff1a;在编程界&#xff0c;C语言就是道家的“三”&#xff0c;A生B&#xff0c;B生C&#xff0c…

IDEA通过git怎么回滚到某个提交节点或某个版本

1:先右键点击项目&#xff0c;选择git,接着Show History 2:这里会显示有历史提交的版本记录,假设我要回滚到箭头处到提交&#xff0c;操作如下 3:右键点击&#xff0c;点击Copy Revision Number 在编辑器里粘贴&#xff0c;可以看到如下 4:右击选择项目&#xff0c;选择git -&…

关系数据库基础知识介绍

1、关系的相关名词介绍属性&#xff08;Attribute&#xff09;:描述事物的若干特征称为属性。比如学号、姓名、职位、年龄等。域&#xff08;Domain&#xff09;&#xff1a;针对属性的取值范围集合。比如性别取值为男、女、学号的长度为8位等。一般在关系数据模型中&#xff0…

android中xmlns:tools属性详解

第一部分 安卓开发中&#xff0c;在写布局代码的时候&#xff0c;ide可以看到布局的预览效果。 但是有些效果则必须在运行之后才能看见&#xff0c;比如这种情况&#xff1a;TextView在xml中没有设置任何字符&#xff0c;而是在activity中设置了text。因此为了在ide中预览效果&…

python excel库 linux_用python写一个简单的excel表格获取当时的linux系统信息

最近在学习excel表格的制作&#xff0c;顺便结合之前学习的内容&#xff0c;利用python的两个模板&#xff0c;分别是获取系统信息的psutil&#xff0c;和生成excel表格的xlsxwriter。利用这两个模板将生成一个简单的excel表格&#xff0c;获取当时的linux系统信息&#xff0c;…

mac下安装brew下载非常慢解决方法

一键解决&#xff1a;自动脚本(全部国内地址)&#xff08;在Mac os终端中复制粘贴回车下面这句话) /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"输入y 在终端环境下&#xff0c;brew --version 查看brew的版本&#xf…

关系数据库模式和完整性约束相关概念

一、关系数据库模式介绍关系的描述形式&#xff1a;R(U,D.dom,F)&#xff0c;简化形式&#xff1a;R(U)、R(A1,A2,A3...An)R:表示关系名&#xff1b;U组成该关系的属性名集合&#xff1b;D是属性的域&#xff1b;dom是属性向域的映像集合&#xff1b;F为属性间数据的依赖关系集…

分布式锁的实现方式

在进行大型网站技术架构设计以及业务实现的过程中&#xff0c;多少都会遇到需要使用分布式锁的情况。那么问题也就接踵而至。分布式锁zk和memcached以及redis三者都能实现&#xff0c;同样是分布式锁&#xff0c;三者的区别何在&#xff1f;各自适用什么场景&#xff1f; 一、Z…