oracle查询数据库启动时的参数文件,【Oracle】数据库启动阶段参数文件、控制文件的问题处理...

Oracle启动分三个阶段:

nomount:

首先查找参数文件(pfile/spfile),根据文件创建实例。Nomount的过程是启动数据库实例的过程。

没有参数文件无法nomount

mount:

从参数文件中获得控制文件的位置信息,然后打开控制文件。

--没有控制文件无法mount

open:

打开控制文件中所有描述的文件。

--没有数据文件无法open

-------------------------------------------------------------------------------------

NLS_LANG设置要点:

Chcp = 936 表示gbk,nls_lang设置如下:

set NLS_LANG=simplifiedchinese_china.zhs16gbk

客户端系统的编码是什么,nls_lang就需要设成什么编码。Oracle在存储数据时,会对接收到的数据根据nls_lang的编码进行解码,然后再以oracle数据的编码存入数据库。

一、参数文件生成

空闲实例可以把pfile与spfile互转

Pfile(文本文件):客户端文件,可以放在其它位置 。

Spfile(二进制文件):服务端文件,只能放在database下,但可以用pfile中指定位置。

Create pfile from spfile;

Create spfile from pfile;

注意点:修改参数前,最好先生成一个pfile文件。

c8bc1f7945a3c7befb30cc0e90ccfc22.png

把spfile 与pfile移动到别的地方启动:

5ba64fad71c3d5f22f1ccc8485b760c4.png

若是有initsid.ora文件,则可以把initsid.ora文件放到database目录下,或者用指定方法启动:

b2771952fa9b0af2109d347628fd5e45.png

SQL> startup nomountpfile='D:\ORACLE\PRODUCT\11.2.0\DBHOME_1\DATABASE\bak\inith

xw168.ora'

指定参数启动的,不能直接create spfile from pfile;

7652f564b05508e8f4c992d5fd00e312.png

6eb39c2764309850fa698850940db7dc.png

关掉实例,重新 startup nomount即可启动。

二、spfile文件移动位置

在database目录下创建initsid.ora文件,在里面只写以下内容:

spfile='D:\oracle\product\11.2.0\dbhome_1\database\bak\SPFILEHXW168.ORA'

spfile文件的位置。如下图:

show parameter spfile;后可以查到现在使用的spfile是在bak目录下面。

6b3ff1954b45b23af9fd8a0a5f6585c3.png

三、添加或删除控制文件

参数文件记录控制文件位置,控制文件位置:

D:\ORACLE\ORADATA\HXW168\CONTROL01.CTL

D:\ORACLE\FLASH_RECOVERY_AREA\HXW168\CONTROL02.CTL

516a370220124932f1430cbbef369c96.png

把其中D:\ORACLE\ORADATA\HXW168\CONTROL01.CTL文件移走,启动如下:

2023b25b80829573eb0e4d9e221bf283.png

46870b1e6d74e090f4fca891642e7221.png

Alter日志如下:

8de79aae979b355c4c65b315bf3883b9.png

有二个方法可以解决:

1、由于控制文件是互相镜像,把另一个控制文件复制过来并改名,即可。

2、在参数文件中把这个控制文件信息删除,操作步骤如下:

查看control_files参数类型,可以看到false:表示修改后需要重启生效。

62fbecebf9f89b44cf1215eba4a9c117.png

SQL> alter system setcontrol_files='D:\ORACLE\FLASH_RECOVERY_AREA\HXW168\CONTRO

L02.CTL';这样会报错,所以需要加上scope=spfile;

33dbd0ee5f22c4c8694b104f850c5fa0.png

关闭数据库再启动到nomount下,可以看到只有一个控制文件了:

07f82925429b601183286d30b5185990.png

可以正常进入mount状态

058045db7d45a2d3e77d23488d27c10e.png

把D:\ORACLE\ORADATA\HXW168\CONTROL01.CTL添加回去。命令如下:

SQL> alter system set control_files='D:\ORACLE\FLASH_RECOVERY_AREA\HXW168\CONTRO

L02.CTL’,’D:\ORACLE\ORADATA\HXW168\CONTROL01.CTL'scope=spfile;

关闭数据库,把D:\ORACLE\FLASH_RECOVERY_AREA\HXW168\CONTROL02.CTL文件复制到并改名D:\ORACLE\ORADATA\HXW168\CONTROL01.CTL。

682fb9dfb1bc279678dfca7b1ecacb7e.png

三、参数设置

1、修改session的参数

Alter nls_date_format=’yyyy/mm/ddhh24:mi:ss’;

2、修改系统的参数

Alter system set control_files=’path1’,'path2'scope=spfile;

3、查看参数默认值

--查看参数有什么值

select * from v$parameter_valid_valueswhere name='audit_trail'

--查看参数是什么静态还是动态

select * from v$system_parameter wherename='audit_trail'

ISSYS_MODIFIABLE:

False:重启后生效,需要指定scope=spfile;

IMMEDIATE:更改后马上生效。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值