视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
RAC环境中使用createpfileformspfile出现问题
2020-11-09 14:56:34 责编:小采
文档


RAC环境中使用create pfile form spfile出现问题

一、问题解决

1、 查看正常RAC中有关,parameter记录

节点spfile 位置

SQL> show parameter pfile

NAME TYPE VALUE

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

spfile string +BACKUP_DISK/racdb/spfileracdb

.ora

服务器上pfile内容

[ora@rac1-21 dbs]$ cat initracdb1.ora

SPFILE='+BACKUP_DISK/racdb/spfileracdb.ora'

2、 使用create pfile from spfile;

SQL> create pfile from spfile;

File created.

此时服务器上pfile内容

[ora@rac1-21 dbs]$ cat initracdb1.ora
SPFILE='+BACKUP_DISK/racdb/spfileracdb.ora'
[ora@rac1-21 dbs]$ cat initracdb1.ora
racdb2.__db_cache_size=121634816
racdb1.__db_cache_size=121634816
racdb2.__java_pool_size=4194304
racdb1.__java_pool_size=4194304
racdb2.__large_pool_size=4194304
racdb1.__large_pool_size=4194304
racdb2.__shared_pool_size=88080384
racdb1.__shared_pool_size=88080384
racdb2.__streams_pool_size=0
racdb1.__streams_pool_size=0
*.audit_file_dest='/u01/Oracle/admin/racdb/adump'
*.background_dump_dest='/u01/oracle/admin/racdb/bdump'
*.cluster_database_instances=2
*.cluster_database=true
*.compatible='10.2.0.1.0'
*.control_files='+BACKUP_DISK/racdb/controlfile/current.256.871700359'
*.core_dump_dest='/u01/oracle/admin/racdb/cdump'
*.db_block_size=8192
*.db_create_file_dest='+BACKUP_DISK'
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='racdb'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=racdbXDB)'
racdb2.instance_number=2
racdb1.instance_number=1
*.job_queue_processes=10
*.open_cursors=300
*.pga_aggregate_target=73400320
*.processes=150
*.remote_listener='LISTENERS_RACDB'
*.remote_login_passwordfile='exclusive'
*.sga_target=220200960
racdb2.thread=2
racdb1.thread=1
*.undo_management='AUTO'
racdb1.undo_tablespace='UNDOTBS1'
racdb2.undo_tablespace='UNDOTBS2'
*.user_dump_dest='/u01/oracle/admin/racdb/udump'

**.undo_management='AUTO' 为共享的参数

racdb2.thread=2

racdb1.thread=1

为节点单独使用的

重启之后,oracle使用了节点本地的pfile,不能使用共享存储上spfile了,这样很不方便以后的管理。

SQL> show parameter pfile

NAME TYPE VALUE

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

spfile string

oracle使用节点本地的参数文件,而不使用共享存储的参数文件,这样的问题怎么解决呢?

3、 解决方法:

修改oracle中pfile指向位置为共享存储的参数文件即可。(指针)

[ora@rac1-21 dbs]$ cat initracdb1.ora

sPFILE='+BACKUP_DISK/racdb/spfileracdb.ora'

重启数据库

SQL> show parameter pfile

NAME TYPE VALUE

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

spfile string +BACKUP_DISK/racdb/spfileracdb

.ora

OK!问题解决了。

二、思考与总结

思考:RAC启动参数文件位置的奥秘?

RAC中,,启动参数文件是不是ORACLE先去找本地的参数文件,然后本地指向共享存储中的文件,这样的方式,参数文件才得以在共享磁盘上多个节点进行共享呢?

为了证明我的想法,觉得把pfile修改名。看看oracle能否找到共享存储中的参数文件呢?

[ora@rac1-21 dbs]$ mv initracdb1.ora initracdb1.ora_bk

SQL> startup

ORA-01078: failure in processing system parameters

LRM-00109: could not open parameter file '/u01/oracle/product/10.2.0/db_1/dbs/initracdb1.ora'

恢复pfile的名称

[ora@rac1-21 dbs]$ mv initracdb1.ora_bk initracdb1.ora

SQL> startup

ORACLE instance started.

Total System Global Area 222298112 bytes

Fixed Size 1218628 bytes

Variable Size 970972 bytes

Database Buffers 121634816 bytes

Redo Buffers 2973696 bytes

Database mounted.

Database opened.

显然,数据库开启使用节点本地的pfile,只要本地的参数文件或指向参数文件正确。数据库就可以启动

总结:RAC数据库启动也是先使用默认的位置SPFILE,PFILE等文件。如果有指向,oracle就会使用指向共享存储的位置parameter文件。

本文永久更新链接地址:

下载本文
显示全文
专题