暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle DB管理ASM实例(1)

Oracle微学堂 2021-07-14
1084

• 描述使用ASM 的好处

• 管理ASM 实例

• 创建和删除ASM 磁盘组

• 扩展ASM 磁盘组

• 通过使用各种实用程序检索ASM 元数据

  • Automatic     Storage Management

Automatic Storage Management (ASM) 将文件系统与卷管理器纵向集成在一起,这是一项专门为Oracle DB 文件建立的技术。使用ASM 可管理单个对称多处理(SMP) 计算机,或通过管理集群的多个节点来支持Oracle Real Application Clusters (RAC)。

ASM 在所有可用的资源中分布输入/输出(I/O) 负载,以在免除手动I/O 优化的同时优化性能。ASM 帮助DBA 管理动态数据库环境,让DBA 在不关闭数据库的情况下,通过增加数据库的大小来调整存储分配。

ASM 通过提供数据的冗余副本来提供容错能力,ASM 也可以建立在供应商提供的存储机制上。数据管理是通过为数据类选择所需的可靠性和性能特性(而不是逐个文件地进行人为交互)来实现的。

通过自动处理手动存储,ASM 功能节省了DBA 的时间,从而提高了管理员管理更多和更大数据库的能力,而且效率也会更高。

  • ASM主要功能和优点

• 对文件而不是逻辑卷进行条带化

• 提供联机磁盘重新配置和动态重新平衡功能

• 允许调整重新平衡速度

• 以每个文件为基础提供冗余

• 只支持Oracle DB 文件

• 可识别集群

• 可自动安装

ASM 将文件划分为区(不同于前面讨论的数据文件区),而且将每个文件的区均匀分布在所有磁盘上。ASM 使用索引技术跟踪每个区的位置。存储容量发生变化时,ASM 不会重新对所有数据进行条带化,而是根据添加或删除的存储量,按比例移动一定数量的数据,以重新平均分配文件,并在磁盘间保持负载平衡。此操作可在数据库处于活动状态时执行。可以提高重新平衡操作的速度,以便更快地完成操作;也可以降低速度,以减少对I/O 子系统的影响。ASM 还提供了镜像保护,因此不必再购买第三方的逻辑卷管理器。

ASM 的一个特有优势是可基于文件而不是卷进行镜像。因此,同一磁盘组可以包含镜像文件或非镜像文件的组合。

ASM 支持数据文件、日志文件、控制文件、归档日志、Recovery Manager (RMAN) 备份集及其它Oracle DB 文件类型。ASM 还支持RAC,这样就不再需要集群逻辑卷管理器或集群文件系统。

  • ASM概念

ASM 不会妨碍先前存在的数据库功能。现有数据库能够像平常一样工作。可以将新文件创建为ASM 文件,继续按原有的方式管理现有文件,也可以最终将这些文件移植到ASM。


图表描述了使用ASM 的Oracle DB 中的各种存储组件之间存在的关系。图表的左侧部分和中间部分显示了在以前版本中存在的关系。

右侧部分是ASM 引入的新概念。

数据库文件可以存储为ASM 文件。新层次的顶部是ASM 磁盘组。任何单个ASM 文件只能包含在一个磁盘组中

不过,一个磁盘组中可以包含属于多个数据库的多个文件,并且单个数据库可以使用来自多个磁盘组的存储空间。

一个磁盘组由多个ASM 磁盘组成,但每个ASM 磁盘只能属于一个磁盘组。

ASM 文件总是分布在该磁盘组中的所有ASM 磁盘上。

ASM 磁盘按分配单元进行分区。分配单元(AU) 是ASM 分配的最小连续磁盘空间。

创建磁盘组时,可以将ASM AU 大小设置为2 的幂(1、2、4、8、16、32 或64),范围在1 MB 到64 MB 之间。

对于使用大量顺序读取操作的数据仓库应用程序,较大的AU 大小通常会提供性能优势。

注:图中的图形只显示了一种ASM 文件:数据文件。不过,ASM 也可用于存储其它类型的数据库文件。

  • ASM 对于管理员的好处

使用ASM 可以免除:

• I/O 性能优化

• 数据文件移动和重新组织

• 文件名管理

• 逻辑卷管理

• 文件系统管理

