需求场景

将MySQL主机的218T的数据盘空间全部“合并”后挂载到/mysql_data目录下,要求文件系统格式化为xfs;已有关键信息梳理如下:

  • 需要挂载的数据盘

    • /dev/sdb:18T
    • /dev/sdc:18T
  • 文件系统:xfs
  • 挂载目录:/mysql_data

操作系统环境

  • OS版本:CentOS 7.5
  • lvm版本:lvm2

实现方法

要想实现此需求,可使用LVM逻辑卷管理来做到。

实现步骤

磁盘分区

在将磁盘或者磁盘分区用作物理卷(PV)之前,需要对其进行初始化工作,即进行磁盘分区操作;因磁盘分区需求大于2T,所以fdisk无法实现管理,需要使用parted命令来做磁盘分区管理;parted的详细使用方法请参考博主之前的博客:使用parted命令对磁盘进行分区

  • /dev/sdb
# 新建/dev/sdb的磁盘标签类型为GPT
[root@MYSQL-SERVER ~]# parted /dev/sdb mklabel gpt
# 将/dev/sdb整个空间分给同一个分区
[root@MYSQL-SERVER ~]# parted /dev/sdb mkpart primary 0 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? I
Information: You may need to update /etc/fstab.
  • /dev/sdc
# 新建/dev/sdc的磁盘标签类型为GPT
[root@MYSQL-SERVER ~]# parted /dev/sdc mklabel gpt
# 将/dev/sdc整个空间分给同一个分区
[root@MYSQL-SERVER ~]# parted /dev/sdc mkpart primary 0 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? I
Information: You may need to update /etc/fstab.

创建物理卷

创建物理卷的命令为pvcreate;利用该命令将希望添加到卷组的所有分区或磁盘创建为物理卷;

将分区/dev/sdb1/dev/sdc1分区创建为物理卷:

[root@MYSQL-SERVER ~]#  pvcreate /dev/sdb1
Physical volume "/dev/sdb1" successfully created.
[root@MYSQL-SERVER ~]# pvcreate /dev/sdc1
Physical volume "/dev/sdc1" successfully created.

创建卷组

创建卷组的命令为vgcreate;用此命令将使用pvcreate建立的物理卷创建为一个完整的卷组;

将物理卷/dev/sdb1创建为一个名为vgmysql的卷组:

[root@MYSQL-SERVER ~]#  vgcreate vgmysql /dev/sdb1
Volume group "vgmysql" successfully created

添加新的物理卷到卷组中

此步即为将2块磁盘空间合二为一的关键步骤;当系统中新增了磁盘或新建了物理卷,而要将其添加到已有卷组时,就可使用vgextend命令;

将物理卷/dev/sdc1添加到vgmysql卷组中:

[root@MYSQL-SERVER ~]#  vgextend vgmysql /dev/sdc1
Volume group "vgmysql" successfully extended

查看卷组

查看卷组用vgs

[root@MYSQL-SERVER ~]#  vgs
VG #PV #LV #SN Attr VSize VFree
vgmysql 2 0 0 wz--n- 32.74t 32.74t
vgroot 1 4 0 wz--n- 264.00g 4.00m

从vgs命令的回显结果来看,卷组vgmysql成功添加,并且其总空间为两块物理磁盘的总大小(因换算单位不同,所以不是精确的38T)。

创建逻辑卷

创建逻辑卷的命令为lvcreate;用此命令将在使用vgcreate建立的卷组上创建逻辑卷;

在卷组vgmysql上创建一个名为lvmysql的逻辑卷,起大小为32.7T

  • -n:指定逻辑卷名
  • -L:指定逻辑卷大小
[root@MYSQL-SERVER ~]#  lvcreate -L 32.7T -n lvmysql vgmysql
Rounding up size to full physical extent 32.70 TiB
Logical volume "lvmysql" created.

格式化逻辑卷

将创建的lvmysql逻辑卷格式化为xfs

[root@MYSQL-SERVER ~]#  mkfs -t xfs /dev/vgmysql/lvmysql
meta-data=/dev/vgmysql/lvmysql isize=512 agcount=33, agsize=268435328 blks
= sectsz=4096 attr=2, projid32bit=1
= crc=1 finobt=1, sparse=0, rmapbt=0, reflink=0
data = bsize=4096 blocks=8777839616, imaxpct=5
= sunit=64 swidth=64 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=521728, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0

创建挂载目录并挂载

  • 创建挂载目录/mysql_data
[root@MYSQL-SERVER ~]#  mkdir /mysql_data
  • 挂载
[root@MYSQL-SERVER ~]#  mount /dev/vgmysql/lvmysql /mysql_data/
  • 做开机自动挂载
