oracle05_建ASM库


Oracle的ASM是一个高性能的,易于管理Oracle数据库文件的存储解决方案。 Oracle ASM是卷管理器,并提供了专为数据库设计使用的文件系统。
Oracle ASM提供了如下几点比传统的文件系统和存储管理人员优势的地方:

  • 简化存储相关的任务,如创建和布局数据库和管理磁盘空间
  • 跨物理磁盘分发数据,以消除热点,并提供统一整个磁盘的性能
  • 存储配置更改后自动重新平衡数

使用Oracle ASM,你要为Oracle数据库分配带有条带化和镜像参数的磁盘分区。 Oracle ASM管理磁盘空间,可以跨越所有可用资源地分配I / O负载 以优化性能,同时消除了手动I/ O优化的需要。例如,您可以为数据库磁盘增加大小或移动数据库部件到新的设备,而不用关闭数据库

安装步骤:

--1.准备:软件包、磁盘空间
	# rpm -qa |grep oracleasm
	# fdisk -l

--2.建目录 --> oracle
	$ cd $ORACLE_BASE/admin
	$ mkdir +ASM
	$ cd !$
	$ mkdir {a,b,c,u}dump

--3.参数文件&口令文件
	$ vim $ORACLE_HOME/dbs/init+ASM.ora
		*.asm_diskstring='ORCL:VOL*'
		*.background_dump_dest='/u01/app/oracle/admin/+ASM/bdump'
		*.core_dump_dest='/u01/app/oracle/admin/+ASM/cdump'
		*.user_dump_dest='/u01/app/oracle/admin/+ASM/udump'
		*.instance_type='asm'
		*.large_pool_size=12M
		*.remote_login_passwordfile='SHARED'

	rac1->orapwd file=$ORACLE_HOME/dbs/orapw+ASM  password=oracle

--4.加载本地配置
	# ./localconfig add 
	rac1->export ORACLE_SID=+ASM
	rac1->sqlplus  / as sysdba
	SQL> startup nomount
	SQL> create spfile from pfile;
	SQL> startup force nomount 

--5.配置
	# /etc/init.d/oracleasm configure
	Default user to own the driver interface []: oracle
	Default group to own the driver interface []: dba
	Start Oracle ASM library driver on boot (y/n) [n]: y
	Scan for Oracle ASM disks on boot (y/n) [y]: y

--6.创建asm磁盘组
	# /etc/init.d/oracleasm createdisk VOL1 /dev/sdc1
	# /etc/init.d/oracleasm createdisk VOL2 /dev/sdd1
	# /etc/init.d/oracleasm createdisk VOL3 /dev/sde1
	# /etc/init.d/oracleasm listdisks
	VOL1
	VOL2
	VOL3

	SQL> create diskgroup dg1  external redundancy disk 'ORCL:VOL1'; -->这里 ORCL:VOL1 与参数文件第一行对应
	SQL> select NAME,TYPE,STATE from v$asm_diskgroup;
	NAME                           TYPE   STATE
	------------------------------ ------ -----------
	DG1                            EXTERN MOUNTED

	如果上述命令返回的 state是 DISMOUNTED,那么我们需要手工将挂载 diskgroup
	SQL> alter diskgroup dg1 mount; 
	SQL> show parameter asm_diskgroups 
	NAME                                 TYPE       VALUE 
	------------------------------------ ---------- ------------------------------ 
	asm_diskgroups                       string     DG1

--7.创建ASM数据库
接下来,创建ASM数据库的工作就非常的简单了。执行dbca实用程序,在第六步“storage options”部分选择“Automatic Storage Management ”,在接下来的“ASM Disk Groups”步骤中,选择之前创建的“DGROUP1”,再按照普通建库的方式完成数据库的创建就OK了。

 

[root@rac1 soft]# /etc/init.d/oracleasm createdisk VOL4 /dev/sdb1
Marking disk "VOL4" as an ASM disk:                        [  OK  ]


SQL> alter diskgroup dg2 add disk 'ORCL:VOL4';

Diskgroup altered.

SQL>  select NAME,TOTAL_MB,STATE from v$asm_diskgroup;

NAME                             TOTAL_MB STATE
------------------------------ ---------- -----------
DG1                                  3067 MOUNTED
DG2                                  5625 MOUNTED


rac1->export ORACLE_SID=+ASM
rac1->sqlplus  / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Thu Aug 12 22:36:22 2010

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


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> show parameter instance_name

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
instance_name                        string      +ASM
SQL> show parameter asm_diskg

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
asm_diskgroups                       string      DG1, DG2

SQL> show parameter ins

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
active_instance_count                integer
cluster_database_instances           integer     1
instance_groups                      string
instance_name                        string      +ASM
instance_number                      integer     0
instance_type                        string      asm
open_links_per_instance              integer     4
parallel_instance_group              string
parallel_server_instances            integer     1



