签到成功

知道了

CNDBA社区CNDBA社区

Oracle 12c 中手工创建ASM 实例步骤

2016-09-06 21:55 5475 0 原创 Oracle 18c
作者: dave


 

 

在上篇中我们看了12c中创建单实例ASM 环境的方法:

Oracle 12c 基于ASM 的单实例 搭建手册

http://www.cndba.cn/dave/article/239

 

文章里采用的是asmca来创建的ASM 实例。 我们这里来看下不使用ASMCA,而是手工来创建ASM 实例的方法。 http://www.cndba.cn/dave/article/240http://www.cndba.cn/dave/article/240

 

他们的区别是用asmca的情况下,ASM 实例的spfile 必须存放在磁盘组。 手工创建的ASM 实例更灵活,我们直接放本地进行操作。

 http://www.cndba.cn/dave/article/240

1         安装GRID

 

Grid 安装部分我们不在说明,具体可以参考上篇文章。

 

[root@dave ~]# crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details      
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ons
               OFFLINE OFFLINE      dave                     STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
      1        ONLINE  ONLINE       dave                     STABLE
ora.diskmon
      1        OFFLINE OFFLINE                               STABLE
ora.evmd
      1        ONLINE  ONLINE       dave                     STABLE
--------------------------------------------------------------------------------
[root@dave ~]#

 

 

 

2         创建参数文件

 http://www.cndba.cn/dave/article/240

grid用户的$ORACLE_HOME/dbs目录下创建init+ASM.ora文件并添加如下内容:

http://www.cndba.cn/dave/article/240

 

*.asm_diskstring='/dev/oracleasm/disks/*'
*.asm_power_limit=1
*.large_pool_size=12M
*.instance_type='asm'
*.remote_login_passwordfile='EXCLUSIVE'

 

 http://www.cndba.cn/dave/article/240

3         设置环境变量并启动ASM 实例

 

[grid@dave dbs]$ cat ~/.bash_profile
# .bash_profile
 
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
         . ~/.bashrc
fi
 
# User specific environment and startup programs
 
PATH=$PATH:$HOME/.local/bin:$HOME/bin
 
export PATH
 
export ORACLE_SID=+ASM
export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/12.1.0/grid
export PATH=$ORACLE_HOME/bin:$PATH:/usr/local/bin/:.
export TEMP=/tmp
export TMP=/tmp
export TMPDIR=/tmp
umask 022
 
 
[grid@dave dbs]$ sqlplus / as sysasm
 
SQL*Plus: Release 12.1.0.2.0 Production on Thu Dec 24 11:43:00 2015
 
Copyright (c) 1982, 2014, Oracle.  All rights reserved.
 
Connected to an idle instance.
 
SQL> startup
ASM instance started
 
Total System Global Area 1140850688 bytes
Fixed Size              2933400 bytes
Variable Size               1112751464 bytes
ASM Cache                   25165824 bytes
ORA-15110: no diskgroups mounted
 
 
SQL>
 
[grid@dave ~]$ ps -ef|grep asm
grid     20190 19653  0 11:42 pts/1    00:00:00 sqlplus   as sysasm
grid     20207     1  0 11:44 ?        00:00:00 asm_pmon_+ASM
grid     20209     1  0 11:44 ?        00:00:00 asm_psp0_+ASM
grid     20211     1  2 11:44 ?        00:00:01 asm_vktm_+ASM
grid     20215     1  0 11:44 ?        00:00:00 asm_gen0_+ASM
grid     20217     1  0 11:44 ?        00:00:00 asm_mman_+ASM
grid     20221     1  0 11:44 ?        00:00:00 asm_diag_+ASM
grid     20223     1  0 11:44 ?        00:00:00 asm_dia0_+ASM
grid     20225     1  0 11:44 ?        00:00:00 asm_dbw0_+ASM
grid     20227     1  0 11:44 ?        00:00:00 asm_lgwr_+ASM
grid     20229     1  0 11:44 ?        00:00:00 asm_ckpt_+ASM
grid     20231     1  0 11:44 ?        00:00:00 asm_smon_+ASM
grid     20233     1  0 11:44 ?        00:00:00 asm_lreg_+ASM
grid     20235     1  0 11:44 ?        00:00:00 asm_pxmn_+ASM
grid     20237     1  0 11:44 ?        00:00:00 asm_rbal_+ASM
grid     20239     1  0 11:44 ?        00:00:00 asm_gmon_+ASM
grid     20241     1  0 11:44 ?        00:00:00 asm_mmon_+ASM
grid     20243     1  0 11:44 ?        00:00:00 asm_mmnl_+ASM
grid     20282 19117  0 11:45 pts/0    00:00:00 grep --color=auto asm
[grid@dave ~]$

 

4         添加到crs

 

http://www.cndba.cn/dave/article/240

手工创建的ASM 实例需要把ASM 实例单独的添加到CRS中。 否则会报如下错误:

ORA-29786: SIHA attribute GET failed with Error If 11gR2 ASM instance is created manually [ID 976075.1]

 

另外,如果不注册的话,执行asmca,还是会认为没有ASM实例,提示需要创建。

 

