当前位置: 首页 > news >正文

MySQL之四大引擎、账号管理以及建库

目录

数据库存储引擎

简介

 存储引擎得查看

 support字段说明 

InnoDB

MyISAM

MEMORY

Archive

数据库管理

元数据库简介

元数据库分类 

相关操作

 MySQL库

 数据表管理

三大范式

基本数据类型

优化原则

整形

实数

字符串 

text&blob

日期类型 

选中标识符

数据库账号管理 

查询用户

查看常用的用户信息

权限操作

设置权限 

思维导图

 


数据库存储引擎

简介

是一种用于存储、管理和检索数据的软件程序,它负责在数据库中存储数据、执行查询和管理数据的存取。存储引擎通过将数据存储在磁盘上,并提供一组API来访问和操作数据,从而实现数据库的持久化存储和高效的数据查询功能。常见的数据库存储引擎有InnoDB、MyISAM、MongoDB、SQLite等。不同的存储引擎具有不同的特性和适用场景,可以根据实际需求选择合适的存储引擎来搭建数据库系统。

 存储引擎得查看

  命令:SHOW ENGINES

 support字段说明 

1.default为默认引擎

2.YES则可以使用

3.NO则不可以使用

InnoDB

1.使用场景:适合需要支持事务处理、具有高并发读写需求的数据库应用,如电子商务平台、社交网络应用等。

2.特点:支持事务处理、具有较高的并发性能、支持外键约束、具有崩溃恢复功能。

3.存储限制:64GB

4.事务支持:支持事务

MyISAM

1.使用场景:适合用于读写操作相对平衡的应用程序,如博客、新闻网站等。

2.特点:不支持事务,表级锁定,不支持外键约束,适合于静态和频繁读取的数据。

3.存储限制:256GB

4.事务支持:不支持事务

MEMORY

1.使用场景:MEMORY存储引擎适用于需要快速读取和操作临时数据的场景,如缓存、临时表等。

2.特点:MEMORY存储引擎将表的数据存储在内存中,因此读取速度非常快,适合于对读性能要求较高的应用。它支持事务处理,但是在服务器重启或崩溃时,所有的数据会丢失。MEMORY存储引擎不支持外键约束和崩溃恢复功能,同时对于数据的存储和访问没有进行磁盘IO操作,因此比其他存储引擎更适合处理小型数据集。

存储限制:取决于RAM(随机存储器)

事务支持:不支持事务

Archive

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

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

archive表比M有ISAM表要小大约75%,比支持事务处理的InnoDB表小大约83%

不支持索引(自增ID列除外)

数据库管理

元数据库简介

元数据库是指存储关于数据库结构和元数据的数据库。它记录了数据库中的表、列、约束、视图、索引等对象的定义和属性信息。元数据是描述数据的数据,用于描述数据库中的数据定义、结构和关系。元数据库通过存储和管理元数据信息,可以提供对数据库的管理、查询和分析。

元数据库的主要作用是支持数据库的管理和开发。它可以用于数据字典的管理,即记录和维护数据库中各个对象的定义、注释和属性等信息。元数据库还可用于数据库设计和开发工具,在开发过程中可以参考和操作元数据,提高数据库开发的效率和一致性。此外,元数据库还可以用于数据分析和数据仓库的构建,通过分析元数据信息,可以揭示数据之间的关系和特征,为数据分析和决策提供支持。

元数据库分类 

1.information_schema:信息数据库,保存MySQL所维护的其他数据库信息 .例如:数据库名,数据库的表,表栏的数据类型于访问权限等

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

3.performance_schema:用于MySQL的监控数据的存放

相关操作

数据库的增删改查及使用 

1.use数据库名

2.create database  if not exists 数据库名 degaut charset utf8 collate utf8_general_ci;

3.show database

3.drop database 数据库名

 MySQL库

权限相关的表

1.user表(用户层权限)

权限:his oa 物流

2.db表(数据库层权限)

权限:患者记录表, 门诊卡表,看病流程表

3.tables_priv表(表层权限)

权限:增加,删除,修改,查询,创表,删除表

4.columns_priv表(字段层权限)

权限:患者id,患者姓名,患者年龄

 数据表管理

