--什么是控制文件 控制文件是数据库的一个二进制文件,它主要记录数据库的名称、数据库的数据文件存放位置等信息。 一个控制文件只能属于一个数据库。如果控制文件丢失,这数据库就无法操作。--下面查询语句必须在 sql plus工具中执行。--查询控制语句数据字典desc v$controlfile;--什么是日志文件日志文件在Oracle数据库中分为重做日志文件和归档日志文件两种。重做日志文件是Oracle数据库正常运行不可缺少的文件。重做日志文件主要记录了数据库操作过程。用于备份和还原数据库,以达到数据库的最新状态。--查看日志文件信息的数据字典desc v$logfile--查看日志文件的数据字典desc v$databaseselect name as 数据库名称,log_mode as 归档模式 from v$database;--查看控制文件的内容select name as 文件位置,status as 文件状态 from v$controlfile;--数据库的初始化文件里配置这控制文件的路径初始化文件init.ora,init.ora文件在安装目录下admin\orcl\pfile--实现多路复用控制文件的方式,就是将控制文件(ctl)放到不同的磁盘物理位置,通过初始化文件--init.ora配置就可以实现多路复用了。--使用spfile多了复用控制,也事件通过命令修改init.ora文件配置信息。--具体步骤1、修改control_files参数,数据库必须是打开状态Alter system set control_files='ctl文件位置','ctl文件位置','ctl文件位置' scope=spfile;2、关闭数据库,因为数据库打开时,任何控制文件是无法操作的。shutdown immediate;3、通过dos工具的copy命令复制控制文件到指定位置。也可以手动赋值。copy 旧文件 , 新文件4、启动数据库实例并验证startup 启动命令--创建控制文件1、查看数据库需要的日志文件和和数据文件select name from v$datafile;--查询数据库数据文件select member from v$logfile;--查询数据库日志文件2、关闭数据库,为了数据库安全,关闭数据库之前要将日志文件、数据文件、参数文件等备份到其它位置。shutdown immediate;3、创建新的控制文件必须启动的实例:startup nomount;create controlfile reuse database "数据库名称" [ noresetlogs | resetlogs] --noresetlogs是否重做日志或重命名数据库;resetlogs非重做日志或重命名数据库[ noarchivelog | archivelog ] --noarchivelog非归档模式;archivelog归档模式maxlogfiles --日志文件大小maxlogmembers --日志文件组成员数maxinstances --最大实例数maxloghistory --最大历史日志文件数logfile --日志文件group 1 '日志文件路径' size 日志文件大小,...group n '日志文件路径' size 日志文件大小datafile --数据文件'路径1',..,'路径n' Character set we8dec; --实例 create controlfile reuse database "orcl" noresetlogs noarchivelog maxlogfiles 35 maxlogmembers 3 maxinstances 1 maxloghistory 400 logfile group 1 'E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO01.LOG' size 50M, group 2 'E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO02.LOG' size 50M, group 3 'E:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO03.LOG' size 50M datafile 'E:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF', 'E:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF', 'E:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF' character set we8dec; 4、修改init.ora中controlfiles参数 Alter system set control_files='ctl文件位置','ctl文件位置','ctl文件位置' scope=spfile;5、验证控制文件重启数据库,查看数据字典,检查控制文件是否全部正确加载。数据库启动不了,就重新启动数据库服务。--日志文件管理--创建重做日志组alter database [database_name]add logfile group nfilename size m; database_name:数据库名称。 n:日志组的组号。 filename:日志文件组存储的位置。 m:日志文件组的大小,默认为50M。 --实例 alter database add logfile group 8 <'E:\APP\ADMINISTRATOR\ORADATA\ORCL\NewLog8.log'> size 15M; ---给日志文件组添加日志文件组 alter database [database_name] add logfile member filename to group n; database_name:数据库名称,默认当前数据库 filename:日志文件的地址。 n:日志文件组名。 --实例 alter database add logfile member 'E:\APP\ADMINISTRATOR\ORADATA\ORCL\NewLog10.log' to group 8; --查看日志文件组 select * from v$log; --删除日志组 alter database [database_name] drop logfile group n; --删除日志文件 alter database [database_name] drop logfile member filename;