关于AIX lv 4k offset问题初步了解

关于这个问题我们首先来看一下AIX的vg的3种类型:
original vg 普通卷组
big vg 大卷组
scalable vg
动态的或者可扩展的卷组
如何快速区分这三组卷组呢?
通过其参数MAX
PVS,上述3个类型的卷组对应的限制是:32、128、1024;除此之外,还可以通过readvgda命令来读取pv的元数据判断。
好了,实际来看几个例子。

db1:/#uname
-a
AIX db1 1 6 00F7B72A4C00
db1:/#oslevel
-r
6100-07
这是一台aix6.1下的环境,含有rootvg和vg01两个卷组:
db1:/#lsvg
-o
vg01
rootvg
其中rootvg当然是系统使用的vg,vg01是准备用来被oracle使用的。
现有pv如下:
db1:/#lspv
hdisk0         
00f7b72ab2370b93                   
rootvg         
active    
 
hdisk1         
00f7b72aacb2dab0                   
rootvg         
active    
 
hdisk2         
none                               
None                      
 
hdisk3         
none                               
None                      
 
hdisk4         
none                               
None                      
 
hdisk5         
none                               
None                      
 
hdisk6         
none                               
None                      
 
hdisk7         
none                               
None                      
 
hdisk8         
00f7b72af78cefac                   
vg01           
active    
 
hdisk9         
00f7b72af78cf3f9                   
vg01           
active    
 
hdisk10        
00f7b72af78cf834                   
vg01           
active    
 
hdisk11        
00f7b72af7a7bf97                   
diskhb                    
 
现在我们通过MAX PVS这个参数判断卷组类型:
db1:/#lsvg rootvg
VOLUME
GROUP:      
rootvg                  
VG IDENTIFIER:  00f7b72a00004c000000013bb2371f49
VG
STATE:          
active                  
PP SIZE:        512 megabyte(s)
VG
PERMISSION:     
read/write              
TOTAL PPs:      1116 (571392 megabytes)
MAX
LVs:           
256                     
FREE PPs:       650 (332800
megabytes)
LVs:               
16                      
USED PPs:       466 (238592 megabytes)
OPEN
LVs:          
13                      
QUORUM:         1 (Disabled)
TOTAL
PVs:         
2                       
VG DESCRIPTORS: 3
STALE
PVs:         
0                       
STALE PPs:      0
ACTIVE
PVs:        
2                       
AUTO ON:        yes
MAX PPs per
VG:    
32512                                   
 
MAX PPs per PV:    
1016                    
MAX PVs:        32
LTG size (Dynamic):
1024 kilobyte(s)         AUTO
SYNC:      no
HOT
SPARE:         
no                      
BB POLICY:      relocatable
PV
RESTRICTION:    
none                    
INFINITE RETRY: no
db1:/#lsvg vg01
VOLUME
GROUP:      
vg01                    
VG IDENTIFIER:  00f7b72a00004c000000013ef78cf9e8
VG
STATE:          
active                  
PP SIZE:        256 megabyte(s)
VG
PERMISSION:     
read/write              
TOTAL PPs:      3597 (920832 megabytes)
MAX
LVs:           
256                     
FREE PPs:       3565 (912640
megabytes)
LVs:               
2                       
USED PPs:       32 (8192 megabytes)
OPEN
LVs:          
0                       
QUORUM:         2 (Enabled)
TOTAL
PVs:         
3                       
VG DESCRIPTORS: 3
STALE
PVs:         
0                       
STALE PPs:      0
ACTIVE
PVs:        
3                       
AUTO ON:        no
MAX PPs per
VG:    
32768                   
MAX PVs:        1024
LTG size (Dynamic):
256 kilobyte(s)          AUTO
SYNC:      no
HOT
SPARE:         
no                      
BB POLICY:      relocatable
MIRROR POOL STRICT:
off                                     
 
PV RESTRICTION:    
none                    
INFINITE RETRY: no
根据参数我们可以得出rootvg是original vg,而vg01是scalable
vg,通过readvgda也可以得出相同的结论:
db1:/#readvgda hdisk0  | grep -i
type
.....    readvgda_type:
smallvg
vgtype:        
0
对应的0就是original vg了,其他的还有1对应big vg,2对应scalable vg。