三大范式

  1. 第一范式(1NF): 确保每列都包含原子性数据,不可再分。每行都有唯一标识(主键)。

  2. 第二范式(2NF): 确保表符合1NF,所有非主键列完全依赖于主键,避免部分依赖。

  3. 第三范式(3NF): 确保表符合2NF,非主键列之间不存在传递依赖,消除冗余,提高数据一致性。

基本数据类型

优化原则

  1. 选择最小存储类型: 选择能够满足需求的最小数据类型,以节省存储空间。例如,使用INT而不是BIGINT,除非需要更大范围的数值。

  2. 避免不必要的精度: 选择适当的数值类型,不要过度精确。例如,如果只需要整数,就不需要使用浮点数。

  3. 选择合适的字符类型: 对于存储文本,选择适当长度的字符类型,避免使用过长的VARCHAR

  4. 日期和时间类型的选择: 使用适当的日期和时间类型,避免使用过于复杂或不必要的类型。

  5. 避免使用过多的NULL: NULL值需要额外的存储空间,尽量设计表结构时避免过多的NULL,使用默认值或其他方法替代。

  6. 考虑性能和查询效率: 在选择数据类型时,也要考虑数据库引擎的性能和查询效率,有时使用合适的数据类型可以提高数据库操作的速度。

整形

1.tinyint8位(-128-127)

2.smallint 16位(-32768-32767)

3.mediumint24位(-8388608-8388607)

4.int 32位 大约正负21亿

5.bigint 64位

实数

float 4个字节

double 8个字节

decimal 最多允许65个字节

字符串 

1.char:定长,MySQL根据定义字符串长度一次分配足够的空间

通用场景:较短的字符串,且所有值接近同一长度

2.varchar:比定长类型节约空间

通用场景:字符串的最长长度比评估长度大很多,列的更新比较少

缺点:频繁修改,且字符串的长度变化大时,可能出现页分裂

text&blob

1.text存储字符数据:tinytext, smalltext,mediumtext,text,longtext

2.blob存储二进制数据:tinyblob,smallblob,mediumtext,text, longblod

日期类型 

datetime:精度:秒

与时区无关,8个字节存储空间

范围:1001-9999年 

timestamp:保存1970年1月1日午夜以来的秒数

占用4个字节存储空间

范围:1970-2038

与时区有关

默认为NOT NULL

通常尽量使用timestamp 

精度:秒

 data:yyyy-mm-dd

time:hh.mm.ss 

选中标识符

用来进行关联操作

在其他表中做为外键

整型通常是标识列的最好选则

相关的表中使用时间的数据类型 

尽量避免字符串作为标识列,尤其是随机生成的字符串

数据库账号管理 

查询用户

SELECT*FROM USER

 

查看常用的用户信息

select host user from user 

权限操作

设置权限 

1.授予特定数据库的所有表的SELECT权限

GRANT SELECT ON database_name.* TO 'username'@'hostname';

2.授予特定数据库的所有表的SELECT和INSERT权限

GRANT SELECT, INSERT ON database_name.* TO 'username'@'hostname';

3.授予特定表的SELECT和INSERT权限

GRANT SELECT, INSERT ON database_name.table_name TO 'username'@'hostname';

4.授予所有数据库的所有表的SELECT、INSERT和UPDATE权限

GRANT ALL PRIVILEGES ON *.* TO 'username'@'hostname';

5.撤销特定数据库的所有表的SELECT权限

REVOKE SELECT ON database_name.* FROM 'username'@'hostname';

6.撤销特定表的SELECT和INSERT权限

REVOKE SELECT, INSERT ON database_name.table_name FROM 'username'@'hostname';

7.授予登录和刷新权限

GRANT ALL PRIVILEGES ON *.* TO 'username'@'hostname' WITH GRANT OPTION;

8.限制特定IP地址的访问

GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'specific_ip_address';

9.授予所有数据库的所有表的权限,并设置密码

GRANT ALL PRIVILEGES ON *.* TO 'username'@'hostname' IDENTIFIED BY 'password';

10.更改已存在的用户的密码

ALTER USER 'username'@'hostname' IDENTIFIED BY 'new_password';

思维导图

相关文章:

MySQL之四大引擎、账号管理以及建库

目录 数据库存储引擎 简介 存储引擎得查看 support字段说明 InnoDB MyISAM MEMORY Archive 数据库管理 元数据库简介 元数据库分类 相关操作 MySQL库 数据表管理 三大范式 基本数据类型 优化原则 整形 实数 字符串 text&blob 日期类型 选中标识符 数…...

