阅读更多
(一)AIX下创建裸设备:
1.创建VG卷组:
#mkvg -S -y'datavg' -s'128'hdisk1 hdisk2....
其中:-S表示创建scalable-type的VG;-y表示创建vg的名称;-s表示PP SIZE的大小。
2.从VG中创建一个LV,名称为lv_db_test_1g:
#mklv -y'lv_db_test_1g' -t'raw' '-S128k' datavg 16 hdisk1 hdisk2...hdiskn
其中:在vg中创建一个lv_db_test_1g的lv;分别在pv上条带尺寸为128K,-t 表示类型为raw,这个类型只是个标志,可以随意指定。
3.修改相应权限:
chown oracle:oinstall /dev/rlv_db_test_1g;
注意"rlv"表示字符设备。
4.挂载数据文件:
ln -s /dev/rlv_db_test_1g /oracle/oradata/dgdemo/temp01.dbf
5.在数据库中创建表空间:
create tablespace temp datafile '/oracle/oradata/dgdemo/temp01.dbf' size 1000M reuse;
(二)linux下创建裸设备:
1.创建分区:
利用fdisk分一个区,比如划分/dev/hdb1;
2.挂载分区:
#raw /dev/raw/raw1 /dev/hdb1;
3.修改权限:
#chown oracle:oinstall /dev/raw/raw1
4.链接裸磁盘:
#ln -s /dev/raw/raw1 /oracle/oradata/dgdemo/temp.dbf
5.创建oracle的数据文件:
create tablespace temp datafile '/oracle/oradata/dgdemo/temp.dbf' size 1000M reuse;
备注:如果使用LVM来创建LV类型的裸设备:由于LVM创建的LV是块设备,不是字符设备,只有块设备;
#raw /dev/raw/raw1 /dev/lv_db_test_1g;
(三)裸设备备份:
使用dd命令:
if=file 指定输入文件,默认值为标准输入
of=file 指定输出文件,默认值为标准输出
bs=n 设置输入和输出的块大小为N字节(以k为单位)
skip=n 拷贝之前跳过n个数据块,默认值为0
seek=n 拷贝之前从输出文件首部跳过N块,默认值为0
count=0 指定拷贝的块数,默认到拷贝到输入文件结束。
注意:数据文件拷贝在数据库OFFILE或者数据库没有OPEN状态下拷贝:
dd精确拷贝:
dd if=/dev/rlv_db_test_1g f=/oracle/test01.dbf bs=4k skip=1 count=512002
dd整个数据文件拷贝:
dd if=/dev/rlv_db_test_1g f=/oracle/test01.dbf bs=4k seek=1
使用RMAN进行备份,必须在MOUNT和OPEN状态下拷贝:
rman>copy '/oracle/oradata/dgdemo/test01.dbf' to '/oracle/test01.dbf'