接下来我们看下关于4k
offset的问题。首先分别在original和scalable vg创建2个lv,一共4个lv:
db1:/#/usr/sbin/mklv
-y‘lv_system03_512‘ -t‘raw‘ rootvg 4
lv_system03_512
db1:/#/usr/sbin/mklv
-T O -y‘lv_system04_512‘ -t‘raw‘ rootvg
4
lv_system04_512
db1:/#/usr/sbin/mklv -y‘lv_system01_4g‘ -t‘raw‘ vg01
16
lv_system01_4g
db1:/#/usr/sbin/mklv -T O -y‘lv_system02_4g‘ -t‘raw‘
vg01 16
lv_system02_4g
查看下创建出来的lv:
db1:/#lslv
lv_system03_512
LOGICAL VOLUME:    
lv_system03_512        VOLUME
GROUP:   rootvg
LV IDENTIFIER:     
00f7b72a00004c000000013bb2371f49.15 PERMISSION:    
read/write
VG
STATE:          
active/complete        LV
STATE:      
closed/syncd
TYPE:              
raw                   
WRITE VERIFY:   off
MAX
LPs:           
512                   
PP SIZE:        512
megabyte(s)
COPIES:            
1                     
SCHED POLICY:  
parallel
LPs:               
4                     
PPs:           
4
STALE PPs:         
0                     
BB POLICY:     
relocatable
INTER-POLICY:      
minimum               
RELOCATABLE:   
yes
INTRA-POLICY:      
middle                
UPPER BOUND:    32
MOUNT
POINT:       
N/A                   
LABEL:          None
MIRROR
WRITE CONSISTENCY:
on/ACTIVE                            
 
EACH LP COPY ON A SEPARATE PV ?:
yes                                  
 
Serialize IO ?:    
NO                                   
 
INFINITE RETRY:    
no                                   
 
db1:/#lslv lv_system04_512
LOGICAL VOLUME:    
lv_system04_512        VOLUME
GROUP:   rootvg
LV IDENTIFIER:     
00f7b72a00004c000000013bb2371f49.16 PERMISSION:    
read/write
VG
STATE:          
active/complete        LV
STATE:      
closed/syncd
TYPE:              
raw                   
WRITE VERIFY:   off
MAX
LPs:           
512                   
PP SIZE:        512
megabyte(s)
COPIES:            
1                     
SCHED POLICY:  
parallel
LPs:               
4                     
PPs:           
4
STALE PPs:         
0                     
BB POLICY:     
relocatable
INTER-POLICY:      
minimum               
RELOCATABLE:   
yes
INTRA-POLICY:      
middle                
UPPER BOUND:    32
MOUNT
POINT:       
N/A                   
LABEL:          None
MIRROR
WRITE CONSISTENCY:
on/ACTIVE                            
 
EACH LP COPY ON A SEPARATE PV ?:
yes                                  
 
Serialize IO ?:    
NO                                   
 
INFINITE RETRY:    
no         
 

db1:/#lslv lv_system01_4g
LOGICAL
VOLUME:    
lv_system01_4g         VOLUME
GROUP:   vg01
LV IDENTIFIER:     
00f7b72a00004c000000013ef78cf9e8.1 PERMISSION:    
read/write
VG
STATE:          
active/complete        LV
STATE:      
closed/syncd
TYPE:              
raw                   
WRITE VERIFY:   off
MAX
LPs:           
512                   
PP SIZE:        256
megabyte(s)
COPIES:            
1                     
SCHED POLICY:  
parallel
LPs:               
16                    
PPs:           
16
STALE PPs:         
0                     
BB POLICY:     
relocatable
INTER-POLICY:      
minimum               
RELOCATABLE:   
yes
INTRA-POLICY:      
middle                
UPPER BOUND:    1024
MOUNT
POINT:       
N/A                   
LABEL:          None
MIRROR
WRITE CONSISTENCY:
on/ACTIVE                            
 