shell编程——查找局域网内存活主机

题目要求:写一个shell脚本,探测局域网内存活主机 首先,我们的思路是在循环中不断ping主机,然后根据ping的结果来判断主机是否存活 本题中ping语句如下: ping -c 3 -i 0.3 -W 1 192.168.1.1 解释一下参数&#xff1…...

python django 个人记账管理系统

python django 个人记账管理系统。 功能:登录,新用户注册,个人信息修改,收入,支出记录,收入记账管理,支出记账管理,收入,支出统计 技术:python django&…...

C#的Char 结构的方法之IsLetterOrDigit()

目录 一、Char 结构 二、Char.IsLetterOrDigit 方法 1.定义 2.重载 3.示例 4.IsLetterOrDigit(Char) 5.IsLetterOrDigit(String, Int32) 一、Char 结构方法 CompareTo(Char)将此实例与指定的 Char 对象进行比较,并指示此实例在排序顺序中是位于指定的 Char …...

配置Docker私有仓库

# 打开要修改的文件 vi /etc/docker/daemon.json # 添加内容: "insecure-registries":["http://自己服务器的ip地址:设置的端口号"] # 重加载 systemctl daemon-reload # 重启docker systemctl restart docker在自己设定的文件夹内使用DockerCo…...

计算机网络-动态路由

网络层协议:ip,ospf,rip,icmp共同组成网络层体系 ospf用于自治系统内部。 一个路由器或者网关需要能够支持多个不同的路由协议,以适应不同的网络环境。特别是在连接不同自治系统的边缘路由器或边界网关的情况下&#…...

光耀未来 第一届能源电子产业创新大赛太阳能光伏赛道决赛在宜宾举行

1月3日,第一届能源电子产业创新大赛太阳能光伏赛道决赛在宜宾盛大举行,本次比赛吸引了全国范围内的光伏行业顶尖人才和创新团队参与。 为深入贯彻《关于推动能源电子产业发展的指导意见》,推动我国能源电子产业升级,工业和信息化部…...

【小沐学NLP】Python实现TF-IDF算法(nltk、sklearn、jieba)