• 集群文件系统管理

• 裸设备管理


使用ASM 可以显著减少:

• 逻辑单元号(LUN) 管理

– 逻辑单元数量较少,大小较大

• 数据库管理员对系统管理员的依赖性

• 手动执行维护任务时可能发生的错误


使用ASM 可以免除非ASM 存储环境中许多必不可少的任务。其中包括:

• I/O 性能优化:ASM 采用条带化和镜像所有内容的策略,且执行自动重新平衡操作,这意味着不再需要旨在平衡磁盘使用以及消除磁盘热点的I/O 性能优化。

• 数据文件移动和重新组织:不再需要更改数据文件的位置来满足性能要求和空间约束条件。

• 文件名管理:不再需要定义和强制执行文件命名策略。

• 逻辑卷、文件系统、集群文件系统和裸设备管理:不再需要这些存储元素。

 

使用ASM 可以减少下列重要方面的工作,从而提供更多好处:

• 逻辑单元号(LUN) 管理工作减少,因为ASM 通常需要的逻辑单元较少且大小较大。

• 数据库管理员与系统管理员之间通常存在的依赖性将大大减少。例如,添加新数据文件或将磁盘资源从一个磁盘组移至另一磁盘组时不再需要系统管理员干预。

• 手动执行维护任务时可能发生的错误将大大减少。例如,使用常规文件系统时,新建数据文件时可能不慎违反了文件命名惯例,导致数据库的其余部分不支持该文件。

 

  • ASM 实例

ASM 实例是ASM 的进程和内存组件的组合。

每次启动ASM 或数据库时,都会分配名为系统全局区(SGA) 的共享内存区域并启动Oracle ASM 或数据库后台进程。

后台进程和SGA 的组合称为Oracle ASM 实例或Oracle DB 实例。

ASM 实例中的SGA 与数据库实例中的SGA 在内存分配和使用方面是不同的。

 

ASM 实例中的SGA 分为四个主要区域,如下所示:

• 共享池:用于元数据信息

• 大型池:用于并行操作

• ASM 高速缓存:用于在重新平衡操作期间读取和写入块

• 空闲内存:可用的未分配内存

 

ASM 的建议最低内存量为256MB。ASM 实例默认启用自动内存管理,该功能将动态优化各个SGA 内存组件的大小。

ASM 实例所需的内存量将取决于ASM管理的磁盘空间量。

ASM 实例的第二部分是后台进程。ASM实例可以具有许多后台进程;并不是所有进程始终都会出现。

 

ASM 功能的后台进程分为必需和可选两种。其中一些进程如下所示:

• ARCn:归档进程

• CKPT:检查点进程

• DBWn:数据库写进程

• DIAG:诊断进程

• Jnnn:作业队列进程

• LGWR:日志写进程

• PMON:进程监视器进程

• PSP0:进程衍生进程

• QMNn:队列监视器进程

• RECO:恢复器进程

• SMON:系统监视器进程

• VKTM:虚拟计时器进程

• MMAN:内存管理器进程

以上进程列表不是完整列表。对于ASM 实例,这些进程并不总是执行它们在数据库实例中执行的任务。

例如,数据库实例中的LGWR进程负责将更改向量从SGA 的日志缓冲区部分复制到磁盘上的联机重做日志。

ASM 实例的SGA 中不包含日志缓冲区,该实例也不使用联机重做日志。

ASM 实例中的LGWR进程将事件记录信息复制到ASM 磁盘组。

如果ASM 是以集群方式建立的,则将在ASM 实例中运行与集群管理相关的附加进程。

其中一些进程如下所示:

• LMON:全局入队服务监视器进程

• LMDn:全局入队服务守护程序

• LMSn:全局高速缓存服务进程

• LCKn:锁定进程

 

  • ASM 组件:ASM 实例 - 主要进程

ASM 实例的主要进程负责与ASM相关的活动。

ASM 实例使用专用的后台进程完成其大部分功能。

RBAL进程在自动存储管理实例中协调磁盘组的重新平衡活动。它负责对自动存储管理磁盘执行全局打开操作。

ARBn进程在自动存储管理实例中执行实际的重新平衡数据区移动。可能同时存在多个这样的进程,这些进程名为ARB0、ARB1等等。

