服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - Mysql账号管理与引擎相关功能实现流程

Mysql账号管理与引擎相关功能实现流程

2022-11-25 16:17顾轻舟。 Mysql

Mysql中的每一种技术都使用不同的存储机制、索引技巧、锁定水平、并且最终提供广泛的不同功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善应用的整体功能。这些不同的技术以及配套的相关功能在

mysql元数据库

什么是元数据库:记录mysql自身数据的数据库

有哪些数据库:information_schema(信息数据库),保存mysql所维护的其他数据库信息,例如:数据库名,数据库的表,表栏的数据类型与访问权限等

mysql(核心数据库),主要负责存储数据库的用户、权限设置、关键字等mysql自己需要使用的控制和管理信息

performance_schema 用于mysql的监控数据的存放

切换数据库:use 数据库名 如:use mysql

数据库账号管理

1、创建账户

命名格式:create user 用户名 identified by ‘密码’

说明:identified by会将纯文本密码加密作为散列值存储

示例:create usertestidentified by ‘123456’;

2、查看账户

命令格式:select host,user,password from user;

host列说明:% (匹配所有主机)

localhost (localhost不会被解析成IP地址,直接通过UNIXsocket连接;同一主机通讯,不经过网络协议栈,不用打包拆包,计算校验和、维护序列号应答等。只是将应用层数据从一个进程拷贝到另一个进程)

127.0.0.1 (会通过TCP/IP协议连接,并且只能在本机访问)

::1 (::1就是兼容支持ipv6的,表示同ipv4的127.0.0.1)

3、删除账户

命令格式:dropuser用户名

示例:dropusertest;

注意:一般不用,用时需谨慎

4、修改密码

命令格式

set password for 用户名=password('新密码')

示例:

?
1
set password fortest=password('123456');

5、刷新配置

命令格式:flushprivileges

6、设置权限

命令格式:grant privileges on databasename.tablename to username@'host'

  • privileges:指定select,update等权限,全部权限使用all
  • databasename: 指定数据库,所有数据库请使用*
  • tablename: 指定数据表,所有表请使用*
  • username: 需要赋权的用户名,@带的是Host,表示赋权操作针对那些链接,详情查看【host列说明】

使用示例

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//将bookshop数据库中的t_book表的selectupdate权限赋予test用户,并且不对ip地址限制
grant select, update on bookshop.`t_book` TO test@'%';
//一般用于赋予管理员最高权限,谨慎使用
grant all on *.* to dba@'localhost'
//以192.168.0开头的账户名deveoper用户针对testdb数据库赋予创建视图的权限
grant create view on testdb.* to developer@'192.168.0.%';
//以192.168.0开头的账户名deveoper用户针对testdb数据库赋予查看视图的权限
grant show   view on testdb.* to developer@'192.168.0.%'
//以192.168.0开头的账户名deveoper用户针对testdb数据库赋予创建索引的权限
grant index on testdb.* to developer@'192.168.0.%';
//以192.168.0开头的账户名deveoper用户针对testdb数据库赋予操作存储过程与函数的权限
//以192.168.0开头的账户名deveoper用户针对testdb数据库赋予创建删除存储过程与函数的权限
grant create routine on testdb.* to developer@'192.168.0.%'
grant alter  routine on testdb.* to developer@'192.168.0.%';

授权用户可以将拥有的权限再赋予其他用户

命令格式:

grant privileges on databasename.tablename to username@'host' with grant option

示例:

?
1
grant select on testdb.* to dba@localhost with grant option

说明:一般不用,建议与数据库管理员(DBA)统一管理

7、查看权限

show grants:查看当前用户(自己)权限

show grants for dba@localhost;

查看其他 MySQL 用户权限

8、撤销权限

命令格式:

revoke privileges on databasename.tablename from username@'host'

示例:

?
1
revoke update on bookshop.t_book from test@'%';//收回test用户对于bookshop库中t_book表的update权限(ip不限)

