su - root
mkdir /asmdisk
==在unix/linux中,所有设备都是文件,所以我们可以建几个文件来模拟多块硬盘。先用dd建若干个文件,大小为1G
dd if=/dev/zero of=/asmdisk/disk1 bs=1024k count=500
dd if=/dev/zero of=/asmdisk/disk2 bs=1024k count=500
dd if=/dev/zero of=/asmdisk/disk3 bs=1024k count=500
dd if=/dev/zero of=/asmdisk/disk4 bs=1024k count=500
////// 如果在安装失败可以使用这个命令,清空ASM磁盘 dd if=/dev/zero of=/asmdisk/disk4 bs=8192 count=500//////
==用losetup命令,使这些文件在linux看来是某个存储设备
/sbin/losetup /dev/loop1 /asmdisk/disk1
/sbin/losetup /dev/loop2 /asmdisk/disk2
/sbin/losetup /dev/loop3 /asmdisk/disk3
/sbin/losetup /dev/loop4 /asmdisk/disk4
raw /dev/raw/raw1 /dev/loop1
raw /dev/raw/raw2 /dev/loop2
raw /dev/raw/raw3 /dev/loop3
raw /dev/raw/raw4 /dev/loop4
注意:如果要删除通过dd模拟出的虚拟磁盘文件的话,直接删除模拟出的磁盘文件(也就是asm_disk1、asm_disk2…asm_disk6)还不够,
还必须执行losetup -d /dev/loopN,在这里N从1到6。否则,磁盘文件所占用的磁盘空间不能释放。
cd /dev/raw
ls -ltr
chown -R Oracle:oinstall *
chmod 660 *
ls -ltr
为了避免重启后之前的配置失效可做以下设置:
vi /etc/rc.local
#添加以下内容
/sbin/losetup /dev/loop1 /asmdisk/disk1
/sbin/losetup /dev/loop2 /asmdisk/disk2
/sbin/losetup /dev/loop3 /asmdisk/disk3
/sbin/losetup /dev/loop4 /asmdisk/disk4
raw /dev/raw/raw1 /dev/loop1
raw /dev/raw/raw2 /dev/loop2
raw /dev/raw/raw3 /dev/loop3
raw /dev/raw/raw4 /dev/loop4
开始安装oracle软件,并配置asm磁盘。
su - oracle
dbca
创建asm
运行脚本
创建asmdg
check asmdg
sqlplus / as sysdba
select name from v$datafile;
确认数据文件位于asm磁盘上