GMON进程维护ASM 磁盘组中的磁盘成员资格。在向脱机磁盘写入失败后,MARK进程将ASM 分配单元标记为过时。

Onnn进程表示客户机/服务器连接的服务器端。启动实例时将出现这些进程,之后它们将消失。

它们形成与ASM 实例的一组连接,用于交换消息,仅在需要时才出现。

PZ9n进程表示一个或多个并行从属进程,当ASM 同时在多台计算机上以集群配置运行时,可以使用该进程提取数据。

4、ASM 实例初始化参数

INSTANCE_TYPE = ASM

ASM_POWER_LIMIT = 1

ASM_DISKSTRING = '/dev/sda1','/dev/sdb*'

ASM_DISKGROUPS = DATA2, FRA

ASM_PREFERRED_READ_FAILURE_GROUPS =DATA.FailGroup2

DIAGNOSTIC_DEST = u01/app/oracle

LARGE_POOL_SIZE = 12M

REMOTE_LOGIN_PASSWORDFILE = EXCLUSIVE

 

ASM 实例由参数文件控制,其方式与常规数据库实例相同。通常设置的参数包括:

• INSTANCE_TYPE应该设置且必须为ASM,表示ASM 实例,标识要启动的实例是ASM,而不是数据库实例。这是唯一一个必须定义的参数。对于数据库实例,该参数值设置为RDBMS。


• ASM_POWER_LIMIT:控制重新平衡操作的速度即指定磁盘rebalance的程度。值的范围从1 到11,11 表示最快。如果省略,该值默认为1。指定的级别越高,则rebalance的操作就会越快被完成,当然这也意味着这个时间段内将占用更多的资源,指定级别较低的话,随人rebalance操作会耗时更久,但对当前系统的IO及负载影响会更少,这需要根据实际情况衡量。另外,这个参数指定的只是一个默认值,在操作过程中,即可以随时动态更改,也可以在语句级命令行时指定power,覆盖该默认值。


修改ASM实例初始化参数文件的命令规则与数据库初始化参数完全相同,比如说:

SQL> alter system set asm_power_limit=5;

System altered.

• ASM_DISKSTRING是一个与操作系统相关的值,ASM 使用它来限制搜索时考虑的磁盘集即是设置ASM启动时检查的磁盘,该选项可以同时指定多个值,并且支持通配符。比如只检查/DEV/SD*。默认值为空字符串,为空的话,表示ASM将查找系统中所有ASM拥有读写权限的设备。这在大多数情况下就足够了。如上所示的约束性更强的值可以减少ASM 执行搜索所需的时间,从而提高磁盘组装载次数。

• ASM_DISKGROUPS:是ASM 实例启动时或使用ALTERDISKGROUP ALL MOUNT命令时,ASM 实例要装载的磁盘组的名称列表。如果为空的话,那么实际就仅仅启动到nomount状态。如果使用SPFILE的话,该参数一般不需要手动修改,ASM能够自动更新该初始化参数中的值。

Oracle Restart 会装载列为相关磁盘组的磁盘组,即使这些磁盘组未与ASM_DISKGROUPS参数列在一起也是如此。该参数没有默认值。

 

• ASM_PREFERRED_READ_FAILURE_GROUPS指定包含首选读取磁盘的故障组。对于包含数据的镜像副本且有一个副本非常接近于服务器的扩展或延伸集群数据库,该参数非常有用。

• DIAGNOSTIC_DEST指定自动诊断资料档案库(ADR) 主目录的位置。此目录下有跟踪文件、预警日志、核心文件和意外事件文件。此参数的默认值由ORACLE_BASE的值派生。

• LARGE_POOL_SIZE指定大型池分配堆的大小(以字节表示)。大型池分配堆用于共享服务器系统中的会话内存,供消息缓冲区的并行执行和磁盘I/O 缓冲区的备份进程使用。ASM 实例使用自动内存管理,所以此参数用作大型池不能低于的最小大小。

• REMOTE_LOGIN_PASSWORDFILE指定Oracle 软件是否检查口令文件。默认值为EXCLUSIVE。

 

