Mysql的四大引擎,账号管理,数据库的建立

news2024/9/24 11:25:47
    • 数据库存储引擎查看

      • Support字段说明

        • default的为默认引擎

        • YES表示可以使用

        • NO表示不能使用

      • 命令

        • SHOW ENGINES

    • 四大引擎

      • MEMORY

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

        • 特点

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

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

          • 事务支持:不支持事务

      • MylSAM

        • 特点

          • 强调快熟读取操作

            • 表锁

          • 存储限制:256TG

          • 事务支持:不支持事务

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

      • InnoDB

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

        • 特点

          • 修改快,支持事务

            • 行锁

          • 存储限制:64TG

          • 事务支持:支持事务

      • ARCHIVE

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

        • 特点

          • 只允许插入和查询,不允许修改和删除,压缩存储,节约空间,可以实现高效率的查询

          • archive表必My了SAM表要小75%,比支持事务处理的innoDB表小大约80%

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

    • 数据库管理

      • 元数据库简介

        • 记录Mysql自身数据的数据库

      • 元数据库的分类

        • information_schema

          • 信息数据库,保存mysql所维护的其他数据库信息。列如:数据库名,数据库的表,表栏的数据类型和访问权限等

        • mysql

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

        • performance_schema

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

      • 相关操作

        • 数据库的增删改查及作用

          • use数据库名

          • create database if not exisfs 数据库名 default charse utf8 collate utf8_feneral_ci

            • 设置了字符集编码以及不区分大小写

          • show database;

          • deop database 数据库名;

      • MySQL库

        • 权限相关

          • 1.user表(用户层权限)

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

          • 3.tables_priv(表层权限)

          • 4.columns_priv(字段层权限)

    • 数据表管理

      • 三大范式

        • 第一范式:列不可再分(原子性)

          • 列如:湖南省长沙市岳麓区浪琴湾清水21栋

        • 第二范式:主键约束

          • 列如:订单项表设计:id,单价,数量,小计

        • 第三范式:外键约束

          • 列如:患者id,患者姓名同时存在于一张关联表中

      • 优化原则

        • 更小通常更好

          • 更小的磁盘空间,内存,cpu换成

          • 更少的cpu周期

          • 更小通常更好

        • 简单就好

          • 整型比字符串操作代价更小

          • 用时间类型表示日期(date,datetime等)而不用字符串

        • 尽量避免null

          • null为列的默认值,但除非确实需要,尽量避免使用null

          • 尽量指定列为NOT NULL,特别是需要建索引的列

          • 查询中包括有null的类,MySQL更难优化

            • 不利于使用索引

            • 索引统计更复杂

            • 值比较更复杂

          • 用整型值而不是字符串表示IP地址

            • INET_ATON()

            • INET_NTOA()

      • 分类

        • 整数

          • tinyint 8位 (-128~127)

          • smallint 16位 (-32768~32767)

          • mediumint 24位 (~8388608~8388607)

          • int 32位 大约正负212亿

          • bigint 64 位

        • 实数(带有小数点)

          • float 4个字节

          • double 8个字节

          • decimal 最多允许65个数字

        • 字符串

          • char

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

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

          • varchar

            • 比定长类型节约空间

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

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

        • text&bolb

          • text存储字符数据

            • tinytext

            • smalltext

            • mediumtext

            • text

            • longtext

          • blob存储二进制数据

            • tinybolb

            • smallbolb

            • mediumbolb

            • longbolb

        • 日期时间

          • datetime

            • 精度:秒

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

            • 范围:1001——99999年

          • timestamp

            • 保存1970年1月1日午夜一以来的秒数

            • 占用4个字节存储空间

            • 范围:1970年-2038年

            • 与时区有关

            • 默认为not null

            • 通常尽量适用timestamp

            • 精度:秒

          • date

            • yyyy-MM-dd

            • HH:mm:ss

          • 选择标识符

            • 用来进行关联操作

            • 在其他表中周围外键

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

            • 相关的表中使用相同的数据类型

            • 尽量避免字符串作为标识列,尤其是随生成的字符串,(如:UUID)导致insert与select都很慢

              • 插入值被随机写到索引的不同位置,insert很慢,导致容易也分裂,磁盘随机读取

              • 逻辑上相邻得到行被分布在磁盘和内纯的不同地方,select慢

              • 是MySQL查询缓存失效

              • 如果需要存储UUID,则应将“-”去除

    • 数据库账号管理

      • 相同

        • 查询用户

          • SELECT * from User

        • 查看用户常用信息

          • select host,user from User,

        • 删除用户

          • dropr user is

      • 权限操作(Grant)

        • grant SELECT on db_xiaoli.t_p1_user to zs@'% grant UPDATE on db_xiaoli.t_p1_user to zs@'% grant SELECT on db_xiaoli.* to zs@'% grant ALL on db_xiaoli.t_p1_user to zs@'%' revoke all on db_xiaoli.t_p1_user from zs@'%' revoke SELECT,UPDATE ON 'db_xiaoli','t_p1)user' TO 'zs'@'%'

        • show grants for 'zs'@'%' 查看用户权限

      • 不同

        • 5.7

          • 创建用户并设置登录密码

            • crate user Is identified by ‘123456’;

          • 修改用户密码

            • 命令:set password for 用户名=password(“新密码”); set password for zs=password(‘123456’);

        • 8.0

          • 创建用户并设置登录密码

            • crate user 用户名; create User ls;

          • 修改用户密码

            • ALTER USER 用户 IDENTIFIED BY ‘新密码’ ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

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

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

