个人头像

Oracle数据库作业:逻辑存储结构管理

发表于2022-4-01  | 分类于秋风无言

在文章的开始,请各位首先完成前置作业,否则会有一些小问题

前置作业的链接请点击oracle数据库作业:逻辑存储结构管理
本次作业的题目有:

    (1)向数据库的USERS表空间添加一个大小为10MB的数据文件users02.dbf。
    (2)向数据库的TEMP表空间添加一个大小为10MB的数据文件temp02.dbf。
    (3)向数据库的USERS表空间添加一个可以自动扩展的数据文件users03.dbf,大小为5MB,每次扩展1MB,最大容量为100MB。
    (4)取消数据文件users03.dbf的自动扩展。
    (5)将数据文件users02.dbf更名为users002.dbf。
    (6)查询数据库当前所有的数据文件的详细信息。
    (7)为数据库添加一个多路复用的控制文件control03.ctl。
    (8)以二进制文件的形式备份数据库的控制文件。
    (9)将数据库的控制文件以文本形式备份到跟踪文件中,并查看备份的内容。
    (10)删除数据库的控制文件control03.ctl。
    (11)查询数据库中所有的控制文件的详细信息。
    (12)向数据库中添加一个重做日志日志文件组(组号为4),包含一个成员文件undo04.log,大小为4MB。
    (13)向数据库的重做日志文件组4添加一个成员文件,名称为undo04b.log。
    (14)将数据库的重做日志文件组4中所有成员文件移植到一个新的目录下。
    (15)查询数据库中所有重做日志文件组的状态。
    (16)查询数据库中所有重做日志文件成员的状态。
    (17)删除数据库的重做日志文件组4中的成员文件undo04.log。
    (18)删除数据库的重做日志文件组4.
    (19)查看数据库是否处于归档模式。
    (20)为数据库设置3个归档目标,其中一个为强制归档目标。
    (21)对数据库进行5次日志切换,查看归档日志信息。
    备注:数据库指机器上安装的数据库。

以上就是老师的题目了,咱们也不说废话,直接上代码和截图

1.
SQL>ALTER TABLESPACE USERS ADD DATAFILE 'C:\app\orcl\oradata\BOOKSALES\users02.dbf' size 10M;

2.
SQL>alter tablespace temp add tempfile 'C:\app\orcl\oradata\BOOKSALES\temp02.dbf' size 10M;

3.
SQL>alter tablespace users add datafile 'C:\app\orcl\oradata\BOOKSALES\temp03.dbf' size 5M autoextend on next 1M maxsize 100M;

4.
SQL>alter database datafile 'C:\app\orcl\oradata\BOOKSALES\temp03.dbf' autoextend off;

5.
SQL>alter tablespace users offline;
在此处,请手动的重命名user02.dbf文件
SQL>alter tablespace users rename datafile 'C:\app\orcl\oradata\BOOKSALES\users02.dbf' to 'C:\app\orcl\oradata\BOOKSALES\users002.dbf';

SQL>ALTER TABLESPACE USERS ONLINE;

6.
SQL>SELECT * FROM DBA_DATA_FILES;

7.
SQL>alter system set control_files= 'C:\app\orcl\oradata\BOOKSALES\control01.ctl', 'C:\app\orcl\oradata\BOOKSALES\control03.ctl' scope=spfile;

SQL>CONN /AS SYSDBA

SQL>SHUTDOWN IMMEDIATE

SQL> HOST COPY C:\app\orcl\oradata\BOOKSALES\control01.ctl C:\app\orcl\oradata\BOOKSALES\control03.ctl

SQL>STARTUP

8.
SQL>alter database backup controlfile to 'C:\app\orcl\oradata\BOOKSALES\CONTROL01.BKP';

SQL>alter database backup controlfile to 'C:\app\orcl\oradata\BOOKSALES\CONTROL03.BKP';

9.
SQL>alter database backup controlfile to trace;

10.
SQL>CONN /AS SYSDBA

SQL>ALTER SYSTEM SET CONTROL_FILES='C:\app\orcl\oradata\BOOKSALES\control01.ctl' SCOPE=SPFILE;

SQL>SHUTDOWN IMMEDIATE

SQL>HOST DEL C:\app\orcl\oradata\BOOKSALES\control03.ctl

SQL>STARTUP

11.
SQL>select name from v$controlfile;

12.
SQL>alter database add logfile group 4('C:\app\orcl\oradata\BOOKSALES\UNDO04.LOG') SIZE 4M;

13.
SQL>alter database add logfile member 'C:\app\orcl\oradata\BOOKSALES\UNDO04B.LOG' TO GROUP 4;

14.
请手动新建otherway目录,目录位置可以随意,但是下文中涉及到otherway的目录请改为自己的设置目录

SQL>HOST MOVE C:\app\orcl\oradata\BOOKSALES\UNDO04.LOG C:\app\orcl\oradata\BOOKSALES\otherway\UNDO04.LOG

SQL>HOST MOVE C:\app\orcl\oradata\BOOKSALES\UNDO04B.LOG C:\app\orcl\oradata\BOOKSALES\otherway\UNDO04B.LOG

15.
SQL>select group#, sequence#, members,archived,status from v$log;

16.
SQL>select group#, status, member from v$logfile;

17.

SQL>ALTER DATABASE DROP LOGFILE MEMBER 'C:\app\orcl\oradata\BOOKSALES\UNDO04B.LOG';

18.
SQL>alter database drop logfile group 4;

19.
SQL>archive log list

20.

这道题仅做参考,有多个答案,因此按照个人认为最合理的方式来写。

注意,其中的file2目录为手动创建
SQL>alter system set log_archive_dest_1='location=C:\app\orcl\oradata\BOOKSALES\otherway';

SQL>alter system set log_archive_dest_2='location=C:\app\orcl\oradata\BOOKSALES\file2';

SQL>alter system set log_archive_dest_3='service=standby1';

21.
SQL>Alter System Switch Logfile; #该步骤执行五次

SQL>archive log list