数据库生态圈(RDB & NoSQL & Bigdata)——专注于关系库优化(Oracle & Mysql & Postgresql & SQL Server )

https://www.cnblogs.com/lhdz_bj
http://blog.itpub.net/8484829
https://blog.csdn.net/tuning_optmization
https://www.zhihu.com/people/lhdz_bj

导航

linux LVM详解

 

 

1.创建及删除步骤
1)创建:linux partition-->pv-->vg-->lv-->fs-->mount
2)删除:umount-->lv-->vg-->pv-->linux partition

2.linux partition
linux中,我们常用fdisk对磁盘分区。但对于2T以上的磁盘,得用parted命令分区。
1)GPT磁盘和MBR磁盘
使用GUID分区表的磁盘通常称为GPT磁盘,不像原来MBR磁盘,GPT磁盘没有四个主分区的限制,可以设置多达128个分区,通常用parted命令来对GPT磁盘进行分区。

2)操作

--查看磁盘分区
[root]# fdisk -l

--对sda进行分区
[root]# parted /dev/sda   

--重新扫描分区
[root]# partprobe   

--查看分区后
[root]# fdisk -l   


3 PV管理
1)创建PV(pvcreate)
[root]# pvcreate /dev/sda3


2)查看PV(pvs或pvscan)
[root]# pvs
[root]# pvscan


3)查看PV详细信息(pvdiskplay)
[root]# pvdisplay /dev/sda3

4)删除PV(pvremove)
[root]# pvremove /dev/sda3

4.VG管理
1) 创建VG(vgcreate)
   语法:vgcreate [-s  <8M|16M|...>] vg0 /dev/sdb{1,2,3...} 
   --其中:
     -s:指定扩展块(PE)的大小,默认为4MB;可以是8M,16M,32M,64M,...,16G,但一个LV最多可以有65532个扩展块。
     vg0:新创建的VG名字。
     /dev/sdb{1,2,3...}:可写多个PV,PV间以空格分隔; 

[root]# vgcreate -s 16M testvg /dev/sda3

2)查看VG(vgs或vgscan)
[root]# vgs
[root]# vgscan

3)查看VG详细信息(vgdisplay)
[root]# vgdisplay testvg

4)vg扩展(vgextend)
--用fdisk划新partition
[root]# fdisk /dev/sda   

Command (m for help): n
Select (default e): e
Selected partition 4
First sector (117187501-209715199, default 117188608):
Last sector, +sectors or +size{K,M,G} (117188608-209715199, default 209715199):
Command (m for help): p
Command (m for help): n
All primary partitions are in use
Adding logical partition 5
First sector (117190656-209715199, default 117190656):
Using default value 117190656
Last sector, +sectors or +size{K,M,G} (117190656-209715199, default 209715199): +20G
--改分区类型为lvm
Command (m for help): t    
Partition number (1-5, default 5):
Hex code (type L to list all codes): 8e
Command (m for help): w
--再次查看partition
[root]# fdisk -l

--通知系统核心分区改变
[root]# partprobe   

--创建PV
[root]# pvcreate /dev/sda5  

--扩展vg
[root]# vgextend testvg /dev/sda5  

5)vg缩小
[root]# vgreduce testvg /dev/sda5

6)vg删除
[root]# vgremove testvg

5 LV的管理
1)LV的创建(lvcreate)
语法1:lvcreate -L 512M -n data testvg -L 512M
--其中
  设置LV的大小为512M。 
  -n data:设置LV的名字为data。 
[root]# lvcreate -L 510M -n date testvg

语法2:lvcreate -l 32 -n data testvg  -l 32
--其中
  生成的LV使用32个扩展块,LV大小=32*PE(默认4M)则为128M。 
  -n data:LV的名字。vg0 :设置是有那个VG生成的LV。 
  vg0 :设置是有那个VG生成的LV。 
[root]# lvcreate -l 10 -n data testvg

2) 查看LV(lvs或者lvscan)
[root]# lvs

3)查看LV详细信息(lvdisplay)
[root]# lvdisplay testvg

4)格式化LV(mkfs.ext3)
[root]# mkfs.ext3 /dev/testvg/data

5)增大LV(lvextend)
[root]#lvextend -L +160M /dev/testvg/data
--其中
  为使其立即生效需用resize2fs
[root]#resize2fs /dev/testvg/data

6)减少LV大小(lvreduce)
[root]# lvreduce -L 160M /dev/testvg/data
[root]# resize2fs /dev/testvg/data

7)删除LV(lvremove/vg/lv)

[root]# lvremove /dev/testvg/date

6)挂载文件系统
[root]# mkfs.ext3 /dev/testvg/data
[root]# mkdir  /data
[root]# mount  /dev/testvg/data /data

7 lvm快照
1)创建snapshot
语法:lvcreate -l 64 -s -n databackup /dev/testvg/data 
--其中
-l 64:指定快照64个扩展块。
总容量=64*单扩展块大小 
-n databackup:生成的快照的名字。 
/dev/testvg/data:源LV名字。
[root]# lvcreate -L 160M -s -n databackup /dev/testvg/data

2)查看LVM快照(lvscan)
[root]# lvscan

3)查看快照详细信息(lvdisplay)
[root]# lvdisplay /dev/testvg/data

4)快照的删除(lvremove)
[root]# lvremove /dev/testvg/databackup

 

posted on 2018-11-08 18:34  lhdz_bj  阅读(3933)  评论(0编辑  收藏  举报