ORACLE ASM常用命令整理
2016-06-14 14:33
597 查看
ASM 命令整理
一. 查看ASM空间使用情况
1. lsdg: 查看磁盘组的信息,和磁盘空间大小
ASMCMD> lsdg
State Type Rebal Block AU Total_MB Free_MB Usable_file_MB Offline_disks Voting_files Name
MOUNTED EXTERN N 4096 1048576 5739 5339 5339 0 Y DATA/
MOUNTED EXTERN N 4096 1048576 5739 3669 3669 0 N DATADG01/
2. 查看磁盘组,(空间情况)
SQL> select name name2,state,type,free_mb,total_mb,usable_file_mb from v$asm_diskgroup;
NAME2 STATE TYPEFREE_MB Total_MB
USABLE_FILE_MB
--------------- ----------- ---------------- ---------- -----------
DATAMOUNTED EXTERN 5339 5,739 5339
DATADG01MOUNTED EXTERN 3669 5,739 3669
3.查看及修改asm重新平衡粒度
SQL> show parameter power
NAME TYPE VALUE
----------------------------------------
asm_power_limit integer 4
SQL> show parameter asm
NAME TYPE VALUE
------------------------------------ -------------
asm_diskgroups string DATADG01
asm_diskstring string
asm_power_limit integer 4
asm_preferred_read_failure_groups string
4.查看asm实例操作变化(只记录结构变化操作)
select * from v$asm_operation;
注意:执行以下命令要用grid 用户 用sqlplus / as sysasm 这个权限登录
$ export ORACLE_SID=+ASM1
$ sqlplus / as sysasm
二、ASM磁盘组的创建删除挂载
1.asm磁盘组创建
asmca(11g),10g(dbca) 图形界面
sql>create diskgroup datadg01 external redundancy disk '/dev/raw/raw1';
2.asm 磁盘组删除
sql>drop diskgroup datadg01;
3.asm磁盘组添加磁盘
sql>alter diskgroup datadg01 add disk '/dev/raw/raw2';
4.asm磁盘组删除磁盘
sql>select name,path from v$asm_disk;查询到名称
NAME PATH
-----------------------------
DATA_0000 /dev/raw/raw1
DATA_0001 /dev/raw/raw2
DATA_0002 /dev/raw/raw3
DATADG01_0000 /dev/raw/raw5
DATADG01_0001 /dev/raw/raw6
DATADG01_0002 /dev/raw/raw7
sql>alter diskgroup datadg drop disk 'DATADG01_0001'; --这里是磁盘名称,而不是'/dev/raw/raw1'
5.挂载
Sql>alter diskgroup datadg01 mount;
or
Sql>alter diskgroup all mount;
6.卸载
Sql>alter diskgroup datadg01 dismount;
or
Sql>alter diskgroup all dismount;
7.删除
Sql>drop diskgroup datadg01;
说明:删除磁盘组时,磁盘组必须被挂载(mount)
三. ASM磁盘组目录管理
1.asm磁盘组增加目录
SQL> alter diskgroup datadg01 add directory '+datadg01/datafile';
2.Asm磁盘组重命名目录
SQL> alter diskgroup datadg01 rename directory '+datadg01/datafile' to '+datadg01/datafile01';
3.Asm磁盘组增加多层目录,必须一层一层添加
--首先添加zw
SQL> alter diskgroup datadg01 add directory '+datadg01/zw/';
然后添加datafile
SQL> alter diskgroup datadg01 add directory '+datadg01/zw/datafile';
4.Asm磁盘组删除
SQL> alter diskgroup datadg01 drop directory '+datadg01/datafile';
四. ASM磁盘组文件管理
数据文件添加别名
sql>alter diskgroup datadg01 add alias '+datadg01/node/datafile/users.dbf' for '+datadg01/node/datafile/users.266.987885487';
重新命名别名
SQL> alter diskgroup datadg01 rename alias '+datadg01/node/datafile/users.dbf' to '+datadg01/node/datafile/users01.dbf';
查询别名
SQL> select name,group_number,file_number,alias_index,alias_directory,system_created from v$asm_alias where file_number=266;
删除别名
SQL> alter diskgroup datadg01 drop alias '+datadg01/node/datafile/users01.dbf';
五. ASM几个重要参数
asm_power_limit当加入磁盘后磁盘组的各个磁盘之间做均衡进程
asm_disktring 指定asm启动时候查找磁盘路径
Linux 自动搜索:/dev/raw/ 和/dev下的设备文件
aix 自动搜索:/dev/下设备文件
hp-ux:由于hp-ux下的磁盘路径在/dev/rdsk/下边,需要设置
磁盘组的重新平衡:当磁盘组中的磁盘发生变化时,磁盘组将自动进行重新平衡
平衡级别为0-11,当手工进行重新平衡时,可以指定平衡级别
可用的最高级别通过初始化参数asm_power_limit 指定
SQL>alter diskgroup datadg01 rebalance power 3;
SQL>alter diskgroup datadg01 rebalance power 3 wait ;
六.ASM相关视图
v$asm_disk(_stat) --查看磁盘及其状态信息
v$asm_diskgroup(_stat) --查看磁盘组及其状态信息
v$asm_operation --查看当前磁盘的操作信息
v$asm_client --返回当前连接的客户端实例信息
v$asm_file --返回asm文件的相关信息
v$asm_template --返回asm文件样本的相关信息
v$asm_alias --返回asm文件的别名信息
七.添加数据文件
如果是数据库文件
sql>create tablespace test datafile'+datadg01' size 100M;
如果归档日志:
sql>alter system set log_archive_dest_1='location=+datadg01' scope=both;
八. ASMCMD的使用
一. 查看ASM空间使用情况
1. lsdg: 查看磁盘组的信息,和磁盘空间大小
ASMCMD> lsdg
State Type Rebal Block AU Total_MB Free_MB Usable_file_MB Offline_disks Voting_files Name
MOUNTED EXTERN N 4096 1048576 5739 5339 5339 0 Y DATA/
MOUNTED EXTERN N 4096 1048576 5739 3669 3669 0 N DATADG01/
2. 查看磁盘组,(空间情况)
SQL> select name name2,state,type,free_mb,total_mb,usable_file_mb from v$asm_diskgroup;
NAME2 STATE TYPEFREE_MB Total_MB
USABLE_FILE_MB
--------------- ----------- ---------------- ---------- -----------
DATAMOUNTED EXTERN 5339 5,739 5339
DATADG01MOUNTED EXTERN 3669 5,739 3669
3.查看及修改asm重新平衡粒度
SQL> show parameter power
NAME TYPE VALUE
----------------------------------------
asm_power_limit integer 4
SQL> show parameter asm
NAME TYPE VALUE
------------------------------------ -------------
asm_diskgroups string DATADG01
asm_diskstring string
asm_power_limit integer 4
asm_preferred_read_failure_groups string
4.查看asm实例操作变化(只记录结构变化操作)
select * from v$asm_operation;
注意:执行以下命令要用grid 用户 用sqlplus / as sysasm 这个权限登录
$ export ORACLE_SID=+ASM1
$ sqlplus / as sysasm
二、ASM磁盘组的创建删除挂载
1.asm磁盘组创建
asmca(11g),10g(dbca) 图形界面
sql>create diskgroup datadg01 external redundancy disk '/dev/raw/raw1';
2.asm 磁盘组删除
sql>drop diskgroup datadg01;
3.asm磁盘组添加磁盘
sql>alter diskgroup datadg01 add disk '/dev/raw/raw2';
4.asm磁盘组删除磁盘
sql>select name,path from v$asm_disk;查询到名称
NAME PATH
-----------------------------
DATA_0000 /dev/raw/raw1
DATA_0001 /dev/raw/raw2
DATA_0002 /dev/raw/raw3
DATADG01_0000 /dev/raw/raw5
DATADG01_0001 /dev/raw/raw6
DATADG01_0002 /dev/raw/raw7
sql>alter diskgroup datadg drop disk 'DATADG01_0001'; --这里是磁盘名称,而不是'/dev/raw/raw1'
5.挂载
Sql>alter diskgroup datadg01 mount;
or
Sql>alter diskgroup all mount;
6.卸载
Sql>alter diskgroup datadg01 dismount;
or
Sql>alter diskgroup all dismount;
7.删除
Sql>drop diskgroup datadg01;
说明:删除磁盘组时,磁盘组必须被挂载(mount)
三. ASM磁盘组目录管理
1.asm磁盘组增加目录
SQL> alter diskgroup datadg01 add directory '+datadg01/datafile';
2.Asm磁盘组重命名目录
SQL> alter diskgroup datadg01 rename directory '+datadg01/datafile' to '+datadg01/datafile01';
3.Asm磁盘组增加多层目录,必须一层一层添加
--首先添加zw
SQL> alter diskgroup datadg01 add directory '+datadg01/zw/';
然后添加datafile
SQL> alter diskgroup datadg01 add directory '+datadg01/zw/datafile';
4.Asm磁盘组删除
SQL> alter diskgroup datadg01 drop directory '+datadg01/datafile';
四. ASM磁盘组文件管理
数据文件添加别名
sql>alter diskgroup datadg01 add alias '+datadg01/node/datafile/users.dbf' for '+datadg01/node/datafile/users.266.987885487';
重新命名别名
SQL> alter diskgroup datadg01 rename alias '+datadg01/node/datafile/users.dbf' to '+datadg01/node/datafile/users01.dbf';
查询别名
SQL> select name,group_number,file_number,alias_index,alias_directory,system_created from v$asm_alias where file_number=266;
删除别名
SQL> alter diskgroup datadg01 drop alias '+datadg01/node/datafile/users01.dbf';
五. ASM几个重要参数
asm_power_limit当加入磁盘后磁盘组的各个磁盘之间做均衡进程
asm_disktring 指定asm启动时候查找磁盘路径
Linux 自动搜索:/dev/raw/ 和/dev下的设备文件
aix 自动搜索:/dev/下设备文件
hp-ux:由于hp-ux下的磁盘路径在/dev/rdsk/下边,需要设置
磁盘组的重新平衡:当磁盘组中的磁盘发生变化时,磁盘组将自动进行重新平衡
平衡级别为0-11,当手工进行重新平衡时,可以指定平衡级别
可用的最高级别通过初始化参数asm_power_limit 指定
SQL>alter diskgroup datadg01 rebalance power 3;
SQL>alter diskgroup datadg01 rebalance power 3 wait ;
六.ASM相关视图
v$asm_disk(_stat) --查看磁盘及其状态信息
v$asm_diskgroup(_stat) --查看磁盘组及其状态信息
v$asm_operation --查看当前磁盘的操作信息
v$asm_client --返回当前连接的客户端实例信息
v$asm_file --返回asm文件的相关信息
v$asm_template --返回asm文件样本的相关信息
v$asm_alias --返回asm文件的别名信息
七.添加数据文件
如果是数据库文件
sql>create tablespace test datafile'+datadg01' size 100M;
如果归档日志:
sql>alter system set log_archive_dest_1='location=+datadg01' scope=both;
八. ASMCMD的使用
相关文章推荐
- Oracle ASM 实例管理
- Oracle ASM 磁盘组管理
- Oracle ASM 文件管理
- Oracle ASM 文件迁移(利用RMAN)
- Oracle ASM 11g新特性
- Oracle ASM -- disk header
- 数据库连接到ASM实例权限不足
- Oracle RAC 部署
- Oracle 更改归档文件到ASM磁盘
- Zabbix通过Orabbix监控Oracle实验
- oracle调用JAVA类的方法 (第二种方法测试不行)
- Oracle 分区表的新增、修改、删除、合并。普通表转分区表方法
- Oracle decode的用法
- oracle表数据用java导出为SQL文件的方法
- 完全卸载oracle11g步骤
- 安装oracle 11g 遇到的问题ORA-01078 ORA-01034
- oracle、sqlserver、mysql常用函数对比[to_char、to_number、to_date]
- Oracle数据库监听配置
- 【引用】ORACLE 10G 的安装过程
- 通过JDBC连接oracle数据库的十大技巧