第13章数据库连接
- 格式:ppt
- 大小:1.01 MB
- 文档页数:20
第13章数据库的备份和恢复本章学习目标在企业数据库系统中,数据备份与恢复工作也是一项不可忽视的非常重要的管理工作。
只有经常注意对数据进行备份,才可以在一些“灾难”事故发生后,使自己的损失降到最低的程度。
本章主要就来讲述数据库的恢复和备份方面的知识,主要内容包括备份和恢复的需求与基本概念以及数据库的备份与恢复方法等。
通过本章的学习,读者应了解数据库备份和恢复的需求及其基本知识,掌握数据库备份与恢复的基本方法。
学习重点与难点☑需求分析与基本知识☑备份设备的创建与查看☑数据库备份方法☑恢复数据库的方法13.1 备份和恢复概述尽管系统中采取了各种措施来保证数据库的安全性和完整性,但硬件故障、软件错误、病毒、误操作或故意破坏仍是可能发生的,这些故障会造成运行事务的异常中断,影响数据的正确性,甚至会破坏数据库,使数据库中的数据部分或全部丢失。
因此数据库管理系统都提供了把数据库从错误状态恢复到某一正确状态的功能,这种功能称为恢复。
数据库的恢复是以备份为基础的,SQL Server 2000的备份和恢复组件为存储在SQL Server数据库中的关键数据提供了重要的保护手段。
13.1.1 备份和恢复的需求分析数据库备份就是制作数据库结构、对象和数据的拷贝,以便在数据库遭到破坏的时候能够修复数据库。
数据库恢复就是将数据库备份加载到系统中。
数据库中的数据丢失或被破坏可能是由于以下原因造成的:(1)计算机硬件故障:由于使用不当或产品质量等原因,计算机硬件可能会出现故障,不能使用。
如硬盘损坏会使得存储于其上的数据丢失。
(2)软件故障:由于软件设计上的事物或用户使用的不当,软件系统可能会误操作数据引起数据破坏。
(3)病毒:破坏性病毒会破坏系统软件、硬件和数据。
(4)误操作:如用户使用了诸如DELETE、UPDATE等命令而引起数据丢失或被破坏。
(5)自然灾害:如火灾、洪水或地震等,它们会造成极大的破坏,会毁坏计算机系统及其数据。
第1章数据库系统概论三、简答题1. 答:数据库DB是长期存储在计算机内、有组织的、统一管理的相关数据的集合。
DB能为各种用户共享,具有较小冗余度、数据间联系严密而又有较高的数据独立性等特点。
2. 答:数据库管理系统DBMS是位于用户与操作系统〔OS〕之间的一层数据管理软件,它为用户或应用程序提供访问DB的方法,包括DB的建立、查询、更新及各种数据控制。
DBMS 总是基于某种数据模型,可以分为层次型、网状型、关系型和面向对象型等。
3. 答:①数据定义语言及其翻译处理程序;②数据操纵语言及其编译〔或解释〕程序;③数据库运行控制程序;④实用程序。
4. 答:文件系统中的文件是面向应用的,一个文件根本上对应于一个应用程序,文件之间不存在联系,数据冗余大,数据共享性差,数据独立性差;数据库系统中的文件不再面向特定的某个或多个应用,而是面向整个应用系统,文件之间是相互联系的,减少了数据冗余,实现了数据共享,数据独立性高。
5. 答:①实现数据的集中化控制;②数据的冗余度小,易扩大;③采用一定的数据模型实现数据构造化;④防止了数据的不一致性;⑤实现数据共享;⑥提供数据库保护;⑦数据独立性;⑧数据由DBMS统一管理和控制。
6. 答:数据独立性是指数据库中的数据独立于应用程序,即数据的逻辑构造、存储构造与存取方式的改变不影响应用程序。
数据独立性一般分为数据的逻辑独立性和数据的物理独立性。
数据逻辑独立性是指数据库总体逻辑构造的改变〔如修改数据定义、增加新的数据类型、改变数据间的联系等〕不需要修改应用程序。
数据物理独立性是指数据的物理构造〔存储构造、存取方式等〕的改变,如存储设备的更换、物理存储格式和存取方式的改变等不影响数据库的逻辑构造,因而不会引起应用程序的改变。
7. 答:数据库系统中数据不是面向单个应用组织的,而是直接面向数据本身及数据间的内在联系来组织的,因此可以方便地供多用户多应用共享,这样,数据的冗余度就大幅度降低了。
数据库完整性练习题13及参考答案1.什么是数据完整性如果数据库不实施数据完整性会产生什么结果答:数据完整性是指数据的正确性、完备性和一致性,是衡量数据库质量好坏的重要标准。
如果数据库不实施数据完整性,在用INSERT 、DELETE 、UPDATE 语句修改数据库内容时,数据的完整性可能会遭到破坏,就可能会存在下列情况:无效的数据被添加到数据库的表中,如:将学生考试成绩输入成负数;对数据库的修改不一致,如:在一个表中修改了某学生的学号,但该学生的学号在另外一个表中却没有得到修改;将存在的数据修改为无效的数据,如:将某学生的班号修改为并不存在的班级号。
2.数据完整性有哪几类如何实施它们分别在什么级别上实施答:数据完整性分为以下3类:(1)域完整性:是指一个列的输入有效性,是否允许为空值。
强制域完整性的方法有:限制类型(通过设定列的数据类型)、格式(通过CHECK 约束和规则)或可能值的范围(通过FOREIGN KEY 约束、CHECK 约束、DEFAULT 定义、NOT NULL 定义和规则)。
如:学生的考试成绩必须在0~100之间,性别只能是“男”或“女”。
(2)实体完整性:是指保证表中所有的行唯一。
实体完整性要求表中的所有行都有一个唯一标识符。
这个唯一标识符可能是一列,也可能是几列的组合,称之为主键。
也就是说,表中的主键在所有行上必须取唯一值。
强制实体完整性的方法有:索引、UNIQUE 约束、PRIMARY KEY 约束或IDENTITY 属性。
如:student 表中sno (学号)的取值必须唯一,它第 章 13唯一标识了相应记录所代表的学生,学号重复是非法的。
学生的姓名不能作为主键,因为完全可能存在两个学生同名同姓的情况。
(3)参照完整性:是指保证主关键字(被引用表)和外部关键字(引用表)之的参照关系。
它涉及两个或两个以上表数据的一致性维护。
外键值将引用表中包含此外键的记录和被引用表中主键和外键相匹配的记录关联起来。
第13章常见错误及解决方案1)SecureCRT 7.3出现乱码或者删除不掉数据,免安装版的SecureCRT 卸载或者用虚拟机直接操作或者换安装版的SecureCRT2)连接不上mysql数据库(1)导错驱动包,应该把mysql-connector-java-5.1.27-bin.jar导入/opt/module/hive/lib的不是这个包。
错把mysql-connector-java-5.1.27.tar.gz导入hive/lib包下。
(2)修改user表中的主机名称没有都修改为%,而是修改为localhost3)hive默认的输入格式处理是CombineHiveInputFormat,会对小文件进行合并。
hive (default)> set hive.input.format;hive.input.format=bineHiveInputFormat可以采用HiveInputFormat就会根据分区数输出相应的文件。
hive (default)> set hive.input.format=org.apache.hadoop.hive.ql.io.HiveInputFormat;4)不能执行mapreduce程序可能是hadoop的yarn没开启。
5)启动mysql服务时,报MySQL server PID file could not be found! 异常。
在/var/lock/subsys/mysql路径下创建hadoop102.pid,并在文件中添加内容:43966)报service mysql status MySQL is not running, but lock file (/var/lock/subsys/mysql[失败])异常。
解决方案:在/var/lib/mysql 目录下创建:-rw-rw----. 1 mysql mysql 5 12月22 16:41 hadoop102.pid 文件,并修改权限为777。