EACH LP COPY ON A SEPARATE PV ?:
yes                                  
 
Serialize IO ?:    
NO                                   
 
INFINITE RETRY:    
no                                   
 
DEVICESUBTYPE:     
DS_LVZ                                      
 
COPY 1 MIRROR POOL:
None                                 
 
COPY 2 MIRROR POOL:
None                                 
 
COPY 3 MIRROR POOL:
None                                 
 
db1:/#lslv lv_system02_4g
LOGICAL VOLUME:    
lv_system02_4g         VOLUME
GROUP:   vg01
LV IDENTIFIER:     
00f7b72a00004c000000013ef78cf9e8.2 PERMISSION:    
read/write
VG
STATE:          
active/complete        LV
STATE:      
closed/syncd
TYPE:              
raw                   
WRITE VERIFY:   off
MAX
LPs:           
512                   
PP SIZE:        256
megabyte(s)
COPIES:            
1                     
SCHED POLICY:  
parallel
LPs:               
16                    
PPs:           
16
STALE PPs:         
0                     
BB POLICY:     
relocatable
INTER-POLICY:      
minimum               
RELOCATABLE:   
yes
INTRA-POLICY:      
middle                
UPPER BOUND:    1024
MOUNT
POINT:       
N/A                   
LABEL:          None
MIRROR
WRITE CONSISTENCY:
on/ACTIVE                            
 
EACH LP COPY ON A SEPARATE PV ?:
yes                                  
 
Serialize IO ?:    
NO                                   
 
INFINITE RETRY:    
no                                   
 
DEVICESUBTYPE:     
DS_LVZ                                      
 
COPY 1 MIRROR POOL:
None                                 
 
COPY 2 MIRROR POOL:
None                                 
 
COPY 3 MIRROR POOL:
None                                 
 

结合结果,有如下结论:
0. Origninal VG无论是否使用“-T
O”参数,创建出来的lv都是DS_LV;
1. Scalable VG无论是否使用“-T O”参数,创建出来的lv都是DS_LVZ;
2. Big
VG使用“-T
O”参数创建出来的lv是DS_LVZ类型,否则是DS_LV类型。

通过查看lv的属性DEVICESUBTYPE:DS_LVZ也就是没有偏移的lv,初次之外Oracle也提供了一个工具来检查是有offset:
db1:/#ls
-l /dev/lv_*
brw-rw----    1 root    
system       53,  1 Jul 02 09:12
/dev/lv_system01_4g
brw-rw----    1
root     system      
53,  2 Jul 02 09:15 /dev/lv_system02_4g
brw-rw----    1
root     system       10, 15
Jul 02 09:16 /dev/lv_system03_512
brw-rw----    1
root     system       10, 16
Jul 02 09:18 /dev/lv_system04_512
db1:/#ls -l
/dev/rlv_*
crw-rw----    1 root    
system       53,  1 Jul 02 09:12
/dev/rlv_system01_4g
crw-rw----    1
root     system      
53,  2 Jul 02 09:15 /dev/rlv_system02_4g
crw-rw----    1
root     system       10, 15
Jul 02 09:16 /dev/rlv_system03_512
crw-rw----    1
root     system       10, 16
Jul 02 09:18
/dev/rlv_system04_512
其中每个lv对应有快设备和字符设备,oracle使用的是字符设备:
db1:/#chown
oracle:oinstall /dev/rlv_*
db1:/#chmod 700 /dev/rlv_*
db1:/#ls -l
/dev/rlv_*
crwx------    1 oracle  
oinstall     53,  1 Jul 02 09:12
/dev/rlv_system01_4g
crwx------    1 oracle  
oinstall     53,  2 Jul 02 09:15
/dev/rlv_system02_4g
crwx------    1 oracle  
oinstall     10, 15 Jul 02 09:16
/dev/rlv_system03_512
crwx------    1 oracle  
oinstall     10, 16 Jul 02 09:18
/dev/rlv_system04_512
由于该工具只能检查被用于数据文件的lv,因此只能在被使用之后检查,现在先删除掉上述4个lv,之后重新创建用于测试,注意要用root用户执行:
db1:/oracle$
dbfsize /dev/rlv_system01_4g
/dev/rlv_system01_4g: Header block magic number
is bad; trying raw file format...
/dev/rlv_system01_4g: Header block magic
number is bad
db1:/oracle$ dbfsize
/dev/rlv_system03_512
       