上面列出的八个参数是需要为ASM 实例创建的唯一几个非默认参数。ASM 实例与数据库实例不同,因为并不是所有的数据库参数都对ASM 实例有效。在全部344 个数据库实例参数中,大约有74 个参数可以用于ASM 实例。对于上面未列出的其它参数,虽然其默认值对于大多数安装来说应该已经足够了,但也可以根据需要进行设置。

注:ASM 实例默认启用自动内存管理,即使未明确设置MEMORY_TARGET参数也是如此。

该参数是全面ASM 内存管理唯一需要设置的参数。Oracle Corporation 强烈建议对ASM 实例使用自动内存管理。

 

  • 数据库实例与ASM 之间的交互

 

文件创建过程可以很好地说明数据库实例与ASM 之间发生的交互。文件创建过程如下所示:

1. 数据库请求创建文件。

2. ASM 前台进程创建一个持续操作目录(COD) 条目并在磁盘组中为新的文件分配空间。

3. ASMB 数据库进程接收新文件的区映射。

4. 现在文件处于打开状态,数据库进程直接初始化该文件。

5. 初始化后,数据库进程请求提交文件创建。这会导致ASM 前台进程清除COD 条目并将文件标记为已创建。

6. 文件提交确认会隐式关闭该文件。将来发生I/O 时,数据库实例需要重新打开该文件。

 

此示例强调了关于ASM 体系结构的重要两点:

• 数据库实例和ASM 实例协同工作。数据库实例必须与ASM 交互,以便将数据库文件映射到ASM 区。

数据库实例还接收与ASM 操作(例如磁盘组重新平衡)相关的持续消息流,这类操作可能锁定或移动ASM 区。

• 数据库I/O 不通过ASM 实例来传输。实际上,数据库直接根据ASM 文件执行I/O 操作,如步骤4 所示

  • ASM 实例:动态性能视图

对于任何实例而言,其主要功能之一就是存储基于内存的元数据表。这些表以前缀X$开头并且通常不进行记录。

以前缀V$开头的一系列动态性能视图用于以定制形式显示X$内存表中包含的数据。这类信息以只读方式提供,仅具有权限的管理员可以访问。

使用SQL 语言从ASM 检索这类信息。

 

ASM 实例托管基于内存的元数据表,这些表通过动态性能视图呈现。

• ASM 实用程序使用SQL 语言访问这些表来检索仅含元数据的信息

• 包含许多专用的ASM 相关视图,例如:

sys@TEST0924> select * from dict wheretable_name like 'V$ASM_%';

TABLE_NAME                    COMMENTS

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

V$ASM_ACFSSNAPSHOTS           Synonym for V_$ASM_ACFSSNAPSHOTS

V$ASM_ACFSVOLUMES             Synonym for V_$ASM_ACFSVOLUMES

V$ASM_ACFS_ENCRYPTION_INFO    Synonym for V_$ASM_ACFS_ENCRYPTION_INFO

V$ASM_ACFS_SECURITY_INFO      Synonym for V_$ASM_ACFS_SECURITY_INFO

V$ASM_ALIAS                   Synonym for V_$ASM_ALIAS--记录文件别名信息

V$ASM_ATTRIBUTE               Synonym for V_$ASM_ATTRIBUTE

V$ASM_CLIENT                  Synonym for V_$ASM_CLIENT--返回当前连接的客户端实例信息

V$ASM_DISK                    Synonym for V_$ASM_DISK---V$ASM_DISK*相关视图中记录的是ASM管理的磁盘及磁盘组信息

V$ASM_DISKGROUP               Synonym for V_$ASM_DISKGROUP

V$ASM_DISKGROUP_STAT           Synonym forV_$ASM_DISKGROUP_STAT

V$ASM_DISK_IOSTAT             Synonym for V_$ASM_DISK_IOSTAT

V$ASM_DISK_STAT               Synonym for V_$ASM_DISK_STAT

V$ASM_FILE                    Synonym for V_$ASM_FILE

V$ASM_FILESYSTEM              Synonym for V_$ASM_FILESYSTEM

V$ASM_OPERATION               Synonym for V_$ASM_OPERATION--记录当前磁盘的操作信息

V$ASM_TEMPLATE                 Synonymfor V_$ASM_TEMPLATE

V$ASM_USER                    Synonym for V_$ASM_USER

V$ASM_USERGROUP               Synonym for V_$ASM_USERGROUP

