现在的位置: 首页 > 综合 > 正文

Oracle 数据库如何修改控制文件的位置

2012年10月22日 ⁄ 综合 ⁄ 共 1451字 ⁄ 字号 评论关闭
近几天一直在捣鼓如何更改配置文件的位置,今天终于成功了!真可以说是费了9牛2虎之力啊!
我用的是Oracle 10.2 作期间也参考了几本书,树上说很简单,可是我按照树上的操作就是改不了。
其实我用的是最最原始的方法,手动修改配置文件来完成的。下面我来介绍一下,我这个最笨的方法。

前提条件:要在服务器上进行操作(当然远程连接也可以),因为要复制文件,和修改文件。

1.以DBA的身份登陆数据库,conn sys/manager as sysdba;
2.察看当前控制文件存放的位置,select * from v$controlfile;
3.关闭数据库,shutdown immediate;
4.拷贝现有的控制文件到制定的路径下,比如e:\oraControlFile,host copy d:\oracle\product\10.2.0\oradata\ora813\control01.ctl e:\oracontrolfile\control01.ctl;
5.修改初始化参数文件init.ora,放在Oracle主目录\product\10.2.0\admin\ora813\pfile下,为了防止出现错误,我们复制了一个命名为start.ora,内容和原先的init.ora一样,我在这个基础上进行的修改,把控制文件的配置改为
control_files=(
"D:\oracle\product\10.2.0\oradata\Ora813\control01.ctl",
"D:\oracle\product\10.2.0\oradata\Ora813\control02.ctl",
"D:\oracle\product\10.2.0\oradata\Ora813\control03.ctl",
"E:\OracleControlFile\control01.ctl")
然后保存退出。
6.启动数据库并制定初始化参数文件 startup pfile="d:\oracle\product\10.2.0\admin\ora813\pfile\start.ora";
这时如果我们以前的操作都没有问题的话,我们用SELECT * FROM v$controlfile; 显示的结果是我们想要的,但是别得意,如果这时重启数据库的话那我们以前的工作就白费了!我们需要创建一个动态参数文件Spfile。让数据库以后每次启动都加载它。
7.动态参数文件spfile是Oracle9i引入的一个二进制文件,必须由pfile创建,不能手工修改,只能同过oracle服务修改。我们用下面的命令创建spfile
create spfile='d:\oracle\product\10.2.0\db_1\dbs\spfileora813.ora' from pfile='d:\oracle\product\10.2.0\admin\ora813\pfile\start.ora';
这里我要说明一下为什么spfile的文件名是“spfileora813.ora”,因为我数据库的sid是ora813数据库启动时会按照spfile{sid}.ora搜索。
8.spfile创建完了,我们的操作也就结束了。这时我们如果重新启动数据库,在察看控制文件的话结果就是我们预想的了!
虽然只有这简单的几步,但是我却捣鼓了好几天,万事开头难嘛!(总得为自己的笨找点借口)我相信以后就可以不用这么费事了!越来越熟悉了嘛!嘿嘿.
经过这次修改控制文件我觉得DBA是个要求心非常细的活,每一步都要很细心!

抱歉!评论已关闭.