linux上oracle实战raw+ASM(4)

2019-08-31 16:24

右下角的change disk discovery path设置ASM自动搜索可用磁盘或者LV的文件目录,等同于spfile+ASM.ora参数文件的ASM_DISKSTRING,该值可以用通配符例如/dev/vg_ora/*;

在此不进行设置,以后可通过修改ASM实例的参数文件或者alter system来设置,直接选择列出的ORCL:DISK01创建磁盘组,完成ASM的实例安装。至此可以在$ORACLE_HOME的dbs目录下查看到ASM实例的密码文件orapw+ASM和参数文件spfile+ASM.ora

连接ASM实例

通过lsnrctl status查看监听器状态,显示ASMblocked: Service \

Instance \Service \

Instance \

处理办法: Lsnrctl stop

在$ORACLE_HOMD/network/admin下编辑listener.ora,在SID_LIST_LISTENER新增ASM内容:

SID_LIST_LISTENER = (SID_LIST = (SID_DESC =

(SID_NAME = PLSExtProc)

(ORACLE_HOME = /oracle/product/10.2.0/db_1) (PROGRAM = extproc) )

(SID_DESC =

(GLOBAL_DBNAME = +ASM)

(ORACLE_HOME = /oracle/product/10.2.0/db_1) (SID_NAME = +ASM) ) )

Lsnrctl start 显示为unknown

在客户端编辑tnsnames.ora新增 asm =

(DESCRIPTION =

(ADDRESS=(PROTOCOL = TCP)(HOST = 192.168.118.3)(PORT = 1521)) (CONNECT_DATA =

16

(SERVER = DEDICATED) (SERVICE_NAME = +ASM) (UR=A) ) )

这样可以在客户端通过PLSQL连接ASM实例。

ASM修改参数和新增磁盘

注意:在启动ASM实例前保证CSS的正常运行;通过crsctl check cssd查看。 [oracle@SMART dbs]$ crsctl check cssd CSS appears healthy

进入ASM实例必须先设置环境变量ORACLE_SID [oracle@SMART dbs]$ export ORACLE_SID=+ASM [oracle@SMART dbs]$ sqlplus / as sysdba SQL> create pfile from spfile; 查看ASM实例的配置

[oracle@SMART dbs]$ cat init+ASM.ora

修改参数asm_diskstring:

SQL> alter system set asm_diskstring='/dev/vg_ora/*'; alter system set asm_diskstring='/dev/vg_ora/*' *

ERROR at line 1:

ORA-02097: parameter cannot be modified because specified value is invalid ORA-15014: location 'ORCL:DISK01' is not in the discovery set

//错误提示由于前面安装过程中采用oracleasm命令创建的DISK01,不在这个设置的搜索路径中,导致不能修改,而前面oracleasm createdisk disk01 /dev/vg_ora/lvasm01采用的就是此路径,有点矛盾

SQL> alter system set asm_diskstring='/dev/mapper/*'; alter system set asm_diskstring='/dev/mapper/*' *

ERROR at line 1:

ORA-02097: parameter cannot be modified because specified value is invalid ORA-15014: location 'ORCL:DISK01' is not in the discovery set

//错误提示由于前面安装过程中采用oracleasm命令创建的DISK01,不在这个设置的搜索路径中,导致不能修改

总结:可能是由于使用oracleasm创建的磁盘使用了ORCL:DISK01的缘故,或者是root使用的oracleasm命令创建是否存在权限问题,就不做深入研究了;当然可以继续使用oracleasm来创建磁盘,oracleasm createdisk disk02

17

/dev/vg_ora/lvasm02然后通过sql命令alter diskgroup asmdg add disk ‘ORCL:DISK02’的方式来新增磁盘。

这里准备采用sql命令的方式来管理ASM磁盘组。

由于目前oracle是采用rawdevice,直接删除原先磁盘组ASMDG,重新建立磁盘组

SQL> drop diskgroup asmdg;

SQL> alter system set asm_diskstring='/dev/vg_ora/*'; System altered.

SQL> create diskgroup asmdg external redundancy disk '/dev/vg_ora/lvasm02' name disk02;

create diskgroup asmdg external redundancy disk '/dev/vg_ora/lvasm02' name disk02 *

ERROR at line 1:

ORA-15018: diskgroup cannot be created

ORA-15031: disk specification '/dev/vg_ora/lvasm02' matches no disks

SQL> alter system set asm_diskstring='/dev/mapper/*'; System altered. SQL> create diskgroup asmdg external redundancy disk '/dev/mapper/vg_ora-lvasm02' name disk02; Diskgroup created.

实践操作结果:

linux下的/dev/vgname目录是存放的链接指向/dev/mapper,链接不能设置为搜索路径,只能采用/dev/mapper为搜索路径,当alter system set asm_diskstring执行后,可以通过v$asm_disk查看这个路径是否有效,是否有磁盘显示。

通过v$asm_disk 和 v$asm_diskgroup查看磁盘情况。

由于设置了asm_diskstring='/dev/mapper/*',,不需要通过命令例如oracleasm createdisk,就可以在v$asm_disk视图中会把所有的磁盘,LV显示出来,是否可以加入到asmdg,主要看header_status状态为CANDIDATE或者PROVISIONED表示该LV可以加入到磁盘组;如果为FORMER表示该磁盘被drop(比如前面drop diskgroup asmdg 使得组内成员member变为former),可以重新加入磁盘组。 例如

SQL> alter diskgroup asmdg add disk '/dev/mapper/vg_ora-lvasm04' name disk04; Done

SQL> alter diskgroup asmdg add disk '/dev/mapper/vg_ora-lvasm01' name disk01; Done

18

RAW迁移到ASM

目的:将raw设备上文件迁移到ASM的磁盘组ASMDG,参数文件,归档位置,闪回区域保留在文件系统。

[oracle@SMART admin]$ export ORACLE_SID=orcl [oracle@SMART admin]$ sqlplus / as sysdba

设置控制文件位置为ASMDG磁盘组,scope=spfile表示参数写入spfile,下次启动数据库生效:

SQL>alter system set control_files='+asmdg','+asmdg', '/oradata/fla/ORCL/control03.ctl' scope=spfile;

SQL> shutdown immediate

[oracle@SMART admin]$ rman target / RMAN> startup nomount

RMAN> restore controlfile from '/oracle/orcl/control01.ctl'; RMAN> alter database mount;

RMAN> backup as copy database format '+ASMDG'; //将数据文件以copy方式到ASMDG磁盘组 RMAN> SWITCH DATABASE TO COPY;

//使得控制文件指向新的数据文件位置

RMAN> RECOVER DATABASE;

RMAN> run {

2> set newname for tempfile 1 to '+ASMDG'; 3> switch tempfile all; 4> }

RMAN> alter database open;

切换联机日志文件为ASMDG:

SQL> alter database add logfile group 3 '+asmdg' size 50m; SQL> alter database add logfile group 4 '+asmdg' size 50m; SQL> alter system switch logfile; SQL> alter system switch logfile;

SQL> alter database drop logfile group 1;

alter database drop logfile group 1

ORA-01624: log 1 needed for crash recovery of instance orcl (thread 1)

ORA-00312: online log 1 thread 1: '/oracle/orcl/redo01.log'

SQL> alter system archive log current; SQL> alter system checkpoint;

19

SQL> alter database drop logfile group 1; SQL> alter database drop logfile group 2; 检查文件位置

select * from v$logfile

select * from dba_temp_files select * from dba_data_files select * from v$controlfile

备注:

当数据库nomount状态下可以使用from来还原,from的来源可以是现有的文件或者备份集,数据库在mount或者open状态下是不能使用from,只能使用to。例如: RMAN> restore controlfile from '+asmdg';

Starting restore at 28-NOV-11 using channel ORA_DISK_1

RMAN-00571:

=========================================================== RMAN-00569: ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571:

=========================================================== RMAN-03002: failure of restore command at 11/28/2011 06:09:07

RMAN-06496: must use the TO clause when the database is mounted or open

RMAN> restore controlfile to '+ASMDG';

Starting restore at 28-NOV-11 using channel ORA_DISK_1

channel ORA_DISK_1: starting datafile backupset restore channel ORA_DISK_1: restoring control file output filename=+ASMDG channel ORA_DISK_1: reading from backup piece /oradata/fla/ORCL/autobackup/2011_11_28/o1_mf_s_768377240_7f75dsn3_.bkp

channel ORA_DISK_1: restored backup piece 1 piece

handle=/oradata/fla/ORCL/autobackup/2011_11_28/o1_mf_s_768377240_7f75dsn3_.bkp tag=TAG20111128T060720

channel ORA_DISK_1: restore complete, elapsed time: 00:00:02 Finished restore at 28-NOV-11

一些误操作的错误解决:

RMAN> alter database open;

20


linux上oracle实战raw+ASM(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:遗传学复习

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: