犯困,就动手做个修改spfile路径测试可好

  Oracle DBA 又回来了,离开了两年零三个月,我又回来了,满血复活。为什么说又回来了,因为在从15年开始我就开始搞MySQL、MongoDB、redis和hbase,这两年很是辛苦,失去了很多,也收获了很多。对互联网行业的开源数据库有了比较深刻的理解,认识了很多北上广深的的朋友,虽然未曾见面,也都保持了联系,经常会一起做技术交流。


    下面就是做一个小测试,看看扔了两年的oracle 数据库,是不是生分了,随便也精神精神,免得下午犯困。


一、环境描述

11g rac 虚拟化测试环境


二、实操

1)查看当前spfile 位置

[oracle@ysdb1 dbs]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Tue Jun 27 13:32:20 2017

Copyright (c) 1982, 2013, Oracle.  All rights reserved.



Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,

Data Mining and Real Application Testing options


SYS@ysdb1>show parameter spfile;

NAME                                 TYPE        VALUE

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

spfile                               string      +DATA1/ysdb/spfileysdb.ora


2)备份pfile,生成新的spfile

SYS@ysdb1>create pfile='/tmp/pfile.ora' from spfile;

File created.


SYS@ysdb1>create spfile='+data1/ysdb/parameter/spfileysdb.ora' from pfile='/tmp/pfile.ora';

create spfile='+data1/ysdb/parameter/spfileysdb.ora' from pfile='/tmp/pfile.ora'

*

ERROR at line 1:

ORA-17502: ksfdcre:4 Failed to create file +data1/ysdb/parameter/spfileysdb.ora

ORA-15173: entry 'parameter' does not exist in directory 'ysdb'



SYS@ysdb1>create spfile='+data1/ysdb/ysdbspfile.ora' from pfile='/tmp/pfile.ora';

File created.

SYS@ysdb1>


3)修改pfile(多个节点)

[oracle@ysdb1 dbs]$ more initysdb1.ora

SPFILE='+DATA1/ysdb/spfileysdb.ora'

[oracle@ysdb1 dbs]$ echo "spfile='+DATA1/ysdb/ysdbspfile.ora'" > initysdb1.ora 

[oracle@ysdb1 dbs]$ less initysdb1.ora

spfile='+DATA1/ysdb/ysdbspfile.ora'

[oracle@ysdb1 dbs]$ 


[root@ysdb2 ~]# su - oracle

[oracle@ysdb2 ~]$ cd $ORACLE_HOME/dbs

[oracle@ysdb2 dbs]$ less initysdb2.ora 

SPFILE='+DATA1/ysdb/spfileysdb.ora'

[oracle@ysdb2 dbs]$ echo "spfile='+DATA1/ysdb/ysdbspfile.ora'" > initysdb2.ora 

[oracle@ysdb2 dbs]$ less initysdb2.ora 

spfile='+DATA1/ysdb/ysdbspfile.ora'

[oracle@ysdb2 dbs]$ 


4)通过srvctl 修改OCR中的spfile路径

[oracle@ysdb2 ~]$ srvctl modify database -d ysdb -p +DATA1/ysdb/ysdbspfile.ora 


5)重启数据库验证spfile路径

[oracle@ysdb2 ~]$ srvctl stop database -d ysdb

PRCC-1016 : ysdb was already stopped

[oracle@ysdb2 ~]$ srvctl start database -d ysdb 

[oracle@ysdb2 ~]$ sqlplus / as sysdba


SQL*Plus: Release 11.2.0.4.0 Production on Tue Jun 27 13:53:00 2017

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,

Data Mining and Real Application Testing options


SYS@ysdb2>show parameter spfile;

NAME                                 TYPE        VALUE

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

spfile                               string      +DATA1/ysdb/ysdbspfile.ora

SYS@ysdb2>


三、小结

    1)有事没事多实际动手操作操作,孰能生巧。

    2)多去对比不通数据库之间的区别,看看它们之间的优缺点,然后你就知道了,什么场景该用什么数据库了,今后做数据库选型也会容易的多。

    3)文档还是需要坚持写,不一定是很深奥,很难的,很牛逼的。做好记录就可以了。










本文转自 roidba 51CTO博客,原文链接:http://blog.51cto.com/roidba/1942387,如需转载请自行联系原作者
上一篇:Codeforces Round #752 (Div. 2)补题题解


下一篇:Codeforces Round #753(Div.3)A~D 题解