V$ASM_USERGROUP_MEMBER        Synonym for V_$ASM_USERGROUP_MEMBER

V$ASM_VOLUME                  Synonym for V_$ASM_VOLUME

V$ASM_VOLUME_STAT             Synonym for V_$ASM_VOLUME_STAT

21 rows selected.

如下:

sys@TEST0924> select GROUP_NUMBER ,NAME ,STATE,TYPE from v$asm_diskgroup;

GROUP_NUMBER NAME                          STATE      TYPE

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

           1 DATA                         CONNECTED   NORMAL

           2 RECOVERY                     MOUNTED     NORMAL

sys@TEST0924> selectGROUP_NUMBER,DISK_NUMBER,NAME,PATH,STATE from v$asm_disk;

GROUP_NUMBER DISK_NUMBER NAME                          PATH           STATE

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

           2          0 RECOVERY_0000                 /dev/asm-diskd  NORMAL

           2          1 RECOVERY_0001                 /dev/asm-diske  NORMAL

           1          1 DATA_0001                     /dev/asm-diskc  NORMAL

           1          0 DATA_0000                     /dev/asm-diskb  NORMAL

上面红色列出了包含ASM 相关元数据的最常用动态性能视图。还有数百个其它动态性能视图,但是其中大多数视图都是空的,因为它们需要数据库实例装载数据库控制文件。ASM 实例不装载数据库控制文件。

  • ASM 系统权限

• ASM 实例没有数据字典,所以连接ASM 只能使用下列系统权限。

ASM 实例没有数据字典,所以连接ASM 实例只能使用以下三种系统权限之一:SYSASMSYSDBA SYSOPER

下面的列表讲述了这些ASM 系统权限。

• SYSASM:该权限提供对ASM 实例的全部管理权限。

• SYSDBA:该权限授予对ASM 中存储的数据的访问权限,在当前版本中还授予SYSASM管理权限。

• SYSOPER:该权限授予使用一组非破坏性ALTER DISKGROUP命令以及启动和停止ASM 实例的权限。不允许使用CREATE DISKGROUP等其它命令。


安装ASM 时,使用操作系统组对 SYSASMSYSDBA SYSOPER权限进行验证。

Oracle Universal Installer (OUI) 实用程序将这些组分别称为OSASMOSDBA OSOPER组,即OSASM组是授予了 SYSASM权限的操作系统组。

OSASMOSDBA OSOPER组值的建议名称分别为 asmadminasmdba asmoper

因此,SYSASM是数据库使用的名称,OSASMOUI 实用程序使用的名称,而 asmadmin是操作系统使用的名称。它们都是指同一组用户。

第一次创建ASM 实例时,只定义sys asmsnmp这两个ASM 用户。

创建SYS用户时,会自动为其分配SYSASM权限。

  • 使用Oracle Enterprise Manager 管理ASM 用户

Oracle Enterprise Manager 允许你管理通过远程连接(使用口令文件验证)访问ASM 的用户。这些用户是专门为ASM 实例保留的。

仅当你作为SYSASM用户连接时才具有此功能。如果你作为SYSDBASYSOPER用户连接,该功能将隐藏。

单击“Creat(创建)按钮时将显示“Create User(创建用户)页。

单击“Edit(编辑)按钮时将显示“Edit User(编辑用户)页。

通过单击“Delete(删除)按钮可以删除创建的用户。

注:要以SYSASM角色登录ASM,请单击该页顶部的“Preferences(首选项)链接,然后单击“Preferred Credentials(首选身份证明)链接。此时你将在目标类型列表中看到ASM。单击ASM 目标类型旁边的“Set Credentials(设置身份证明)图标,定义具有SYSASM权限的帐户和口令。你需要从Database Control 中注销并再次登录,更改才会生效。

  • 启动和停止ASM 实例使用SQL*Plus

使用SQL*Plus 启动和停止ASM 实例与启动和停止数据库实例的方式相似。

$ . oraenv

ORACLE_SID = [orcl] ? +ASM

The Oracle base forORACLE_HOME=/u01/app/oracle/product/11.2.0/grid is 

/u01/app/oracle

$ sqlplus / AS SYSASM

SQL*Plus: Release 11.2.0.1.0 - Productionon Wed Jul 8 20:46:46 2009

