数据库技术基础

这篇具有很好参考价值的文章主要介绍了数据库技术基础。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

根据希赛相关视频课程汇总整理而成,个人笔记,仅供参考。

基本概念

数据库通常是指有组织地、动态地存储在(外存上的相互联系的数据的集合)应用数据库主要目的是解决数据(共享)问题。

三级模式/两级映像

数据库系统设计员可通过外模式、概念模式和内模式来描述(视图层、逻辑层和物理层)上的数据特性;

数据库的视图、基本表和存储文件的结构分别对应(外模式、模式、内模式);

数据的物理独立性和数据的逻辑独立性是分别通过修改(模式/内模式)和(外模式/模式)的映像来保证的。

数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能

数据库管理系统的特点

数据库中数据(完整性)是指数据库的正确性和相容性,以防止合法用户向数据库加入不符合语义的数据;(安全性)是指保护数据库,以防止不合法地使用所造成的数据泄露、更改或破坏;(并发控制)是指在多用户共享的系统中,保证数据库的完整性不受破坏,避免用户得到不正确的数据。

数据模型的三要素
数据结构、数据操作、数据的约束条件

数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能

概念数据模型是按用户的观点对数据和信息建模,强调其语义表达功能,易于用户理解。

数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能

数据仓库的基本特性
面向主题、数据是集成的、相对稳定和反映历史变化的

OLTP和OLAP
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能

数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能

事务管理

事物的基本概念

定义
事务是一系列的数据库操作,是数据库应用程序的基本逻辑单位,即应用程序对数据库的操作都应该以事务的方式执行。

事务的四个特性(ACID)

①原子性(Atomicity)

要么都做,要么都不做”,是数据库环境中不可分割的逻辑工作单位

②一致性(Consistency)
③隔离性(Isolation)
④持久性(Durability)

SQL标准规定当一条SQL语句被执行,就隐式地开始了一个事务
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
ROLLBACK 事务回滚,表示事务非成功地结束;
COMMIT 事务提交,表示事务成功结束

数据库的并发控制

数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能

脏读:读取事务 未提交的 修改 之后的数据;
幻读:读取事务 未提交的 增删 之后的数据;
不可重复读:多次读取事务已经提交的数据;

解决并发操作带来的数据不一致性一般采用(封锁)

并发控制技术加锁
排它锁 (简称X锁) 又称写锁

如果事务T对数据A加上排他锁后,则其他事务不能再对A加任任何类型的封锁

共享锁 (简称S锁) 又称读锁

如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能加排他锁

封锁协议

三级封锁协议
一级封锁协议 解决丢失更新问题;

事务T 在修改数据A之前必须先对其加上排他锁(不加锁直接修改数据是被禁止的,一定要加锁),直到事务结束才释放。

二级封锁协议 解决了读“脏”数据;不能保证可重复读;

在一级封锁协议的基础上,加上事务Y 在读取数据A之前先对其加共享锁,读完后即可释放共享锁

三级封锁协议 防止丢失修改、不读“脏”数据、防止了不可重复度

在一级封锁协议的基础上,加上事务Y 在读取数据A之前先对其加共享锁,知道整个事务全部完成后才释放共享锁。

数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能

两段锁协议
更加直接,可能产生死锁,是可串行化调度的充分条件(即满足可串行化的不一定遵循两段锁协议)
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能

活锁和死锁

避免活锁解决方法
先来先服务

避免死锁解决方法
①采取一定的措施来预防死锁的发生;
②允许发生死锁,并采用一定手段定期诊断系统中是否有死锁,如果发现了死锁则立即解除掉

数据库的备份与恢复

数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能

数据库恢复 Undo/Redo
Undo
撤销事务 将未完成的事务撤销,使数据库恢复到执行前的正确状态;
Redo
重做事务 对已经提交的事务重新执行

事务故障的恢复由系统自动完成,对用户是透明的
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
系统故障的恢复是在系统重启之后自动执行的
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
介质故障的恢复需要DBA的介入数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能

应用题训练1-数据库并发控制

题目:
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
同时预定时,可能会产生一个客户订不到或者把同一房订给两个客户
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
(1)出现问题:丢失修改,客户1预定a1数量房间后,对空房数量的修改被T2的修改覆盖,造成数据不一致。
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
数据库技术基础,数据库,数据库,oracle,数据库技术基础,事务,数据库的控制功能
(2)如上表:XLOCK(A),x1=R(A), W(A, x1-a1), XLOCK(B), UNLOCK(A), W(B1, a1), UNLOCK(B), XLOCK(A), x2=R(A), W(A, X2-A2), XLOCK(B),UNLOCK(A), W(B2,a2),UNLOCK(B)文章来源地址https://www.toymoban.com/news/detail-856041.html