/dev/rlv_system03_512: Header block magic number is bad
删除  rmlv -f
‘rlv_system01_4g‘ rmlv -f ‘rlv_system02_4g‘ rmlv -f ‘rlv_system03_512‘ rmlv -f
‘rlv_system04_512‘

在创建数据库之后重新执行下如下结果就可以结果:
db1:/#/oracle/app/oracle/product/10.2/db1/bin/dbfsize
/dev/lv_control_01

Database file: /dev/lv_control_01
Database file
type: raw device without 4K starting offset
Database file size: 334 16384
byte blocks      
 

这个是没有offset的.
接着来看下有offset的结果:
/usr/sbin/mklv -y‘lvtest‘ -t‘raw‘
rootvg 1          
 
chown oracle:oinstall /dev/rlvtest
chmod 700 /dev/rlvtest

db1:/#su - oracle
db1:/oracle$ sqlplus "/as sysdba"

SQL*Plus:
Release 10.2.0.4.0 - Production on Tue Jul 2 11:50:32 2013

Copyright (c)
1982, 2007, Oracle.  All Rights Reserved.

Connected
to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit
Production
With the Partitioning, OLAP, Data Mining and Real Application
Testing options

SQL> create tablespace gtlions datafile
‘/dev/rlvtest‘ size 10m;

Tablespace created.

SQL>
exit
Disconnected from Oracle Database 10g Enterprise Edition Release
10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and
Real Application Testing options
db1:/oracle$
/oracle/app/oracle/product/10.2/db1/bin/dbfsize /dev/lvtest 
 

Database file: /dev/lvtest
Database file type: raw
device     
Database file size: 1280 8192 byte
blocks   
 
而且使用有offset的lv创建表空间的时候在后台日志也会做相应的记录并提出建议:
create tablespace gtlions
datafile ‘/dev/rlvtest‘ size 10m
WARNING: You are creating datafile
/dev/rlvtest.
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.
WARNING: You are creating/reusing datafile
/dev/rlvtest.
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.
Completed: create tablespace gtlions datafile ‘/dev/rlvtest‘ size
10m

转载:http://blog.csdn.net/gtlions/article/details/9223705

关于AIX lv 4k offset问题初步了解,码迷,mamicode.com

时间: 2024-11-02 16:43:03

关于AIX lv 4k offset问题初步了解的相关文章

[转] AIX lv 4k偏移量

转自:http://www.aixchina.net/Question/29969 前几天在客户数据库做巡检的时候,在警告日志中发现有如下警告:引用WARNING: You are creating datafile /dev/rtbs_data01.WARNING: Oracle recommends creating new datafiles on devices with zero offset. The command "/usr/sbin/mklv -y LVname -T O -w

读了这篇文章 AIX误删除数据的恢复将变得非常简单

在AIX环境下,若因维护误操作.存储mapping错误等,不小心将LV误删除,这种损失通常是巨大的.删除后的不当保护及恢复操作可能使数据无法恢复,也可能增加处理的时间与算法复杂度.如何有效保护现场,并选择正确的数据恢复方案是非常重要的. AIX的存储层有太多文章描述,做为铺垫,简要描述一下.PV相当于物理磁盘(对于存储,是存储映射过来的卷,对于操作系统而言,等同于物理硬盘),若干个PV组成一个VG,意味着可以将容量不同的存储空间合起来统一分配.为了实现这个目的,AIX把同一个VG的所有PV按相同

TRANLOGOPTIONS RAWDEVICEOFFSET

今天介绍一下ogg中TRANLOGOPTIONS RAWDEVICEOFFSET参数,在ogg的官方文档中是没有这个参数的说明的. 这个参数的作用就是,当你使用裸设备的时候需要设置该参数. 下面看看mos上咋说: Oracle GoldenGate Supports Reading Redo And Archive Log files Stored On Raw Devices With Source Database On AIX OS And Also Requires TRANLOGOPT

