1. mysql用户和权限

mysql权限控制通过两步控制,第一是能不能连接(验证用户身份),第二是能执行什么操作(验证权限)。

其中身份验证,需要验证连接mysql的计算机的IP地址或者计算机名称还有用户账户和密码。

2.管理mysql用户

查看mysql当前连接用户:select (user());

查看mysql系统内所有用户:select user,host from mysql.user;

mysql登录参数: mysql -u root -h 127.0.0.1 -p

查看数据库版本:select @@version;

查看变量: show variables;

删除匿名账户: delete from mysql.user where user='';  (删除后需求重启mysql服务生效)

创建mysql账户: create user zhang@'192.168.80.%'; (创建用户可以在80网段的机器上访问,不需要密码,用户名称区分大小写)

设置用户密码: set password for zhang@'192.168.80.%' =password('123')    (其中123为设置密码)

创建用户直接指定密码: create user zhang@'192.168.80.%' identified by '123'    (其中123为设置密码)

通过grant方式创建用户: grant select on schoolDB.* to  zhang@'192.168.80.%' identified by '123';   (创建用户并指定用户密码和权限)

创建用户通过插入mysql.user表:insert into mysql.user (user,host,password) values ('luo','192.168.80.%',password('123')); (需要执行刷新权限命令: flush privileges;)

删除mysql用户: delete from mysql.user where user='zhuang'; (所有zhang的用户都会删除,需要刷新权限flush privileges)

        drop user zhang@'192.168.80.%'; (无需刷新权限,直接生效)

mysql权限级别:

全局层级: 全局权限适用于一个给定服务器中的所有数据库,这些权限存储在mysql.user表中,grant all on *.* 和 revoke all on *.* 是授予和撤销全局权限命令。

grant select on *.* to 'test'@'localhost';

数据库层级: 数据库权限适用于一个给定数据库中的所有目标。这些权限存储在mysql.db 和 mysql.host 表中,grant all on db_name.*  revoke on db_name.* 是授予和撤销数据权限。

grant select on schoolDB.* to 'test'@'localhost';

表层级:适用于一个给定表中的所有列,存储在mysql.tables_priv表中。grant all on db_name.tbl_name , revoke all on dbname.tbl_name 是授予和撤销。

grant select,update,insert,delete on shcoolDB.Tstudent to 'test'@'locahost';

revoke update,insert on schoolDB.Tstudent from 'test'@'localhost';

列层级:适用于一个给定表中的单一列,存储在mysql.columns_priv表中。

grant select(studentid,sname) on schoolDB.Tstudent to 'webuser'@'localhost'; (授权webuser用户能够查询数据库的表schoolDB.Tstudent 的studentid和sname两列)

revoke select(studentid,sname) on schoolDB.Tstudent from  'webuser'@'localhost';  (撤销权限)

grant update(Email,Class) on schoolDB.Tstudent to 'webuser'@'localhost';  (授权webuser用户能够更改数据库的表schoolDB.Tstudent 的email和sname两列)

revoke update(Email,Class) on schoolDB.Tstudent from 'webuser'@'localhost';  (撤销权限)

flush privileges;

授予权限合并成一条:grant select(studentid,sname),update(Email,Class) on schoolDB.Tstudent to 'webuser'@'localhost';

修改命令: update Tstudent set sname='cool' where studentid='0001';

显示用户权限: show grants for 'test'@'localhost';

分配执行过程权限: grant execute on procedure schoolDB.gets to 'test'@'localhost';

分配执行函数权限: grant execute on function schoolDB.create_name to 'test'@'localhost';

root 密码丢失恢复:

修改配置文件:/etc/my.conf

加入一行 skip-grant-talbes

重启mysqld服务。

重置密码: update user set password=password('123') where user='root';