Copyright (c) 1982, 2009, Oracle. All rightsreserved.

Connected to an idle instance.

SQL> startup

ASM instance started

Total System Global Area 284565504 bytes

Fixed Size 1336028 bytes

Variable Size 258063652 bytes

ASM Cache 25165824 bytes

ASM diskgroups mounted

ASM diskgroups volume enabled

SQL> shutdown abort

SQL> select name,state fromv$asm_diskgroup;

NAME                          STATE

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

DATA                          MOUNTED

RECOVERY                      MOUNTED

SQL> select instance_name,status fromv$instance;

INSTANCE_NAME    STATUS

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

+ASM            STARTED

SQL*Plus 中使用STARTUP命令启动ASM 实例,其方式与启动Oracle DB 实例的方式相似。启动ASM 实例时,请注意以下几点:

要使用SQL*Plus 连接ASM 实例,请将 ORACLE_SID环境变量设置为ASM SID。单实例数据的默认ASM SID +ASMOracle RAC 节点的默认ASM SID +ASMnode_number,其中node_number是节点的编号。oraenv脚本将设置ORACLE_BASEORACLE_SIDORACLE_HOME PATH变量。

初始化参数文件必须包含下面的条目:

INSTANCE_TYPE = ASM 

该参数指示正在启动ASM 实例,而不是数据库实例。

运行STARTUP命令时,该命令尝试装载初始化参数ASM_DISKGROUPS指定的磁盘组,而不是尝试装载和打开某个数据库。如果尚未为 ASM_DISKGROUPS输入值,稍后可以通过ALTER DISKGROUP...MOUNT命令装载磁盘组。

 

下面的列表讲述了与ASM 相关的 STARTUP命令参数。

• FORCE:在重新启动ASM 实例之前向它发出SHUTDOWN ABORT

• MOUNT OPEN:装载ASM_DISKGROUPS初始化参数中指定的磁盘组。这是未指定命令参数时的默认值。

• NOMOUNT:启动ASM 实例而不装载任何磁盘组。

• RESTRICT:在受限模式下启动实例。RESTRICT子句可以与 MOUNTNOMOUNTOPEN子句组合使用。

 

在受限模式下,数据库实例不能使用磁盘组。即,数据库无法打开磁盘组中的文件。

另外,如果磁盘组是由某个实例在受限模式下装载的,则该磁盘组无法由集群中的任何其它实例装载。通过受限模式,你可以在磁盘组上执行维护任务,而不会受到客户机的干扰。在磁盘组处于受限模式下时执行重新平衡操作,就不再需要在集群环境中的ASM 实例之间传递锁定和取消锁定区映射消息。这样可以提高重新平衡操作的整体吞吐量。在维护期间结束时,你必须显式卸载该磁盘组并在正常模式下重新装载该磁盘组。

 

SQL*Plus 中运行SHUTDOWN命令时将启动ASM 关闭进程。在运行此命令之前,请确保已设置ORACLE_SID ORACLE_HOME环境变量,从而你可以连接到ASM 实例。

Oracle 强烈建议你在尝试关闭ASM 实例之前关闭使用该ASM 实例的所有数据库实例。

下面的列表讲述了与ASM 相关的 SHUTDOWN命令参数。

• NORMALASM 在卸载所有磁盘组并关闭ASM 实例之前,将等待任何正在进行的SQL 完成执行。在关闭实例之前,ASM 将等待所有当前连接的用户从该实例断开。如果任何数据库实例与ASM 实例连接,则 SHUTDOWN命令将返回错误并保持ASM 实例继续运行。NORMAL是默认关闭模式。

• IMMEDIATE TRANSACTIONALASM 在卸载所有磁盘组并关闭ASM 实例之前,将等待任何正在进行的SQL 完成执行。ASM 不等待当前与实例连接的用户断开连接。如果任何数据库实例与ASM 实例连接,则 SHUTDOWN命令将返回错误并保持ASM 实例继续运行。

• ABORTASM 实例立即关闭,而不按顺序卸载磁盘组。这将导致下次启动ASM 时进行恢复操作。如果有任何数据库实例与ASM 实例连接,则该数据库实例也将中止。

