在unix下和linux下创建裸设备总结

阅读更多
(一)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'

你可能感兴趣的:(Linux,Unix,Oracle,AIX,F#)