Mysql 数据库管理的更多相关文章

  1. mysql数据库管理工具navicat for mysql怎么用

    mysql数据库管理工具navicat for mysql,对于不怎么喜欢图形界面或者不太方便使用SQL的时候.我们可以通过用这个图形界面数据库管理工具来管理mysql,本经验咗嚛就简单介绍一下怎么用 ...

  2. MySQL数据库管理(二)单机环境下MySQL Cluster的安装

    上文<MySQL数据库管理(一)MySQL Cluster集群简单介绍>对MySQL Cluster集群做了简要介绍.本文将教大家一步步搭建单机环境下的MySQL数据库集群. 一.单机环境 ...

  3. 25.MYsql数据库管理

    MYsql数据库管理 目录 MYsql数据库管理 数据库基本操作 库和表 常用的数据类型 查看数据表结构 查看当前服务器的数据库 查看数据库中包含的表 查看表的结构 SQL语句 创建及删除数据库和表 ...

  4. javaer有福了,基于Web的mysql数据库管理工具TreeSoft发布了。

    基于Web的数据库管理工具TreeSoft数据库管理系统发布快3年了,版本不断更快速迭代开发中,QQ群也积累了300多位粉丝,虽然时不时也掉粉,但总体还是增加中.大家虽然捐赠不多,但是苍蝇再小也是肉啊 ...

  5. mysql数据库管理工具(navicat for mysql) 10.1.7 绿色中文版

    Navicat for MySQL:Navicat for MySQL 是一套专为 MySQL 设计的高性能数据库管理及开发工具.它可以用于任何版本 3.21 或以上的 MySQL 数据库服务器,并支 ...

  6. mysql数据库管理工具(navicat for mysql)

    Navicat Premium 是一个可多重连接的数据库管理工具,它可让你以单一程序同时连接到 MySQL.Oracle.PostgreSQL.SQLite 及 SQL Server 数据库,让管理不 ...

  7. 一个HelloWorld版的MySQL数据库管理器的设计与实现(源码)

    2011年,实习期间写了一个简单的数据库管理器. 今天,特意整理了下,分享给大家. 有兴趣的同学,可以下载源码,瞧瞧. 源码只有4个类:LoginGUI,DatabaseGUI,Record,MySQ ...

  8. mysql数据库管理、常用命令及函数(10.10 第十八天)

    数据库管理: MYSQL 轻量级数据库,适用于中小型企业,性能好,开源的(免费的) MSSQL 微软开发的,需要安装在NT系统中,不支持跨平台,适用于中大型企业 ACCESS 小巧方便,适用于小型企业 ...

  9. 数据库 Linux下的MySQL数据库管理

    数据库就是数据的集合. 关系数据库是一种特殊的数据库,他将数据组织城标,并表示为表之间的关系. 数据库系统往往是大型项目的核心数据内容,如银行的用户账户信息,腾讯QQ的用户账户信息.股市的各种交易信息 ...

  10. mysql数据库管理工具sqlyog在首选项里可以设置默认查询分页条数和字体,改写关键字大小写

    sqlyog设置一直习惯用sqlyog来管理mysql数据库,但有三个地方用得不是很爽:1.默认查询条数只有1000条经常需要勾选掉重新查询.2.自动替换关键字大小写,有时候字段名为关键字的搞成大写的 ...

随机推荐

  1. springboot+VUE(二)

    入element-ui cnpm install element-ui -S 执行后,会下载element-ui的包到本地,同时会将配置加入到package.json的依赖块中. 通过命令行可以将最新 ...

  2. 【C语言基础】什么是字节?

    字节就是存储数据的单位,并且是硬件所能访问的最小单位. 一个字节控制8位 int 类型为4个字节 long 类型为8个字节 char 类型为1个字节:Java中为两个字节

  3. 1. maven 手动添加jar包

    mvn install:install-file -Dfile=isc_sso_agent-1.0.jar -DgroupId=com.sgcc.isc -DartifactId=isc_sso_ag ...

  4. Oracle树形查询

    sql树形递归查询是数据库查询的一种特殊情形,也是组织结构.行政区划查询的一种最常用的的情形之一.下面对该种查询进行一些总结: start with子句: 递归的条件,需要注意的是如果with后面的值 ...

  5. CentOS 7设置yum仅仅下载rpm不安装总结

    前言 参考文章:https://linux.cn/article-7937-1.html 在参考文章的基础上进行总结. 使用download-only插件实现 首先我们可以使用downloadonly ...

  6. python之路:数据类型初识

    python开发之路:数据类型初识 数据类型非常重要.不过我这么说吧,他不重要我还讲个屁? 好,既然有人对数据类型不了解,我就讲一讲吧.反正这东西不需要什么python代码. 数据类型我讲的很死板.. ...

  7. [Tools] Wireshark Primer Tutorials

    介绍就不说了,安装也没必要讲,关于如何使用,网上的辣鸡文过多,视频又太冗余. 我推荐看下面有条理的入门教程. 界面说明:http://openmaniak.com/cn/wireshark_use.p ...

  8. Suse linux enterprise 11添加设置中文输入法的方法

    Suse中输入法的设置没有在控制中心中,而是在应用程序里默认会安装好的SCIM输入法设置里边添加. 打开SCIM输入法设置->输入法引擎->全局设置,有很多国家的输入法可以选择,想要的找到 ...

  9. 结对项目-WordCount

    结对作业: 成员:201631062115(me),201631062613(partner) 代码地址:https://gitee.com/ackary/WordCount 作业的链接地址:http ...

  10. django-rest-framework配置json web token

    安装jwt库,简单快速的生成我们所需要的token 1.安装djangorestframe pip install djangorestframe 2.在settings.py的INSTALLED_A ...