rac1->export ORACLE_SID=up
rac1->sqlplus  / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Thu Aug 12 22:38:48 2010

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


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
+DG2/up/datafile/system.256.726865819
+DG2/up/datafile/undotbs1.258.726865825
+DG2/up/datafile/sysaux.257.726865821
+DG2/up/datafile/users.259.726865827
+DG2/up/datafile/tb1.268.726875891



SQL> create tablespace tb2  datafile '+dg2' size 30m ;

Tablespace created.

SQL>  select name from v$datafile;

NAME
--------------------------------------------------------------------------------
+DG2/up/datafile/system.256.726865819
+DG2/up/datafile/undotbs1.258.726865825
+DG2/up/datafile/sysaux.257.726865821
+DG2/up/datafile/users.259.726865827
+DG2/up/datafile/tb1.268.726875891
+DG2/up/datafile/tb2.269.726878421

6 rows selected.


SQL>  alter database add logfile;

Database altered.

SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
+DG2/up/onlinelog/group_3.263.726866059
+DG1/up/onlinelog/group_3.259.726866065
+DG2/up/onlinelog/group_2.262.726866045
+DG1/up/onlinelog/group_2.258.726866055
+DG2/up/onlinelog/group_1.261.726866037
+DG1/up/onlinelog/group_1.257.726866041
+DG1/up/onlinelog/group_4.260.726875773
+DG2/up/onlinelog/group_4.266.726875777
+DG1/up/onlinelog/group_5.261.726875799
+DG2/up/onlinelog/group_5.267.726875803
+DG1/up/onlinelog/group_6.262.726878635

MEMBER
--------------------------------------------------------------------------------
+DG2/up/onlinelog/group_6.270.726878639

12 rows selected.

SQL>  alter database add logfile;

Database altered.


ASM service stop, then database service must stop ;
when start asm service ,then database servicer have been stop 
must to manual to start database ;


echo ORACLE_SID
+ASM
SQL> shutdown abort
ASM instance shutdown
SQL> ho lsnrctl stat

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 12-AUG-2010 22:47:20

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date                12-AUG-2010 21:27:19
Uptime                    0 days 1 hr. 20 min. 1 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Log File         /u01/app/oracle/product/10.2.0/db_1/network/log/listener.log
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=rac1.mycorpdomain.com)(PORT=1521)))
The listener supports no services
The command completed successfully

SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
rac1->lsnrctl stat

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 12-AUG-2010 22:47:33

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date                12-AUG-2010 21:27:19
Uptime                    0 days 1 hr. 20 min. 14 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Log File         /u01/app/oracle/product/10.2.0/db_1/network/log/listener.log
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=rac1.mycorpdomain.com)(PORT=1521)))
The listener supports no services
The command completed successfully
rac1->sqlplus  / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Thu Aug 12 22:47:38 2010

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

Connected to an idle instance.

SQL> startup 
ASM instance started

Total System Global Area   83886080 bytes
Fixed Size                  1217836 bytes
Variable Size              57502420 bytes
ASM Cache                  25165824 bytes
ASM diskgroups mounted
SQL> ho lsnrctl stat

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 12-AUG-2010 22:48:05

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date                12-AUG-2010 21:27:19
Uptime                    0 days 1 hr. 20 min. 46 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Log File         /u01/app/oracle/product/10.2.0/db_1/network/log/listener.log
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=rac1.mycorpdomain.com)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
  Instance "+ASM", status BLOCKED, has 1 handler(s) for this service...
Service "+ASM_XPT" has 1 instance(s).
  Instance "+ASM", status BLOCKED, has 1 handler(s) for this service...
The command completed successfully

SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
rac1->export ORACLE_SID=up
rac1->sqlplus  / as sysdba

SQL*Plus: Release 10.2.0.1.0 - Production on Thu Aug 12 22:48:19 2010

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

Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area  188743680 bytes
Fixed Size                  1218436 bytes
Variable Size              67111036 bytes
Database Buffers          117440512 bytes
Redo Buffers                2973696 bytes
Database mounted.
Database opened.
SQL> ho lsnrctl stat

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 12-AUG-2010 22:49:27

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 10.2.0.1.0 - Production
Start Date                12-AUG-2010 21:27:19
Uptime                    0 days 1 hr. 22 min. 7 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Log File         /u01/app/oracle/product/10.2.0/db_1/network/log/listener.log
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=rac1.mycorpdomain.com)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
  Instance "+ASM", status BLOCKED, has 1 handler(s) for this service...
Service "+ASM_XPT" has 1 instance(s).
  Instance "+ASM", status BLOCKED, has 1 handler(s) for this service...
Service "up" has 1 instance(s).
  Instance "up", status READY, has 1 handler(s) for this service...
Service "upXDB" has 1 instance(s).
  Instance "up", status READY, has 1 handler(s) for this service...
Service "up_XPT" has 1 instance(s).
  Instance "up", status READY, has 1 handler(s) for this service...