mysql引擎

什么是数据库引擎?

数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据, 不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以获得特定的功能

查看数据引擎

命令:show engines

Support字段说明:

  • DEFAULT的为默认的引擎
  • 为YES表示可以使用
  • 为NO表示不能使用

常用的一些引擎

1、MyISAM引擎

MYISAM强调了快速读取操作

使用场景: 大量查询,很少修改的场景

存储限制:256T

事务支持:不支持事务

2、memory引擎

所有的数据都保存在内存中,一旦服务器重启,所有Memory存储引擎的表数据会消失但是表结构会保存下来

使用场景:由于易失性,可以用于存储在分析中产生的中间表

存储限制:取决与RAM

事务支持:不支持事务

3、InnoDB引擎

后者修改快,支持事务

使用场景:一般事务性,均使用该引擎,用途最广,如果把握不准使用何种引擎,就使用该引擎

存储限制:64TG

事务支持:支持事务

4、Archive引擎

只允许插入和查询,不允许修改和删除,压缩存储,节约空间,可以实现高并发的插入,支持在自增id上建立索引

使用场景:在日志和数据采集的时候可以使用

特点:

  • Archive表比MyISAM表要小大约75%,比支持事务处理的InnoDB表小大约83%
  • 不支持索引(自增id列除外)
  • 支持insert,select操作,但不支持delete,update操作

到此这篇关于Mysql账号管理与引擎相关功能实现流程的文章就介绍到这了,更多相关Mysql账号管理内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/qq_64001795/article/details/125938104

延伸 · 阅读

精彩推荐
  • Mysqlmysql 5.7 zip archive版本安装教程

    mysql 5.7 zip archive版本安装教程

    这篇文章主要为大家详细介绍了mysql 5.7 zip archive版本安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    __Mzzz5092019-06-23
  • MysqlMySql官方手册学习笔记1 MySql简单上手

    MySql官方手册学习笔记1 MySql简单上手

    这是我学习MySql 5.1时做的一些整理与笔记,希望能理一理自己学到的东西,如果能有助于各位同道学习MySql那就更是意外之喜了,呵呵 ...

    MYSQL教程网3172019-12-08
  • MysqlMySQL复合索引的深入探究

    MySQL复合索引的深入探究

    这篇文章主要给大家介绍了关于MySQL复合索引的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋...

    gegeman9602021-04-09
  • Mysql简述MySQL分片中快速数据迁移

    简述MySQL分片中快速数据迁移

    这篇文章主要介绍了MySQL分片中快速数据迁移的相关资料,需要的朋友可以参考下 ...

    MRR5352020-06-02
  • MysqlMySQL错误Forcing close of thread的两种解决方法

    MySQL错误Forcing close of thread的两种解决方法

    这篇文章主要介绍了MySQL错误Forcing close of thread的两种解决方法,需要的朋友可以参考下 ...

    MYSQL教程网9112020-04-24
  • Mysql为什么Mysql 数据库表中有索引还是查询慢

    为什么Mysql 数据库表中有索引还是查询慢

    这篇文章主要介绍了为什么Mysql数据库表中有索引还是查询慢,以 user_info 这张表来作为分析的基础,在 user_info 这张表上,我们分别创建了idx_name以及idx_ph...

    编程学习网10162022-10-28
  • MysqlMySQL命令行下18个常用命令

    MySQL命令行下18个常用命令

    在日常的网站维护和MYSQL数据库管理中,会用到非常多的MYSQL命令,下面给大家介绍18个管理MYSQL数据库时最常使用的命令 ...

    wdc2522020-08-27
  • Mysqlxtrabackup备份还原MySQL数据库

    xtrabackup备份还原MySQL数据库

    这篇文章主要为大家详细介绍了xtrabackup备份还原MySQL数据库的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    MSSQL1232722020-07-31