2026/1/3 17:47:39
网站建设
项目流程
php做网站用html做吗,wordpress怎么做相关相似文章链接,美丽乡村 村级网站建设,东阳市住房与城乡建设局网站数据库
1、什么是数据库
数据库#xff08;Database#xff09;是按照数据结构来组织、存储和管理数据的仓库。 每个数据库都有一个或多个不同的 API 用于创建#xff0c;访问#xff0c;管理#xff0c;搜索和复制所保存的数据。 我们也可以将数据存储在文件中#xf…数据库1、什么是数据库数据库Database是按照数据结构来组织、存储和管理数据的仓库。每个数据库都有一个或多个不同的 API 用于创建访问管理搜索和复制所保存的数据。我们也可以将数据存储在文件中但是在文件中读写数据速度相对较慢。所以现在我们使用关系型数据库管理系统RDBMS来存储和管理大数据量。所谓的关系型数据库是建立在关系模型基础上的数据库借助于集合代数等数学概念和方法来处理数据库中的数据。2、RDBMS 术语数据库Database存储关联数据的容器一个 RDBMS 可管理多个数据库表Table数据库的基本存储单元由行和列组成用于存储同一类实体数据行Row表中的一条数据记录代表一个实体的完整信息列Column表中的一个属性字段所有行共享相同的列定义字段类型Data Type列的数据类型约束限制存储的数据格式主键Primary Key, PK唯一标识表中每行的列 / 列组合非空且唯一外键Foreign Key, FK表中指向另一张表主键的列用于维护表间关联关系索引Index对表中一列 / 多列的值进行排序的结构加速查询3、数据库分类3.1 关系型数据库mysql (主从) sql server oracle prostql关系型数据库关系数据库的存储结构是二维平面表格表里边存放的是一行一行的记录行一条记录信息列一个字段属性mysql小型 oracle(大型) sql server(微软)场景银行 淘宝 12306 大麦 美团事务四大特性ACID1)持久性 永久性2)一致性: 事务执行前后数据是一直3)原子性要么都成功要么都失败4)隔离性并发多个事务之间互不干扰几乎所有面向用户、有业务交互、需要持久化结构化存储数据的应用app都回产生数据。** 3.2 非关系型数据库**redis mongDB3.3 键值对数据库etcd json es(elk)3.4 缓存数据库4.数据类型*1)数值型int 整数类型 1.1.1float 浮点数2)字符串char 英文varchar 可变长英文nchar 中文nvarchar 可变长中文text 文本3)日期和时间date 日期年月日time 时间时 分 秒datetime年月日时 分 秒year 年4)特殊json 存储json格式的数据5.MYSQLMySQL 是一款开源的关系型数据库管理系统RDBMS基于 SQL结构化查询语言实现数据的存储、管理和查询由瑞典 MySQL AB 公司开发现归 Oracle 公司所有是目前全球最流行的开源数据库之一广泛应用于 Web 应用、中小企业系统、云原生场景等。开源 免费的 多线程 多用户 可靠 c/s 保证数据的一致性information_schema 信息查询数据库提供mysql服务器元数据 表的存储引擎 数据量mysql存放服务器的核心系统信息用户账号、密码、权限、存储引擎、事件、函数performance_schema 性能监控库监控服务器的运行性能、资源使用情况、事件执行情况用于调优、故障排查sys视图 select * from sys.slow.logSQL语言 T-sqlDCL数据库控制语言grant 授权 revoke撤销 commit提交 rollback回滚DDL数据库定义语言create创建 drop删除 alter 修改表的结构 数据定义语言DQL数据库查询语言select查找DML数据库操纵语言insert插入 update更新 delete删除create database qq;create table 表名name char(20) not null ,id int(48),age int(16),专业 nvarchar(50),primary key (name)drop table 表名alter table 表名 add column 列名 char(10);insert into 表名 values(‘xl’,‘1234’,‘18’,‘云计算’)update 表名 set age16 where name‘xl’;select * from 表名 where namexlselect 班级,avg(成绩) from qq group by 班级 having avg(成绩) 90delete from 表名 where name‘xl’;group by 分组order by 排序 desc降序 asc升序聚合函数sum avg count()统计select distinct 专业 from qq; 去重模糊查询find / -name *.confselect * from qq where 成绩 like ‘8%’; 模糊select * from qq where 年龄 in (16,18); 范围权限管理grant 权限 on 数据库.表名 to 用户 grant…torevoke 权限 on 数据库.表名 from 用户 revoke…fromshow grants for ‘用户名’‘IP/网段/localhost’where与having的区别where group by having索引目录作用加快对表中记录的查找或排序优化查询速度主键不能为空唯一性 外键 多表链接功能逻辑分类1.主键索引2.唯一索引nullunique (0-100)约束 int()3.普通索引4.组合索引数据结构分类1.B树索引2.哈斯索引3.全文索引4.R树索引事务的特性AICD原子性持久性一致性隔离性锁机制Locking和多版本并发控制MVCC隔离的核心避免 脏读 幻读 不可重复读事务隔离级别的实现机制锁的类型共享锁S锁Shared Lock用于读操作SELECT多个事务可以同时持有同一数据的共享锁。防止其他事务获取排他锁写锁从而避免脏读。排他锁X锁Exclusive Lock用于写操作INSERT、UPDATE、DELETE一个事务持有排他锁时其他事务不能获取任何锁共享锁或排他锁。防止其他事务读取或修改数据避免并发冲突。意向锁Intention Lock表级锁表示事务打算在表中的行上获取什么类型的锁意向共享锁 IS 或意向排他锁 IX。提高锁的兼容性检查效率。锁的粒度细粒度、颗粒度行级锁Row-level Locking锁的粒度最小并发度高但开销大如 InnoDB。表级锁Table-level Locking锁的粒度最大并发度低但开销小如 MyISAM。多版本并发控制MVCCMulti-Version Concurrency ControlMVCC 是一种通过维护数据的多个版本来实现并发控制的机制避免了读写冲突提高了并发性能。、MVCC 的优势读不加锁读操作不会阻塞写操作写操作也不会阻塞读操作读写不冲突。提高并发性避免了锁的开销适合高并发场景。实现不同隔离级别通过调整 ReadView 的生成时机实现不同的隔离级别。存储引擎innoDBiMsamMemory