The command completed successfully

<asmcmd>
rac1->export ORACLE_SID=+ASM
rac1->asmcmd
ASMCMD> ls
DG1/
DG2/
ASMCMD> cd DG1/
ASMCMD> ls
UP/
ASMCMD> cd UP/
ASMCMD> ls
CONTROLFILE/
ONLINELOG/
ASMCMD> cd CONTROLFILE/
ASMCMD> ls
Current.256.726866029
ASMCMD> pwd
+DG1/UP/CONTROLFILE
ASMCMD> du
Used_MB      Mirror_used_MB
      8                   8
ASMCMD> cd ..
ASMCMD> ls
CONTROLFILE/
ONLINELOG/
ASMCMD> help
        asmcmd [-p] [command]

        The environment variables ORACLE_HOME and ORACLE_SID determine the 
        instance to which the program connects, and ASMCMD establishes a 
        bequeath connection to it, in the same manner as a SQLPLUS / AS 
        SYSDBA.  The user must be a member of the SYSDBA group.

        Specifying the -p option allows the current directory to be displayed 
        in the command prompt, like so:

        ASMCMD [+DATAFILE/ORCL/CONTROLFILE] >

        [command] specifies one of the following commands, along with its
        parameters.

        Type "help [command]" to get help on a specific ASMCMD command.

        commands:
        --------
        cd
        du
        find
        help
        ls
        lsct
        lsdg
        mkalias
        mkdir
        pwd
        rm
        rmalias
ASMCMD> ls
CONTROLFILE/
ONLINELOG/
ASMCMD> mkdir mydir
ASMCMD> ls
CONTROLFILE/
ONLINELOG/
mydir/
ASMCMD> rm mydir
ASMCMD> cd ..
ASMCMD> ls
UP/
ASMCMD> cd up
ASMCMD> ls
CONTROLFILE/
ONLINELOG/
ASMCMD> cd onlinelog
ASMCMD> ls
group_1.257.726866041
group_2.258.726866055
group_3.259.726866065
group_4.260.726875773
group_5.261.726875799
group_6.262.726878635
group_7.263.726878669
ASMCMD> cd ..
ASMCMD> ls
CONTROLFILE/
ONLINELOG/
ASMCMD> cd ..
ASMCMD> ls
UP/
ASMCMD> cd ..

ASMCMD> ls
DG1/
DG2/
ASMCMD> cd dg2
ASMCMD> ls
UP/
ASMCMD> cd up
ASMCMD> ls
CONTROLFILE/
DATAFILE/
ONLINELOG/
PARAMETERFILE/
TEMPFILE/
spfileup.ora
ASMCMD> cd DATAFILE/
ASMCMD> ls
SYSAUX.257.726865821
SYSTEM.256.726865819
TB1.268.726875891
TB2.269.726878421
UNDOTBS1.258.726865825
USERS.259.726865827

ASMCMD> pwd
+dg2/up/DATAFILE
ASMCMD> ls
SYSAUX.257.726865821
SYSTEM.256.726865819
TB1.268.726875891
TB2.269.726878421
UNDOTBS1.258.726865825
USERS.259.726865827

ASMCMD> ls
SYSAUX.257.726865821
SYSTEM.256.726865819
TB1.268.726875891
TB2.269.726878421
UNDOTBS1.258.726865825
USERS.259.726865827
ASMCMD> cd ..
ASMCMD> ls
CONTROLFILE/
DATAFILE/
ONLINELOG/
PARAMETERFILE/
TEMPFILE/
spfileup.ora
ASMCMD> find +dg2 sys*
+dg2/UP/DATAFILE/SYSAUX.257.726865821
+dg2/UP/DATAFILE/SYSTEM.256.726865819


SQL>  select NAME,STATE,TYPE,TOTAL_MB from v$asm_diskgroup;


NAME                           STATE       TYPE     TOTAL_MB
------------------------------ ----------- ------ ----------
DG1                            MOUNTED     EXTERN       3067
DG2                            MOUNTED     NORMAL       5625

SQL> SQL> alter diskgroup dg2 drop disk vol4;

Diskgroup altered.

SQL> select NAME,STATE,TYPE,TOTAL_MB from v$asm_diskgroup;

NAME                           STATE       TYPE     TOTAL_MB
------------------------------ ----------- ------ ----------
DG1                            MOUNTED     EXTERN       3067
DG2                            MOUNTED     NORMAL       5625

SQL>  select NAME,STATE,TYPE,TOTAL_MB from v$asm_diskgroup;

NAME                           STATE       TYPE     TOTAL_MB
------------------------------ ----------- ------ ----------
DG1                            MOUNTED     EXTERN       3067
DG2                            MOUNTED     NORMAL       5625

SQL> create diskgroup dg3 external redundance 'ORCL:VOL4'

SQL> DROP DISKGROUP DG3 ;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值