慈溪网站建设报价,网络营销公司哪家不错,关于做门户网站专栏内容通知,百度一下主页官网目录 数据库存储引擎
简介 存储引擎得查看 support字段说明
InnoDB
MyISAM
MEMORY
Archive
数据库管理
元数据库简介
元数据库分类
相关操作 MySQL库 数据表管理
三大范式
基本数据类型
优化原则
整形
实数
字符串
textblob
日期类型
选中标识符
数…目录 数据库存储引擎
简介 存储引擎得查看 support字段说明
InnoDB
MyISAM
MEMORY
Archive
数据库管理
元数据库简介
元数据库分类
相关操作 MySQL库 数据表管理
三大范式
基本数据类型
优化原则
整形
实数
字符串
textblob
日期类型
选中标识符
数据库账号管理
查询用户
查看常用的用户信息
权限操作
设置权限
思维导图 数据库存储引擎
简介 是一种用于存储、管理和检索数据的软件程序它负责在数据库中存储数据、执行查询和管理数据的存取。存储引擎通过将数据存储在磁盘上并提供一组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:比定长类型节约空间 通用场景:字符串的最长长度比评估长度大很多,列的更新比较少 缺点:频繁修改,且字符串的长度变化大时,可能出现页分裂 textblob 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 usernamehostname; 2.授予特定数据库的所有表的SELECT和INSERT权限 GRANT SELECT, INSERT ON database_name.* TO usernamehostname; 3.授予特定表的SELECT和INSERT权限 GRANT SELECT, INSERT ON database_name.table_name TO usernamehostname; 4.授予所有数据库的所有表的SELECT、INSERT和UPDATE权限 GRANT ALL PRIVILEGES ON *.* TO usernamehostname; 5.撤销特定数据库的所有表的SELECT权限 REVOKE SELECT ON database_name.* FROM usernamehostname; 6.撤销特定表的SELECT和INSERT权限 REVOKE SELECT, INSERT ON database_name.table_name FROM usernamehostname; 7.授予登录和刷新权限 GRANT ALL PRIVILEGES ON *.* TO usernamehostname WITH GRANT OPTION; 8.限制特定IP地址的访问 GRANT ALL PRIVILEGES ON database_name.* TO usernamespecific_ip_address; 9.授予所有数据库的所有表的权限并设置密码 GRANT ALL PRIVILEGES ON *.* TO usernamehostname IDENTIFIED BY password; 10.更改已存在的用户的密码 ALTER USER usernamehostname IDENTIFIED BY new_password; 思维导图