相关文章

专访 | STIF2023第四届国际科创节访第七在线CEO赵嘉程

12月15日,在STIF2023第四届国际科创节暨数服会上,第七在线获得年度数智化创新典范奖,第七在线CEO赵嘉程在颁奖典礼现场接受了媒体专访。 主持人:赵总,您好,欢迎您接受我们的专访,首先我们特别想…

Uniapp使用wx.getFuzzyLocation()方法,没有超过日调用次数,报错:“此key每日调用已达到上限”

前言: 最近在进行一个小程序项目开发的时候,使用wx.getFuzzyLocation()方法,没有超过日调用次数,但是却出现了报错:“此key每日调用已达到上限”。 解决方案: 打开腾讯位置服务 - 立足生态,连…

macos下php 5.6 7.0 7.4 8.0 8.3 8.4全版本PHP开发环境安装方法

在macos中如果使用brew 官方默认的core tap 只可以安装官方最新的稳定版PHP, 如果想要安装 php 5.6 或者 php 8.4版本的PHP就需要使用第三方的tap , 这里分享一个比较全面的brew tap shivammathur/php 这个tap里面包含了从php5.6到最新版php8.4的所有可用最新版本PHP, 而且是同…

全面解析 Postman 网页版的使用,提升你的 API 调试技能!

使用Postman网页版详细介绍 Postman是一款流行的API开发工具,可以帮助开发者优化工作流程。除了客户端,Postman还支持网页版访问,让用户能够从任何网页浏览器中访问该工具。在本篇文章中,我们将详细介绍如何使用Postman的网页版。…

Python for与while循环的介绍和对应练习题的巩固