AIX使用LV创建ASM磁盘组

纠结啊为毛感觉只过了一天,就有两天没写了,今天晚上的机票离开上海.希望小叶子不会难为我. 昨晚研究了一下插卡小哥的业务流程,发现他并不是每个房间都插的,时间在每晚的9点到11点之间.估计是会在周边每个宾馆巡回一遍,插广告的房间有两种可能,第一种就是他们和宾馆沆瀣一气,知道哪个房间有人,第二种可能就是他们只给大床房的房间发,7天没有单间所以单身旅客一般会选择大床房,这绝对是优质潜在用户哇. 晚上看了个 正者无敌 还挺好看的样子,里面男主娶了3房姨太太,不错不错~ 晚上做了个梦,醒来后还是格外清晰,

AIX环境通过增加lv大小来增加ASM diskgroup 大小----非常规方法

先交代环境: AIX 7.1 Oracle/ASM 11.2.0.3 单实例 今测试环境需要将ASM中flashdg的大小增大到35G(目前10G),diskgroup是基于在vg中以raw方式划分出来的lv创建的. 由于是测试环境仅通知AIX管理员,AIX管理员直接通过smit lv 增加fsflashdglv的pp个数,添加之后再操作系统中可以发现lv是增大了,但是flashdg1没有增大.下面来描述整个过程. -----此为非常规方案,常规方案应该是新建lv后,以add disk的方式来增

aix 更改(扩大或减小)增删容量LV

aix 更改lv的大小 smitty extendlv chlv -n NewLVname LVname AIX下减小lv size 1,计算逻辑卷(假设为lvkrnltest)中需要缩小的LP数量 这步不能出错,一旦多删了就麻烦了这你已经计算好了,是最后20个LP. 2,获取lvkrnltest的LVIDgetlvodm -l lvkrnltest00cb1faf00004c000000010a35404686.50 3,获取LV的mapping信息lquerylv -L 00cb1faf00

aix 下创建vg和lv

1.LVM背景介绍 在AIX中,磁盘管理策略是一种Logical Volume Management的方法.简单的说,就是将存储划分为物理卷PV(Phsical Volume).逻辑卷组VG(Logical Volume Group)和逻辑卷LV(Logical Volume)三个层次进行管理. 物理卷是我们最直观的磁盘或者分区,操作系统中可能有多种存储设备.在LVM中,都将其视为物理卷对象(PV). 若干物理卷可以划归到一个逻辑组织中进行统一管理,这就是逻辑卷组(Logical Volume

AIX PV VG LV详解

1.基本概念:PV 物理卷:普通的直接访问的存储设备,有固定的和可移动的之分,代表性的就是硬盘.vg 卷组:AIX中最大的存储单位,一个卷组由一组物理硬盘组成,也就是由一个或多个物理卷组成.pp 物理分区:是把物理卷划分成连续的大小相等的存储单位,一个卷组中的物理分区大小都相等.lp 逻辑分区:适映射物理分区的逻辑单位,一个逻辑分区可以对应一个也可以对应多个物理分区.lv 逻辑卷:是指卷组中由多个逻辑分区组成的集合,逻辑卷中的逻辑分区是连续的,但是对应的物理分 区是不连续的,可以在一个磁盘上,也

AIX命令创建JFS2的LV及FS(非smitty交互模式)

AIX命令创建JFS2的LV及FS 下面命令是创建一个2g逻辑卷及在此卷上创建jfs2的文件系统,并挂载,并配置 系统自动挂载 #mkdir /databack #mklv -t jfs2 -y lv_databack datavg 2g -t 为逻辑卷类型 -y为逻辑卷名字 datavg是指定卷组 2g是逻辑卷的大小 #crfs -v jfs2 -d lv_databack -A yes -m /databack -v 为文件系统的类型 -d为逻辑卷名字 -A 为系统重启后自动挂载 -m为挂载