AIX平台的裸设备上创建Oracle表空间
本文PDF版下载 http://xunzhaoxz.itpub.net/resource/40016/29666
作者:xunzhao【转载时请以超链接形式标明文章出处和作者信息】
链接:http://xunzhaoxz.itpub.net/post/40016/487469
操作系统版本:AIX 5309
Oracle clusterware 版本:10.2.0.4
Oracle database 版本:10.2.0.4
存储介质:裸设备+JFS2文件系统
实施目标:在AIX平台的裸设备上,为oracle RAC创建一个初始大小为6G,最大为10G,每次递增200MB,uniform size 为512K,名为TRANSPORT的表空间,要求裸设备使用hdisk4的存储空间。
1) 前期准备:
首先理清思路,根据实施目标和存储规划,把本次实施所需的命令都先写好,认真检查无误后待实施时直接复制粘贴就可以,以免因为实施过程中的命令错误导致失败,另外这也是个比较好的习惯。
[dbser1:root:/]#lspv hdisk4
[dbser1:root:/]#mklv -y'lvgisdata03' -T O -w'n' -s'n' -r'n' -t raw gisvg 20 hdisk4
[dbser1:root:/]#chown oracle:dba /dev/rlvgisdata03
[dbser1:root:/]#ls -l /dev/rlvgisdata*
[dbser1:root:/]#chown oracle:dba /dev/lvgisdata03
[dbser1:root:/]#ls -l /dev/lvgisdata*
[dbser2:root:/]#ls -l /dev/lvgisdata*
[dbser2:root:/]#ls -l /dev/rlvgisdata*
[dbser2:root:/]#chown oracle:dba /dev/rlvgisdata03
[dbser2:root:/]#chown oracle:dba /dev/ lvgisdata03
[dbser2:root:/]#ls -l /dev/lvgisdata*
[dbser2:root:/]#ls -l /dev/rlvgisdata*
[dbser1:root:/]#su – oracle
[dbser1:root:/oracle]$sqlplus /nolog
SQL> conn sys as sysdba;
SQL> select instance_name from v$instance;
SQL> create tablespace FJTRANSPORT
datafile '/dev/rlvgisdata03' size 6G
autoextend on next 200M maxsize 10G
extent management local uniform size 512K;
SQL> exit
[dbser1:oracle:/oracle]$vi /oracle/admin/gisdb/bdump/alert_gisdb1.log
[dbser2:oracle:/oracle]$crs_stat -t
2) 首先查看hdisk4的存储空间使用情况:
[dbser1:root:/]#lspv hdisk4
查看得知hdisk4的PP SIZE为512M,当前可用PPS为760(380GB),满足本次实施需求。
3) 创建逻辑卷LV
注意:在AIX下使用LV创建裸设备时,有一个4k的偏移量问题,不能像平常用于文件系统的那样创建lv,否则oracle会在alter日志文件中报错如下:
Sun May 31 10:50:57 2009
WARNING: You are creating datafile /dev/rlvgisdata02.
WARNING: Oracle recommends creating new datafiles on devices with zero offset. The command "/usr/sbin/mklv -y LVname -T O -w n -s n -r n VGname NumPPs" can be used. Please contact Oracle customer support for more details.
关于AIX下的这个4k偏移量的问题,详细请google搜索一下;oracle官方给出的创建方法"/usr/sbin/mklv -y LVname -T O -w n -s n -r n VGname NumPPs",这里我们就采用该方法进行创建LV。
[dbser1:root:/]#mklv -y'lvgisdata03' -T O -w'n' -s'n' -r'n' -t raw gisvg 20 hdisk4
4) LV创建完成后,修改设备属主信息为oracle:dba
由于创建LV时采用的是root用户,设备默认的属主信息为root:system,而这个LV最终是要给oracle使用的,因此需要在所有节点上修改刚才创建的LV的属主信息为oracle:dba,否则该节点上的oracle将因为权限问题而无法使用该裸设备,导致表空间创建不成功、实例无法启动等问题。
下面分别在两个节点上对刚才创建的名为lvgisdata03的LV属主信息进行修改:
节点一:
[dbser1:root:/]#ls -l /dev/rlvgisdata*
[dbser1:root:/]#chown oracle:dba /dev/rlvgisdata03
[dbser1:root:/]#ls -l /dev/rlvgisdata*
[dbser1:root:/]#ls -l /dev/lvgisdata*
[dbser1:root:/]#chown oracle:dba /dev/lvgisdata03
[dbser1:root:/]#ls -l /dev/lvgisdata*
确认节点一上的属主信息都已正确修改后,在节点二上重复如上操作。
节点二:
[dbser2:root:/]#ls -l /dev/lvgisdata*
[dbser2:root:/]#ls -l /dev/rlvgisdata*
[dbser2:root:/]#chown oracle:dba /dev/rlvgisdata03
[dbser2:root:/]#chown oracle:dba /dev/ lvgisdata03
[dbser2:root:/]#ls -l /dev/lvgisdata*
[dbser2:root:/]#ls -l /dev/rlvgisdata*
5) 登录oracle创建表空间
根据前期规划,所要创建的表空间初始大小为6GB,最大大小为10GB,每次递增200MB,uniform size为 512K。
SQL> create tablespace FJTRANSPORT
2 datafile '/dev/rlvgisdata03' size 6G
3 autoextend on next 200M maxsize 10G
4 extent management local uniform size 512K;
Tablespace created.
6) 查看alter日志信息看是否存在报警信息,执行crs_stat –t查看RAC的各项服务进程状态。
[dbser1:oracle:/oracle]$vi /oracle/admin/gisdb/bdump/alert_gisdb1.log
[dbser2:oracle:/oracle]$crs_stat -t
至此,本次实施顺利完成。