到了这里,关于数据库技术基础的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Oracle数据库SQL Plus基础命令

    1.使用SQL*Plus登录Oracle数据库 开始 -- 所有程序 -- Oracle -- 应用程序开发 -- SQL Plus cmd窗口下输入:sqlplus 用户名/口令@主机字符串 2.使用CMD命令登录Oracle数据库 开始 -- 所有程序 -- 附件 -- 命令提示符 使用命令行登陆的连接命令格式为:sqlplus/@net_service_name username为用户名;passw

    2024年02月06日
    浏览(54)
  • 使用免费负载生成器swingbench对oracle数据库进行压力测试(测试Oracle的功能或评估性能)

    Swingbench 是一个免费负载生成器(和基准测试),旨在对 Oracle 数据库 进行压力测试。目前最新版本 Swingbench 2.6。 SwingBench 由负载生成器,协调器和集群概述组成。该软件可以生成负载 并绘制交易/响应时间图表。 Swingbench 可用于演示和测试技术,例如实际应用程序集群,在线

    2024年02月10日
    浏览(61)
  • Oracle/PL/SQL数据库基础操作(持续更新)

            PL/SQL不是一个独立的编程语言;它是Oracle编程环境中的工具。 SQL* Plus是一个互动的工具,它可以在命令提示符下键入SQL和PL/SQL语句。这些命令发送到数据库进行处理。语句处理之后将结果发回,并在屏幕上显示出来。 分类 命令 DDL create:创建;drop:删除;alter:

    2024年02月09日
    浏览(63)
  • 数据库第十章(数据库恢复技术)十一章(并发控制)

    目录 1.事务 2.并发控制 1.事务 事务的特点:ACID 原子性   atom 一致性   consistent 隔离性   isolation 持久性   durable 故障的种类 1.事务内部故障         措施:采取redo重做和undo撤销技术 2.系统故障DBMS         措施:重启 3.介质故障         硬件损坏 4.计算机病毒   数据恢

    2024年02月09日
    浏览(59)
  • 【SQL Server】数据库开发指南(八)高级数据处理技术 MS-SQL 事务、异常和游标的深入研究

    本系列博文还在更新中,收录在专栏:#MS-SQL Server 专栏中。 本系列文章列表如下: 【SQL Server】 Linux 运维下对 SQL Server 进行安装、升级、回滚、卸载操作 【SQL Server】数据库开发指南(一)数据库设计的核心概念和基本步骤 【SQL Server】数据库开发指南(二)MSSQL数据库开发对

    2024年02月07日
    浏览(92)
  • 【软考数据库】第六章 数据库技术基础

    目录 6.1 基本概念 6.1.1 关于数据的基本概念 6.1.2 数据库管理系统的功能 6.1.3 数据各个发展阶段的特点 6.1.4 数据库系统的体系结构 6.2 数据模型 6.2.1 三级模式两级映像 6.2.2 数据模型_模型分类 6.2.3 数据模型_组成要素 6.2.4 概念模型中的基本概念 6.2.5 数据模型 6.3 数据存储与查

    2024年02月05日
    浏览(56)
  • 数据库技术基础

    根据希赛相关视频课程汇总整理而成,个人笔记,仅供参考。 数据库通常是指有组织地、动态地存储在( 外存上 的相互联系的数据的集合)应用数据库主要目的是解决数据(共享)问题。 三级模式/两级映像 : 数据库系统设计员可通过外模式、概念模式和内模式来描述(视

    2024年04月23日
    浏览(34)
  • 数据库工程师基础学习13,14,15----云计算,数据库主流应用技术,专利

    1,云计算与大数据处理 这里的是:按需访问,资源池模型.可用来申请服务器,网络等.无限扩展的存储. 这里公有云与私有云对应,一个面向大众,一个面向私人. 社区云,如学校网,只提供给特定组织使用. 这里主要是:云计算开发商提供的东西不同. 1)主要是基础设施提供 2)主要

    2024年02月05日
    浏览(46)
  • Unity3D 连接 SQLite 作为数据库基础功能【详细图文教程】

    轻量级: SQLite是一个嵌入式数据库引擎,它的库文件非常小巧,没有独立的服务器进程,适用于嵌入到其他应用程序中,对于轻量级的项目或移动应用程序非常适用。 零配置: 使用SQLite不需要进行复杂的配置或管理,你只需要简单地创建一个文件即可开始使用,减少了额外的

    2024年02月10日
    浏览(39)
  • 数据库——事务,事务隔离级别

    什么是事务? 事务是逻辑上的一组操作,要么都执行,要么都不执行。 事务最经典也经常被拿出来说例子就是转账了。假如小明要给小红转账1000元,这个转账会涉及到两个关键操作就是:将小明的余额减少1000元,将小红的余额增加1000元。万一在这两个操作之间突然出现错误

    2024年02月11日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包