控制文件的备份(open状态下即可)
方法(一)
alter database backup controlfile to trace as ‘c:\c.tcr’;
附控制文件内容:
将这部分内容复制下来写进去SQL语句这里(创建相同的控制文件)
CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS ARCHIVELOG
......
RECOVER DATABASE USING BACKUP CONTROLFILE
(2)方法二:将控制文件备份成二进制的映像文件
alter database backup controlfile to ‘C:\CONTROL.CTL’;
db_name的修改
必须牢记:做任何参数修改之前必须先进行备份
db_name,db_domain,db_unique_name,instance_name,service_name 的修改必须备份参数文件、控制文件、用户口令文件、参数文件、tnsnames.ora
Db_name (只能pfile修改,并重启生效)
Db_domain (pfile,spfile都可修改,并重启生效)
Db_unique_name (只能pfile修改,并重启生效)
Service_names (pfile,spfile都可修改,立刻生效,无需重启)
实际操作方法:
1、备份文本控制文件,并修改、编写新的生成控制文件SQL(备份如上文所示,运用第一种方式)
将这部分内容复制下来写进去SQL语句这里(创建相同的控制文件)
CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS ARCHIVELOG
......
RECOVER DATABASE USING BACKUP CONTROLFILE
改为
CREATE CONTROLFILE SET DATABASE "HZQDB" NORESETLOGS ARCHIVELOG
......
#RECOVER DATABASE USING BACKUP CONTROLFILE
2、vi pfile,修改db_name成你需要的数据库名
参数文件的创建方式
方法(一)
从内存中创建参数文件
SQL> create spfile='/tmp/spfile.ora' from memory;
File created.
SQL> create pfile ='/tmp/pfile.ora' from memory;
File created.
方法(二)
create pfile ='/tmp/pfile.ora' from spfile;
create spfile ='/tmp/pfile.ora' from pfile;
修改spfile文件
*.db_name='hzqdb'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=hzqdbXDB)'
create pfile ='/tmp/pfile.ora' from spfile;
3、 关闭数据库(shutdown immedaite)
4、 开启数据库nomount
startup nomount pfile=’/tmp/pfile.ora’;
5、 使用编写好的控制文件SQL生成新的控制文件@XX.sql
6、 添加临时文件(如果你在创建新的控制文件的时候把原文件的创建临时文件同样也放在SQL执行了则不需要再添加临时文件)
7、修改用户口令文件、tnsnames.ora、并使用远程登陆数据库验证
注意:
用户口令文件=orapw+实例名