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,患者姓名,患者年龄
数据表管理
三大范式
第一范式(1NF): 确保每列都包含原子性数据,不可再分。每行都有唯一标识(主键)。
第二范式(2NF): 确保表符合1NF,所有非主键列完全依赖于主键,避免部分依赖。
第三范式(3NF): 确保表符合2NF,非主键列之间不存在传递依赖,消除冗余,提高数据一致性。
基本数据类型
优化原则
选择最小存储类型: 选择能够满足需求的最小数据类型,以节省存储空间。例如,使用
INT而不是BIGINT,除非需要更大范围的数值。避免不必要的精度: 选择适当的数值类型,不要过度精确。例如,如果只需要整数,就不需要使用浮点数。
选择合适的字符类型: 对于存储文本,选择适当长度的字符类型,避免使用过长的
VARCHAR。日期和时间类型的选择: 使用适当的日期和时间类型,避免使用过于复杂或不必要的类型。
避免使用过多的NULL: NULL值需要额外的存储空间,尽量设计表结构时避免过多的NULL,使用默认值或其他方法替代。
考虑性能和查询效率: 在选择数据类型时,也要考虑数据库引擎的性能和查询效率,有时使用合适的数据类型可以提高数据库操作的速度。
整形
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 解释一下参数࿱…...
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文件类型之间的差异。 什么是数字证书? 数字证书在电子通信中用作验证身份的密码机制。我们需要这些证书来建立安全的在线通信渠道,并确保数字数据的隐私、真实性和正确性。 数字证书包括主题(实体详细信息…...
【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.首先,确保你还没有执行 git push 操作。如果尚未推送到远程仓库,那么可以在本地进行修正。 2.添加遗漏的文件: git add <遗漏的文件路径>3.提交新修改或新增的文件,并将它与上一次提交合并(如果希望保持提交历…...
计算机网络名词解释
1.ICMP 网际控制报文 允许主机或路由器报告差错情况和提供有关异常情况的报告 2.RIP路由信息协议 是一种分布式的,基于距离向量的路由选择协议 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中的数据丢失了 解决办法: 首先在redis的安装目录下查找重启之前的dump.rdb文件,发现只有当天的一个dump.rdb文件,确认不是重启备份的文件 然后我就全盘找一下dump.rdb的备份文件,找到前一天的备份…...
敬请期待……
敬请期待…… 《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 前言 在训练神经网络的过程中需要用到很多的工具,最重要的是数据处理、可视化和GPU加速。本章主要介绍PyTorch在这些方面常用的工具模块,合理使用这些工具可以极大地提高编程效率。 由于内容较多&am…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...
C++实现分布式网络通信框架RPC(3)--rpc调用端
目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中,我们已经大致实现了rpc服务端的各项功能代…...
智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql
智慧工地管理云平台系统,智慧工地全套源码,java版智慧工地源码,支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求,提供“平台网络终端”的整体解决方案,提供劳务管理、视频管理、智能监测、绿色施工、安全管…...
STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
c#开发AI模型对话
AI模型 前面已经介绍了一般AI模型本地部署,直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型,但是目前国内可能使用不多,至少实践例子很少看见。开发训练模型就不介绍了&am…...
MFC 抛体运动模拟:常见问题解决与界面美化
在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...
【Android】Android 开发 ADB 常用指令
查看当前连接的设备 adb devices 连接设备 adb connect 设备IP 断开已连接的设备 adb disconnect 设备IP 安装应用 adb install 安装包的路径 卸载应用 adb uninstall 应用包名 查看已安装的应用包名 adb shell pm list packages 查看已安装的第三方应用包名 adb shell pm list…...
stm32wle5 lpuart DMA数据不接收
配置波特率9600时,需要使用外部低速晶振...
Unity中的transform.up
2025年6月8日,周日下午 在Unity中,transform.up是Transform组件的一个属性,表示游戏对象在世界空间中的“上”方向(Y轴正方向),且会随对象旋转动态变化。以下是关键点解析: 基本定义 transfor…...