echo '
/dev/mapper/vgmysql-lvmysql /mysql_data xfs defaults 0 0' >/etc/fstab

查看是否挂载成功

[root@MYSQL-SERVER ~]#  df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vgroot-lv_root 40G 1.8G 36G 5% /
devtmpfs 126G 0 126G 0% /dev
tmpfs 126G 0 126G 0% /dev/shm
tmpfs 126G 1.1M 126G 1% /run
tmpfs 126G 0 126G 0% /sys/fs/cgroup
/dev/sda1 976M 197M 713M 22% /boot
/dev/mapper/vgroot-lv_var 59G 197M 56G 1% /var
/dev/mapper/vgroot-lv_home 99G 5.6G 88G 6% /home
tmpfs 26G 0 26G 0% /run/user/0
/dev/mapper/vgmysql-lvmysql 33T 34M 33T 1% /mysql_data
[root@MYSQL-SERVER ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 446.1G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 264G 0 part
│ ├─vgroot-lv_root 253:0 0 40G 0 lvm /
│ ├─vgroot-lv_swap 253:1 0 64G 0 lvm [SWAP]
│ ├─vgroot-lv_var 253:2 0 60G 0 lvm /var
│ └─vgroot-lv_home 253:3 0 100G 0 lvm /home
└─sda3 8:3 0 64M 0 part
sdb 8:16 0 16.4T 0 disk
└─sdb1 8:17 0 16.4T 0 part
└─vgmysql-lvmysql 253:4 0 32.7T 0 lvm /mysql_data
sdc 8:32 0 16.4T 0 disk
└─sdc1 8:33 0 16.4T 0 part
└─vgmysql-lvmysql 253:4 0 32.7T 0 lvm /mysql_data
nvme0n1 259:0 0 1.5T 0 disk
[root@MYSQL-SERVER ~]# blkid
/dev/sda1: UUID="5a350fc9-d3d2-44c7-9574-30bf9a9dd0d3" TYPE="ext4"
/dev/sda2: UUID="Sum0Mm-6ShR-6ajh-cYQO-091c-r7QI-zfbDpm" TYPE="LVM2_member"
/dev/sda3: UUID="2019-05-24-11-39-22-00" LABEL="config-2" TYPE="iso9660"
/dev/mapper/vgroot-lv_root: UUID="df07731a-5e56-4cc3-95ab-b723b5979332" TYPE="ext4"
/dev/mapper/vgroot-lv_swap: UUID="7b5cd64d-d316-430d-8a83-aca89c4708d2" TYPE="swap"
/dev/mapper/vgroot-lv_var: UUID="025cb128-de8f-4bca-8206-5c1601e79715" TYPE="ext4"
/dev/mapper/vgroot-lv_home: UUID="7bd155b6-9200-442a-a61a-32076c0e4b7e" TYPE="ext4"
/dev/sdc1: UUID="rWbWuV-nt59-ba72-VJrL-RTM2-EJJt-VVkhZF" TYPE="LVM2_member" PARTLABEL="sdc1" PARTUUID="355eb343-f2c9-4f13-9477-52b0fb267d5f"
/dev/sdb1: UUID="yfQk1G-nlN8-OOYu-nptl-cg2d-rD0L-uBFnhW" TYPE="LVM2_member" PARTLABEL="sdb1" PARTUUID="19db36ba-ec9c-4f35-9b29-b7bd2155f0dd"
/dev/mapper/vgmysql-lvmysql: UUID="67cda45d-4282-4346-8be1-e4ec375c2892" TYPE="xfs"
[root@MYSQL-SERVER ~]# tail -1 /etc/fstab
/dev/mapper/vgmysql-lvmysql /mysql_data xfs defaults 0 0

LVM实现将2块磁盘总空间“合二为一”并挂载到同一目录的更多相关文章

  1. RAD介绍及实战,LVM介绍及实战,磁盘常见故障

    目录 一.RAID 1.RAID好处: 2.RAID的运行方式: 3.RAID的级别: 二.RAID实战 软RAID 1.RAID0 2.RAID1 3.RAID5 4.RAID10 三.LVM介绍 ...

  2. ASM磁盘组空间不足--ORA-15041:DISGROUP DATA space exhausted (生产库案例)

    原创作品,出自 "深蓝的blog" 博客,深蓝的blog:http://blog.csdn.net/huangyanlong/article/details/47277715 近日 ...

  3. Java获取Linux和Window系统CPU、内存和磁盘总使用率的情况

    这是一个工具类,获取的内容: CPU使用率:得到的是当前CPU的使用情况,这是算出的是两次500毫秒时间差的CPU使用率 内存使用率:[1 -  剩余的物理内存/(总的物理内存+虚拟内存) ] * 1 ...

  4. Linux下查看磁盘剩余空间和文件夹大小

    1. du -sh 查看当前文件夹大小 2. du -sh * | sort -n 列出当前文件夹下的所有文件夹及其大小,并按照文件夹大小排序 du - sh *  //查看当前文件夹下所有文件的大小 ...

  5. /tmp/crontab.tDoyrp: 设备上没有空间 查看文件夹所在分区 磁盘剩余空间 15g的root-mail大文件

    问题诊断: 文件夹所在磁盘已满 问题确认: 查看文件夹所在磁盘剩余空间,找出空间被消耗的文件(集) 查看文件夹所在磁盘空间的所属文件(暂未解决) [root@hadoop1 /]# df -Bg /t ...

  6. 解决samba共享虚拟机第二块磁盘的难题

    linux下使用samba共享文件到window下已经实现过了   点此链接 但是共享时磁盘空间是有限的,如果空间使用完了该怎么处理呢?这是个头疼的问题,不知道samba支持不支持共享第二个文件夹,由 ...

  7. 系统服务监控指标--load、CPU利用率、磁盘剩余空间、磁盘I/O、内存使用情况等

    介绍 大型互联网企业的背后,依靠的是成千上万台服务器日夜不停的运转,以支撑其业务的运转.宕机对于互联网企业来说,代价是沉重的,轻则影响用户体验,重则直接影响交易,导致交易下跌,并且给企业声誉造成不可挽 ...

  8. Linux系统查看磁盘可用空间的5个命令

    大家好,我是良许. 工作中,经常会遇到磁盘爆满的情况,尤其是一台服务器运行了 N 年之后,里面会充满各种各样垃圾文件,比如:编译产生的中间文件.打包的镜像文件.日志文件,等等. 别问我怎么知道,我上家 ...

  9. android计算每个目录剩余空间丶总空间以及SD卡剩余空间

    ublic class MemorySpaceCheck { /** * 计算剩余空间 * @param path * @return */ public static String getAvail ...

随机推荐

  1. mysql8.0编译安装

    #下载依赖 yum install -y ncurses ncurses-devel cmake bison bison-devel openssl openssl-libs openssl-deve ...

  2. vuex知识笔记,及与localStorage和sessionStorage的区别

    菜单快捷导航 Vuex是什么东东,有什么应用场景?localStorage和sessionStorage能否替代它? Vuex知识点State.Getter.Mutaion.Action Vuex模块 ...

  3. [Memcached]操作

    telnet连接memcached 查看端口是否可访问 # telnet 172.16.1.1 11211 Trying 172.16.1.1... Connected to 172.16.1.1. ...

  4. 如何使用Xcode调试Shader代码Bug导致的渲染问题

    我最近发现了一个与Unity中的表面着色器有关的小Bug. 你可以看到如下所示的渲染瑕疵. 有时人们会将相似的渲染瑕疵归因于同时使用HDR和Bloom效果,但实际上,表面着色器是错误的,至少在本文中所 ...

  5. RaspberryPi 3b+ 安装OpenWrt教程

    layout: post title: "RaspberryPi 3b+ 安装OpenWrt教程" date: 2019-09-28 22:00:00 +0800 categori ...

  6. leetcode-简单-栈-逆波兰表达式

    根据逆波兰表示法,求表达式的值. 有效的运算符包括 +, -, *, / .每个运算对象可以是整数,也可以是另一个逆波兰表达式. 说明:  整数除法只保留整数部分. 给定逆波兰表达式总是有效的.换句话 ...

  7. 获取域hash并破解

    ntds.dit ntds.dit是主要的AD数据库,存放在C:\Windows\NTDS\NTDS.dit,包括有关域用户,组和组成员身份的信息.它还包括域中所有用户的密码哈希值.为了进一步保护密码 ...

  8. Happycorp:1 Vulnhub Walkthrough

    靶机链接: https://www.vulnhub.com/entry/happycorp-1,296/ 网络主机扫描::: 主机端口扫描: NFS文件系统,尝试挂载试试 mount -t nfs 1 ...

  9. 从表单驱动到模型驱动,解读低代码开发平台的发展趋势 ZT

    原文地址:https://www.grapecity.com.cn/blogs/read-the-trends-of-low-code-development-platforms 随着社会数字化进程的 ...

  10. Linux学习记录(二):常用工具

    博主使用的操作系统为Ubuntu tmux 终端分屏 安装 Ubuntu使用apt-get安装 sudo apt-get install tmux 使用 默认命令键:Ctrl + B %(百分号) 左 ...