运行:slqplusw /nolog 与 cmd(用来修改文件)
控制文件随时都在改更,系统不能确定哪个文件是最新的,所以必须先关闭数据库,然后手机拷贝控制文件。
先用文本打开:init.ora 在 添加新的控制文件"d:\ctl\newctl.ctl",
control_files=("d:\ctl\newctl.ctl","c:\oracle\oradata\oral92\CONTROL01.CTL", "c:\oracle\oradata\oral92\CONTROL02.CTL", "c:\oracle\oradata\oral92\CONTROL03.CTL")
然后在D盘里新建一个文件夹ctl,再从C:\oracle\oradata\oral92中拷贝一个控制文件到该文件夹下重新命名:newctl
slqplusw /nolog
SQL> conn /as sysdba; //连接数据库
SQL> desc v$controlfile; //显示控制文件
SQL> show parameter;
SQL> show parameter control_files; //展示特定的文件
SQL> shutdown immediate; //立即关闭数据库
因为init.ora.700XXXXXX所以用dos来ren:
该文件在C:\oracle\admin\oral92\pfile\路径下
C:\oracle\admin\oral92\pfile>ren init.ora.700XXXXXX init.ora
Ok..修改完毕,现在切回slqplusw /nolog打开修改后的init.ora运行;
SQL> startup pfile="C:\oracle\admin\oral92\pfile\init.ora"; //启动文件
SQL> desc v$controlfile; //显示控制文件
SQL> alter system set control_files = '控制文件路径1','控制文件路径2','新建的控制文件' scope=pfile;
新建的控制文件必须拷贝保留的控制控制文件如 '控制文件路径1','控制文件路径2',
日志文件部分:
SQL> select * from v$logfile; \\显示有三个日志文件
SQL> alter database add logfile group 4 ('d:\ctl\newlog.log') size 10m; \\添加第四个日志文件
SQL> alter database add logfile member 'd:\ctl\memerber.log' to group 4;