文章目录 1、简介1.1 TF1.2 IDF1.3 TF-IDF2.1 TF-IDF(sklearn)2.2 TF-IDF(nltk)2.3 TF-IDF(Jieba)2.4 TF-IDF(python) 结语 1、简介 TF-IDF(term frequency–inverse document frequency)是一种用于信息检索与数据挖掘的常用加权技术。TF是词频(Term Fr…...

.cer格式证书文件和 .pfx格式证书文件有什么区别?

这里我们将讨论.cer和.pfx文件类型之间的差异。 什么是数字证书? 数字证书在电子通信中用作验证身份的密码机制。我们需要这些证书来建立安全的在线通信渠道,并确保数字数据的隐私、真实性和正确性。 数字证书包括主题(实体详细信息&#xf…...

【docker实战】安装tomcat并连接mysql数据库

本节用docker来安装tomcat,并用这个tomcat连接我们上一节安装好的mysql数据库 一、拉取镜像 我们安装8.5.69版本 先搜索一下 [rootlocalhost ~]# docker search tomcat NAME DESCRIPTION …...

LeetCode 每日一题 Day 32 ||递归单调栈

2487. 从链表中移除节点 给你一个链表的头节点 head 。 移除每个右侧有一个更大数值的节点。 返回修改后链表的头节点 head 。 示例 1: 输入:head [5,2,13,3,8] 输出:[13,8] 解释:需要移除的节点是 5 ,2 和 3 。…...

【mars3d】FixedRoute的circle没有跟polyline贴着模型的解决方案

问题:【mars3d】官网的贴模型示例中,参考api文档增加了circle的配置,但是FixedRoute的circle没有跟polyline贴着模型 circle: { radius: 10, materialType: mars3d.MaterialType.CircleWave, materialOptions: { color: "#ffff00"…...

Day7 vitest 之 vitest配置第三版

项目目录 runner Type: VitestRunnerConstructor Default: node, 当运行test的时候 benchmark,当运行bench测试的时候 功能 自定义测试运行程序的路径。 要求 应与自定义库运行程序一起使用。 如果您只是运行测试,则可能不需要这个。它主要由library作者使用 …...

git补充上次提交

1.首先&#xff0c;确保你还没有执行 git push 操作。如果尚未推送到远程仓库&#xff0c;那么可以在本地进行修正。 2.添加遗漏的文件&#xff1a; git add <遗漏的文件路径>3.提交新修改或新增的文件&#xff0c;并将它与上一次提交合并&#xff08;如果希望保持提交历…...

计算机网络名词解释

1.ICMP 网际控制报文 允许主机或路由器报告差错情况和提供有关异常情况的报告 2.RIP路由信息协议 是一种分布式的&#xff0c;基于距离向量的路由选择协议 3.BGP 外部网关协议 是不同自治系统的路由器之间交换路由信息的协议 4.IGMP 网际管理协议 使用多播路由器知道多播…...

flink table view datastream互转

case class outer(f1:String,f2:Inner) case class outerV1(f1:String,f2:Inner,f3:Int) case class Inner(f3:String,f4:Int) 测试代码 package com.yy.table.convertimport org.apache.flink.streaming.api.scala.StreamExecutionEnvironment import org.apache.flink.tabl…...

redis重启后数据丢失问题解决(亲测好用)

redis修改密码重启后发现redis中的数据丢失了 解决办法&#xff1a; 首先在redis的安装目录下查找重启之前的dump.rdb文件&#xff0c;发现只有当天的一个dump.rdb文件&#xff0c;确认不是重启备份的文件 然后我就全盘找一下dump.rdb的备份文件&#xff0c;找到前一天的备份…...

敬请期待……

敬请期待…… 《Python百宝箱》 序号文章目录直达链接表白系列1无法拒绝的表白界面https://want595.blog.csdn.net/article/details/1347448942满屏飘字表白代码https://want595.blog.csdn.net/article/details/1350373883无限弹窗表白代码...

3.10 Android eBPF HelloWorld调试(四)

一,读取eBPF map的android应用程序示例 1.1 C++源码及源码解读 /system/memory/bpfmapparsed/hello_world_map_parser.cpp //基于aosp android12#define LOG_TAG "BPF_MAP_PARSER"#include <log/log.h> #include <stdlib.h> #include <unistd.h&g…...

PyTorch常用工具(1)数据处理

文章目录 前言1 数据处理1.1 Dataset1.2 DataLoader 前言 在训练神经网络的过程中需要用到很多的工具&#xff0c;最重要的是数据处理、可视化和GPU加速。本章主要介绍PyTorch在这些方面常用的工具模块&#xff0c;合理使用这些工具可以极大地提高编程效率。 由于内容较多&am…...

docker-简单说说cgroup

前面我们简单说了下namespace&#xff0c; 现在我们来接着简单说说cgroup。通过docker-简单说说namespace文章我们知道&#xff1a; namespace 是为了隔离进程组之间的资源&#xff0c;那cgroup就是为了对进程组的监控和限制资源。Cgroup 可以限制进程组使用的资源数量和分配&a…...

印象笔记04: 如何将印象笔记超级会员价值最大化利用?

印象笔记04&#xff1a; 如何将印象笔记超级会员价值最大化利用&#xff1f; 为什么有这个问题 我不知道有没有人一开始接触印象笔记觉得非常好。奈何只能两个设备同步&#xff0c;局限太多。而会员活动比较优惠——就开了会员。而且我开了十年……。只能开发一下看看怎么最大…...

我的JDK动态代理流程

我的JDK动态代理流程 我梳理的动态代理流程大约是&#xff1a; 如果每一个框架都有自己的BPP&#xff0c;且自己的BPP中都有自己的wrapIfNecessory&#xff0c;那样可能就是一个BPP一个代理类。但通常应该都是各自的框架以提供 Advisior&#xff08;切面&#xff09;的方式&am…...

uniapp Vue3 面包屑导航 带动态样式

上干货 <template><view class"bei"><view class"container"><view class"indicator"></view><!-- 遍历路由列表 --><view v-for"(item, index) in routes" :key"index" :class&quo…...

openGauss学习笔记-174 openGauss 数据库运维-备份与恢复-导入数据-管理并发写入操作

文章目录 openGauss学习笔记-174 openGauss 数据库运维-备份与恢复-导入数据-管理并发写入操作174.1 事务隔离说明174.2 写入和读写操作174.3 并发写入事务的潜在死锁情况 openGauss学习笔记-174 openGauss 数据库运维-备份与恢复-导入数据-管理并发写入操作 174.1 事务隔离说…...

数据分析可被划分为4个重要的类别

1、描述型&#xff1a;发生了什么&#xff1f; 全面、准确、实时的数据有效的可视化 2、诊断型&#xff1a;为什么会发生&#xff1f; 能够深入了解问题的根本原因隔离所有混淆信息的能力 3、预测型&#xff1a;可能发生什么&#xff1f; 通过历史数据来预测特定的结果通过…...

爆火小游戏敲木鱼流量主小程序源码系统+完整的代码包以及安装搭建教程

随着移动互联网的快速发展&#xff0c;小程序已成为一种新的应用形态&#xff0c;深入到人们生活的方方面面。其中&#xff0c;小游戏由于其简单、有趣的特点&#xff0c;吸引了大量用户&#xff0c;也成为了许多开发者的首选。敲木鱼小游戏&#xff0c;以其独特的玩法和轻松的…...

Invoke和BeginInvoke的区别

Invoke和BeginInvoke的区别 本文导读&#xff1a;BeginInvoke() 调用时&#xff0c;当前线程会启用线程池中的某个线程来执行此方法&#xff0c;当前线程不被阻塞&#xff0c;继续运行后面的代码&#xff0c; Invoke() 调用时&#xff0c;会阻塞当前线程&#xff0c;等到 Invo…...

3 分钟为英语学习神器 Anki 部署一个专属同步服务器

Anki 介绍 Anki 是一款基于间隔重复&#xff08;Spaced Repetition&#xff09;原理的学习软件&#xff0c;想象一下&#xff0c;你的大脑就像是一个需要定期维护的精密仪器。间隔重复就好比是一种精准的维护计划&#xff0c;它通过在最佳时刻复习信息&#xff0c;来确保知识在…...

<HarmonyOS第一课>应用程序框架

【习题】应用程序框架 目录 判断题 单选题 多选题 判断题 1. 一个应用只能有一个UIAbility。错误 正确(True)错误(False) 2. 创建的Empty Ability模板工程&#xff0c;初始会生成一个UIAbility文件。正确 正确(True)错误(False) 3. 每调用一次router.pushUrl()方法&…...

怎么用ps做网站banner/百度邮箱注册入口

PHP计算当前时间之后(之前)的时间PHP中有一个非常厉害的函数&#xff0c;strtotime()函数&#xff0c;这个函数有一个异常厉害的使用方法&#xff0c;手册上说的有&#xff0c;但是估计在实际应用中能够想到的人不多。我为了计算出当前时间N天后的日期时&#xff0c;也是自己写…...

南通个人网站制作/网络营销环境宏观微观分析

周数 专业学习目标 专业学习时间 新增代码数量 博客发表量 人文方面的学习 知识技能总结 6 栈、链栈、栈队&#xff0c;网页设计表格 30小时 103 2 《世界是数字的》 栈的输入是从栈顶开始&#xff1b;网页表格的设置可以通过代码更快的建成。 转载于:https://www…...

延吉网站建设公司/萧山seo

前言&#xff1a; 本文是前一片文章《深入浅出之正则表达式&#xff08;一&#xff09;》的续篇&#xff0c;在本文中讲述了正则表达式中的组与向后引用&#xff0c;先前向后查看&#xff0c;条件测试&#xff0c;单词边界&#xff0c;选择符等表达式及例子&#xff0c;并…...

刘涛做的婴儿玩具网站/线下推广怎么做

为什么80%的码农都做不了架构师&#xff1f;>>> MySQL安装文件分为两种&#xff0c;一种是msi格式的&#xff0c;一种是zip格式的。如果是msi格式的可以直接点击安装&#xff0c;按照它给出的安装提示进行安装&#xff08;相信大家的英文可以看懂英文提示&#xff…...

用vs2012做网站首页/站长工具忘忧草

iOS 10正式版定于9月13日推送&#xff0c;目前GM版已经可以下载。现在&#xff0c;苹果正式关闭了iOS 9.3.4的认证&#xff0c;这意味着iOS 9.3.5将不能再降级。目前iOS 9.3.4并不能越狱&#xff08;需9.3.3以下&#xff09;&#xff0c;而且存在所谓iOS史上最大的一个远程执行…...

台湾做网站/百度指数在线查询

转载于:https://www.cnblogs.com/zhaoqingqing/p/3407390.html...