注:有连接的RDBMS 实例时,不应用NORMALIMMEDIATE TRANSACTIONAL形式的关闭,而将返回下面的错误:

SQL> shutdown

ORA-15097: cannot SHUTDOWN ASM instancewith connected client (process 14372)

ASM是依赖于CSS守护进程的,因此在启动ASM实例前要确保css守护进程已经启动   CSS(Cluster Synchronization Services) 守护进程用来维持ASM 及客户端数据库实例间的一致性同步,如果是通过dbca建库的话,那么CSS守护进程默认即会启动(跟随系统reboot)

 

  • 启动和停止ASM 实例使用srvctl

可以使用Server Control 实用程序(srvctl) 启动和停止ASM 实例。

$ . oraenv

ORACLE_SID = [orcl] ? +ASM

The Oracle base for 

ORACLE_HOME=/u01/app/oracle/product/11.2.0/gridis 

/u01/app/oracle

$ srvctl start asm -o mount

$ srvctl stop asm -f

可以使用Server Control 实用程序(srvctl) 检查ASM 实例的状态。

$ srvctl status asm

ASM is running on edrsr25p1

使用srvctl启动和停止ASM 实例

可以使用Server Control 实用程序(srvctl) 启动和停止ASM 实例以及由Grid Infrastructure管理的其它资源。srvctl实用程序位于GridInfrastructure ORACLE_HOME/bin位置下和数据库安装的 ORACLE_HOME/bin位置下。管理ASM

监听程序或Oracle Restart 时,应该使用位于Grid Infrastructure ORACLE_HOME中的srvctl实用程序。

可以下列方式使用 srvctl实用程序来控制ASM

启动ASM 实例。

srvctl start asm [-o<start_option>] 

<start_option>是有效的实例启动选项

FORCEMOUNTOPENNOMOUNTRESTRICT)之一(可选)

停止ASM 实例。

srvctl stop asm [-o <stop_option>]-f 

<stop_option>是有效的实例关闭选项

NORMALIMMEDIATETRANSACTIONAL ABORT)之一(可选),

–f 是强制

报告ASM 实例的状态。

srvctl status asm

  • 启动和停止ASM 实例使用asmcmd

asmcmd实用程序提供了一个访问ASM 的命令行界面,无需使用SQL 语言。

$ . oraenv

ORACLE_SID = [orcl] ? +ASM

The Oracle base forORACLE_HOME=/u01/app/oracle/product/11.2.0/grid is 

/u01/app/oracle

$ asmcmd

Connected to an idle instance.

ASMCMD> startup

ASM instance started

Total System Global Area 284565504 bytes

Fixed Size 1336028 bytes

Variable Size 258063652 bytes

ASM Cache 25165824 bytes

ASM diskgroups mounted

ASM diskgroups volume enabled

ASMCMD> shutdown --abort

ASM instance shut down

Connected to an idle instance.

 

使用asmcmd启动和停止ASM 实例

用于管理的ASM 元数据位于ASM 实例内包含的动态性能视图内。通常通过ASM 实用程序使用SQL 语言来访问这些视图。要求了解SQL 语言增加了掌握ASM 的学习时间,而且SQL 语言培训通常不在系统管理员和存储管理员的学习范围内。asmcmd实用程序提供了一个类似伪Shell 的环境,可以接受UNIX 格式的语法执行常用的ASM 管理任务。

它可以用于管理Oracle ASM 实例、磁盘组、磁盘组的文件访问控制、磁盘组内的文件和目录、磁盘组的模板以及卷。

可以使用 asmcmd实用程序启动和关闭ASM 实例。支持的启动选项包括:

--nomount(在不装载磁盘组的情况下启动ASM 实例)

--restrict(启动ASM 实例并限制数据库使用)

--pfile <pfile.ora>(使用定制pfile 启动ASM 实例)

支持的关闭选项包括:

--immediate(立即执行关闭)

--abort(中止所有现有操作)

扫描二维码关注我的微学堂

搜索刘老师微信号:Rman-2014,备注“Oracle学习与咨询”,即可添加好友;或者扫描下面二维码,关注我的“微学堂”公众号,了解最新OCP认证动态、题库及答案解析、培训机构及讲师介绍、课堂授课内容等。每天还有一篇技术文章发布哦!



文章转载自Oracle微学堂,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论