SQL> create spfile from pfile;
create spfile from pfile
*
ERROR at line 1:
ORA-29786: SIHA attribute GET failed with error [Attribute 'SPFILE' sts[200]
lsts[0]]
 
 
[grid@dave ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details      
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.ons
               OFFLINE OFFLINE      dave                     STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
      1        ONLINE  ONLINE       dave                     STABLE
ora.diskmon
      1        OFFLINE OFFLINE                               STABLE
ora.evmd
      1        ONLINE  ONLINE       dave                     STABLE
--------------------------------------------------------------------------------
[grid@dave ~]$
 
 
[grid@dave ~]$ srvctl add asm -p $ORACLE_HOME/dbs/init+ASM.ora -d '/dev/oracleasm/disks/*'
[grid@dave ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details      
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.asm
               OFFLINE OFFLINE      dave                     STABLE
ora.ons
               OFFLINE OFFLINE      dave                     STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
      1        ONLINE  ONLINE       dave                     STABLE
ora.diskmon
      1        OFFLINE OFFLINE                               STABLE
ora.evmd
      1        ONLINE  ONLINE       dave                     STABLE
--------------------------------------------------------------------------------
[grid@dave ~]$

 

如果要加监听,语法如下:

srvctl add asm -l listener -p $ORACLE_HOME/dbs/init+ASM.ora -d '/dev/oracleasm/disks/*'
 
 
[grid@dave ~]$ crsctl start resource -all
CRS-5702: Resource 'ora.cssd' is already running on 'dave'
CRS-5702: Resource 'ora.evmd' is already running on 'dave'
CRS-2501: Resource 'ora.ons' is disabled
CRS-2672: Attempting to start 'ora.asm' on 'dave'
CRS-2672: Attempting to start 'ora.diskmon' on 'dave'
CRS-2676: Start of 'ora.diskmon' on 'dave' succeeded
CRS-2676: Start of 'ora.asm' on 'dave' succeeded
CRS-4000: Command Start failed, or completed with errors.
 
[grid@dave ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details      
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.asm
               ONLINE  ONLINE       dave                     Started,STABLE
ora.ons
               OFFLINE OFFLINE      dave                     STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
      1        ONLINE  ONLINE       dave                     STABLE
ora.diskmon
      1        OFFLINE OFFLINE                               STABLE
ora.evmd
      1        ONLINE  ONLINE       dave                     STABLE
--------------------------------------------------------------------------------
[grid@dave ~]$
 
--创建SPFILE:
SQL> create spfile='$ORACLE_HOME/dbs/spfile+ASM.ora' from pfile='$ORACLE_HOME/dbs/init+ASM.ora';
File created.

 

 

 

5         创建磁盘组

 

这里使用的是ASMLIB

SQL> create diskgroup DISK1 external redundancy disk '/dev/oracleasm/disks/DISK1' attribute 'sector_size'='4096';
 
Diskgroup created.
 
[grid@dave ~]$ asmcmd lsdg
State    Type    Rebal  Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
MOUNTED  EXTERN  N        4096   4096  1048576    102400   102350                0          102350              0             N  DISK1/
[grid@dave ~]$

 

6         验证

SQL> show parameter asm
 
NAME                                        TYPE        VALUE
------------------------------------ ----------- ------------------------------
asm_diskgroups                              string      DISK1
asm_diskstring                                string      /dev/oracleasm/disks/*
asm_power_limit                 integer    1
asm_preferred_read_failure_groups    string

 http://www.cndba.cn/dave/article/240

在单实例的ASM 环境中不能使用crsctl stop crs 进行操作,只能使用如下语法:

 

[grid@dave dbs]$ crsctl stop res -all
CRS-2500: Cannot stop resource 'ora.diskmon' as it is not running
CRS-2500: Cannot stop resource 'ora.ons' as it is not running
CRS-2673: Attempting to stop 'ora.asm' on 'dave'
CRS-2673: Attempting to stop 'ora.evmd' on 'dave'
CRS-2677: Stop of 'ora.evmd' on 'dave' succeeded
CRS-2677: Stop of 'ora.asm' on 'dave' succeeded
CRS-2673: Attempting to stop 'ora.cssd' on 'dave'
CRS-2677: Stop of 'ora.cssd' on 'dave' succeeded
CRS-4000: Command Stop failed, or completed with errors.
 
[grid@dave dbs]$ crsctl start res -all
CRS-2501: Resource 'ora.ons' is disabled
CRS-2672: Attempting to start 'ora.cssd' on 'dave'
CRS-2672: Attempting to start 'ora.diskmon' on 'dave'
CRS-2672: Attempting to start 'ora.evmd' on 'dave'
CRS-2676: Start of 'ora.diskmon' on 'dave' succeeded
CRS-2676: Start of 'ora.evmd' on 'dave' succeeded
CRS-2676: Start of 'ora.cssd' on 'dave' succeeded
CRS-2672: Attempting to start 'ora.asm' on 'dave'
CRS-2676: Start of 'ora.asm' on 'dave' succeeded
CRS-4000: Command Start failed, or completed with errors.
 
 
[grid@dave dbs]$ crsctl stat res -t
--------------------------------------------------------------------------------
Name           Target  State        Server                   State details      
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.asm
               ONLINE  ONLINE       dave                     Started,STABLE
ora.ons
               OFFLINE OFFLINE      dave                     STABLE
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
      1        ONLINE  ONLINE       dave                     STABLE
ora.diskmon
      1        OFFLINE OFFLINE                               STABLE
ora.evmd
      1        ONLINE  ONLINE       dave                     STABLE
--------------------------------------------------------------------------------
[grid@dave dbs]$

 

 

http://www.cndba.cn/dave/article/240

 


http://www.cndba.cn/dave/article/240

版权声明:本文为博主原创文章,未经博主允许不得转载。

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
dave

dave

关注

人的一生应该是这样度过的:当他回首往事的时候,他不会因为虚度年华而悔恨,也不会因为碌碌无为而羞耻;这样,在临死的时候,他就能够说:“我的整个生命和全部精力,都已经献给世界上最壮丽的事业....."

  • 2261
    原创
  • 3
    翻译
  • 578
    转载
  • 191
    评论
  • 访问:7969410次
  • 积分:4346
  • 等级:核心会员
  • 排名:第1名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