广州大学学生实验报告
开课学院及实验室:计算机科学与工程实验室418B室 2018年06月 03日
学院 |
计算机科学与教育软件 |
年级、专业、班 |
网络*** |
姓名 |
卟咚君 |
学号 |
1606100*** |
|
实验课程名称 |
数据库原理实验 |
成绩 |
|
|||||
实验项目名称 |
数据备份与恢复 |
指导老师 |
*** |
|||||
实验目的
掌握ORACLE数据库系统逻辑备份和恢复的方法。
实验要求
熟悉实验室实验环境,阅读实验预备知识,掌握本实验内容涉及知识点的基本用法,了解实验中故障排除的基本方法。实验中根据实验步骤要求,写出相应的SQL代码运行,根据结果分析代码书写是否正确,根据步骤要求独立完成实验报告。
实验环境
Oracle 10g,windows 2003;
实验内容和步骤
1.用SYSTEM用户创建数据库用户DBLESSON,并授予RESOURCE,CONNECT角色权限;
CREATE USER DBLESSON IDENTIFIED BY DBLESSON;GRANT RESOURCE,CONNECT TO DBLESSON;
2.利用附录中SQL语句,建立项目信息管理数据库;
3.从开始菜单启动CMD;
执行EXP HELP=Y,查看EXP帮助文档,了解各个参数的作用。
执行IMP HELP=Y,查看IMP帮助文档,了解各个参数的作用。
4.执行命令,用DBLESSON用户导出DBLESSON的TEACHER、TM、MYPROJECT表;
EXP USERID=DBLESSON/DBLESSON@brandong TABLES=(TEACHER,TM,MYPROJECT) FILE=D:\DBLESSON.DMP
5.在SQLPLUS环境下,用户DBLESSON删除表格TM;
drop table tm;
6.在CMD下,用E:\DBLESSON.DMP还原数据库中的TM表,并查看结果;
IMP USERID=DBLESSON/DBLESSON@brandong FILE=D:\DBLESSON.DMP TABLES=(TM) IGNORE=Y
7.在CMD下,用DBLESSON导出方案DBLESSON;
EXP USERID=DBLESSON/DBLESSON@brandong OWNER=DBLESSON FILE=D:\SCHEMA.DMP
8.在SQLPLUS环境下,用户DBLESSON删除DBLESSON方案下的所有表、视图等对象,执行以下IMP命令恢复。查看删除和恢复前后的结果;
IMP USERID=DBLESSON/DBLESSON FROMUSER=DBLESSON TOUSER=DBLESSON FILE=D:\SCHEMA.DMP
9.在CMD下,用SYSTEM用户导出整个数据库;
EXP USERID=SYSTEM/orcl FILE=D:\DB.DMP FULL=Y
10.在SQLPLUS环境下,用SYSTEM用户删除DBLESSON用户,重建一个用户DB1并授予RESOURCE、CONNECT角色权限;
drop user DBLESSON cascade;
CREATE USER DB1 IDENTIFIED BY DB1;
GRANT RESOURCE,CONNECT TO DB1;
11.在CMD下,把导出的数据导入到用户DB1;
IMP USERID=SYSTEM/orcl FROMUSER=DBLESSON TOUSER=DB1 FILE=D:\DB.DMP
实验总结
总结实验过程中涉及到的知识点、实验过程中遇到的问题及解决方法。
通过这次实验,对ORACLE数据库系统逻辑备份和恢复的方法有了初步的了解,看见cmd里一行一行的数据在不断的更新,感觉好厉害的样子。在本次实验中,由于我的oracle安装的时候SID设置的是brandong,所以原本的命令行需要改一改才能用。在将system用户导出整个数据库的时候,花了有一点时间的,说明了数据库原本的数据量都是挺大的。可以使用EXP导出用户创建的表或者整个方案,在原本的用户内容出现丢失的时候,可以使用IMP使用原本的备份数据回复丢失的数据。也可以用EXP将system下的整个数据库导出来,在用户丢失的时候,可以整个用户都恢复回来。另外,不能直接删除正在连接的用户,需要断开连接才能删除。