for循环 重复执行同一段代码就是循环 循环列表 for val in list_name: list_num [1,2,3,4,5,6,7,8,9] for i in list_num:print(i)代码执行顺序 从上往下依次执行 遍历 通过某种顺序把某种集合所有元素都访问一遍 list_food{"火锅","烧烤","张…

SQL必知必会笔记(5~8章)

第五章 高级数据过滤 本章示例表为transcript成绩表,数据库软件选用SQLITE3,具体如下 1、高级过滤也是通过where条件子句实现,辅以and、or、in、not进行实现 2、and语句:and连接的多个条件为与的关系,例如 SELECT * FR…

进阶学习——Linux系统磁盘管理与文件系统

目录 一、磁盘 1.认识磁盘 2.分区 2.1MBR(Master Boot Record)——主引导记录 2.2GPT分区 2.3磁盘分区结构 3.文件系统 3.1文件系统组成 3.1.1XFS ext4 3.1.2swap 3.1.3FAT16、FAT32 3.1.4NTFS(xfs) 3.1.5EXT4 3…

uniapp中组件库丰富的Switch 开关选择器使用方法

目录 #平台差异说明 #基础使用 #加载中 #禁用switch #自定义尺寸 #自定义颜色 #自定义样式 #异步控制 API #Switch Props #Switch Event 选择开关用于在打开和关闭状态之间进行切换。 #平台差异说明 App(vue)App(nvue&#xff0…

【每日一题】466. 统计重复个数-2024.1.2

题目: 466. 统计重复个数 定义 str [s, n] 表示 str 由 n 个字符串 s 连接构成。 例如,str ["abc", 3] "abcabcabc" 。 如果可以从 s2 中删除某些字符使其变为 s1,则称字符串 s1 可以从字符串 s2 获得。 例如&…

JavaSE语法之十五:异常(超全!!!)

文章目录 一、异常的概念与体系1. 异常的概念2. 异常的体系结构3. 异常的分类 二、异常的处理方式1. 防御式编程(1)LBYL 事前防御型(2)EAFP 时候认错型 2. 异常的抛出3. 异常的捕获(1)异常声明的 throws&am…

ASP.Net实现海鲜添加(三层架构,异常处理)

演示功能: 点击启动生成页面 点击添加跳转新界面 此处设置文本框多行 点击Button添加 步骤: 1、建文件 下图是三层架构列表,Models里面有模拟数据库中列的类,DAL中有DBHelper和service,BLL中有BllManager文件用于ui界面直接调用…

【愚公系列】2023年12月 HarmonyOS应用开发者高级认证(完美答案)

🏆 作者简介,愚公搬代码 🏆《头衔》:华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主&#xf…

MFC编程技巧与范例详解01

目录 1、MFC概述 (1)、MFC为什么不用C语言使用C (2)、MFC的开发模型文档-视图模型 (3)、一个完善的MFC程序应该包括 (4)、MFC常用的类 2、MFC的特性 (1&#xff09…

AndroidStudio导入程序、项目(教程)

目录 1. 首先解压压缩包,转为文件夹 2. 打开解压好的项目文件夹,删除.gradle和.idea这两个文件 3. 修改bulid.gradle文件,将gradle的版本型号改成自己的 (1) 传统结构 (2) 简洁结构 4. 打开android stdio软件,导入已经修改好…

test ui-02-UI 测试组件之 Appium 入门介绍

Appium简介 正如主页所述,Appium的目标是支持许多不同平台(移动、Web、桌面等)的UI自动化。 不仅如此,它还旨在支持用不同语言(JS、Java、Python等)编写的自动化代码。 将所有这些功能组合到一个程序中是…

LabVIEW开发滚筒洗衣机动态监测系统

LabVIEW软件在滚筒洗衣机的动态监测和分析中扮演着关键角色。本案例展示了如何利用LabVIEW开发的系统来优化洗衣机的性能和可靠性。 首先,在建立洗衣机的动力学模型基础上,利用LabVIEW进行了关键零部件的动态优化设计。通过LabVIEW的高级计算和模拟功能…

华清远见作业第二十天——IO(第三天)

思维导图&#xff1a; 使用标准IO完成两个文件的拷贝 代码&#xff1a; #include<stdio.h> #include<string.h> #include<stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> int main(int argc, const char *…

【C++】STL 容器 - multiset 容器 ( std::multiset 容器简介 | std::multiset 容器 常用操作 api 简介 )

文章目录 一、mulset 容器1、std::multiset 容器简介2、代码示例 - multiset 容器 二、std::multiset 容器 常用操作 api 简介1、常用 api 简介2、代码示例 - multiset 容器常用操作 一、mulset 容器 1、std::multiset 容器简介 在 C 语言 的 标准模板库 ( STL , Standard Temp…

【LeetCode每日一题】1154. 一年中的第几天(直接计算+调用库函数)

2023-12-31 文章目录 [1154. 一年中的第几天](https://leetcode.cn/problems/day-of-the-year/)方法一&#xff1a;直接计算思路&#xff1a; 方法二&#xff1a;调用库函数思路 1154. 一年中的第几天 方法一&#xff1a;直接计算 思路&#xff1a; 1.根据所给的字符串&#…

如何使用凹凸贴图和位移贴图制作逼真的模型

在线工具推荐&#xff1a; 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 本教程将解释如何应用这些效应背后的理论。在以后的教程中&#xff0…