1修改文件系统存储到ASM存储一、环境准备..................................................................................................................................2二、安装GRID软件.........................................................................................................................3三、将数据文件从文件系统移动到ASM存储.............................................................................113.1、数据文件的位置修改.................................................................................................113.2、临时表空间数据文件位置修改.................................................................................153.3、处理redologfile..................................................................................................153.4、控制文件的位置修改.................................................................................................173.5、参数文件.....................................................................................................................18四、检验........................................................................................................................................192一、环境准备说明:在工作中,会遇到修改数据文件由filesystem到asm存储。即oracle环境已经搭建好,需要后面再来安装grid软件,我们习惯于先安装grid软件,再安装数据库。本案例就模拟了修改数据文件由filesystem到asm。工具:VMwareWorkstationPro环境:单实例1、创建grid用户[root@oracle-asm~]#useradd-u602-gdbagrid2、设置密码[root@oracle-asm~]#passwdgrid3、挂载磁盘4、重新启动系统,使用fdisk对磁盘分区(步骤略)5、修改规则[root@oracle-asm~]#vi/etc/udev/rules.d/60-raw.rules添加内容:ACTION==add,KERNEL==sdb,RUN+=/bin/raw/dev/raw/raw1%NKERNEL==raw1,OWNER=grid,GROUP=dba,MODE=0666ACTION==add,KERNEL==sdc,RUN+=/bin/raw/dev/raw/raw2%NKERNEL==raw2,OWNER=grid,GROUP=dba,MODE=06666、查看添加的裸设备3二、安装GRID软件1、创建grid用户安装目录[root@oracle-asm/]#mkdir-p/u01/app/grid/product/11.2.0/grid[root@oracle-asm/]#mkdir-p/u01/app/grid/base[root@oracle-asm/]#chown-Rgrid:dba/u01/app/grid[root@oracle-asm/]#chmod-R775/u01/app/grid2、编辑/etc/security/limits.conf,添加如下内容#configforgridgridsoftnproc2047gridhardnproc16384gridsoftnofile1024gridhardnofile655363、vi/etc/profile#configforgridif[$USER=grid];thenif[$SHELL=/bin/ksh];thenulimit-p16384ulimit-n65536elseulimit-u16384-n65536fifi4、设置grid环境变量[grid@oracle-asm~]Vi~/.bash_profileexportPATHexportORACLE_BASE=/u01/app/gridexportORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1exportORACLE_SID=+ASMexportPATH=$ORACLE_HOME/bin:$PATHexportLD_LOIBRARY_PATH=$ORACLE_HOME/lib:exportCVUQDISK_GRP=dba45、root用户解压安装文件[root@oracle-asm~]unzip/opt/setup/p13390677_112040_Linux-x86-64_3of7.zip6、grid用户下运行./runInstaller,详细步骤如下:567897、grid用户下运行asmca命令创建DATA磁盘组,如图注:之前创建ASM磁盘组后,在volumes列创建了39G的卷,把组和卷的概念搞混了,导致安装成功后v$asm_diskgroup中的磁盘空间不足,错误示意图:108、查看ASM实例启动状态9、查看ASM磁盘空间11三、将数据文件从文件系统移动到ASM存储说明:(1)、本案例在安装grid之前已安装数据库并创建jbdjsvr实例。(2)、本案例使用RMANcopy迁移数据文件,整体分成5部分。分别是:数据文件的位置修改、临时文件的位置修改、redolog的位置修改、控制文件的位置修改以及参数文件。3.1、数据文件的位置修改1、查看数据文件当前存放位置2、确认asmcmd中数据文件准备存放的路径,以/data/asm目录为例3、启动数据库归档124、rman备份数据库脚本如下:run{allocatechannelc1typedisk;allocatechannelc2typedisk;copydatafile'/u01/ora11/product/oradata/jbdjsvr/UNDOTBS01.DBF'to'+DATA/ASM/UNDOTBS01.DBF';copydatafile'/u01/ora11/product/oradata/jbdjsvr/SYSAUX01.DBF'to'+DATA/ASM/SYSAUX01.DBF';copydatafile'/u01/ora11/product/oradata/jbdjsvr/DR01.DBF'to'+DATA/ASM/DR01.DBF';copydatafile'/u01/ora11/product/oradata/jbdjsvr/INDX01.DBF'to'+DATA/ASM/INDX01.DBF';copydatafile'/u01/ora11/product/oradata/jbdjsvr/TOOLS01.DBF'to'+DATA/ASM/TOOLS01.DBF';copydatafile'/u01/ora11/product/oradata/jbdjsvr/USERS01.DBF'to'+DATA/ASM/USERS01.DBF';copydatafile'/u01/ora11/product/oradata/jbdjsvr/SYSTEM01.DBF'to'+DATA/ASM/SYSTEM01.DBF';}如图:135、可在asmcmd中查看到备份的数据文件6、修改数据文件到新的存储位置SQLstartupmount;脚本如下:alterdatabaserenamefile'/u01/ora11/product/oradata/jbdjsvr/UNDOTBS01.DBF'to'+DATA/ASM/UNDOTBS01.DBF';alterdatabaserenamefile'/u01/ora11/product/oradata/jbdjsvr/SYSAUX01.DBF'to'+DATA/ASM/SYSAUX01.DBF';alterdatabaserenamefile'/u01/ora11/product/oradata/jbdjsvr/DR01.DBF'to'+DATA/ASM/DR01.DBF';alterdatabaserenamefile'/u01/ora11/product/oradata/jbdjsvr/INDX01.DBF'to'+DATA/ASM/INDX01.DBF';alterdatabaserenamefile'/u01/ora11/product/oradata/jbdjsvr/TOOLS01.DBF'to'+DATA/ASM/TOOLS01.DBF';alterdatabaserenamefile'/u01/ora11/product/oradata/jbdjsvr/USERS01.DBF'to'+DATA/ASM/USERS01.DBF';alterdatabaserenamefile'/u01/ora11/product/oradata/jbdjsvr/SYSTEM01.DBF'to'+DATA/ASM/SYSTEM01.DBF';如图:147、open数据库,提示数据文件需要介质恢复,使用recover命令恢复数据文件8、启动数据库,查看数据文件位置。153.2、临时表空间数据文件位置修改临时文件的迁移,采用创建一个新的临时文件指定到ASM,删除掉原来的temp101.dbf1、查看临时文件2、创建temp102.dbf并指定到+DATA/ASM/temp102.dbf语法:altertablespacetemp1addtempfile'+DATA/ASM/temp102.dbf'size500Mautoextendoff;3、删除temp101.dbf语法:altertablespacetemp1droptempfile'/u01/ora11/product/oradata/jbdjsvr/temp101.dbf';3.3、处理redologfile原来的redo日志有三组,每组有1个成员。这里为每一组添加一个日志成员并指定到ASM,最后删除原来的redo成员。1、查看redo日志2、给每组添加组成员并指定到+DATA/ASM/下脚本如下:16alterdatabaseaddlogfilemember'+DATA/ASM/redo01.log'togroup1;alterdatabaseaddlogfilemember'+DATA/ASM/redo02.log'togroup2;alterdatabaseaddlogfilemember'+DATA/ASM/redo03.log'togroup3;3、删除原来的redo日志脚本如下:ALTERDATABASEDROPLOGFILEMEMBER'/u01/ora11/product/oradata/jbdjsvr/REDO01.LOG';ALTERDATABASEDR