前言:由于在虚拟机里安装了个oracle11g。做批量导入功能导致虚拟机根目录/存储量达到100%,所以才有了本次虚拟机扩容
看一下扩容之前的容量
df -h
1.接下来咱们正式开始扩容,先把虚拟机关机,设置->硬盘->扩展 原来40G现在改成80G
2.设置后进系统查看空间大小变化,df -h 实际并没有什么变化,关掉oracle数据库,关掉监听开始扩容
sqlplus / as sysdba;
shutdown immediate;
exit;
lsnrctl stop;
切换到root用户,执行命令:lsblk 进行查看当前分区
3.发现我在虚拟机中扩展的空间在sda中,对sda进行分区。
执行命令:fdisk /dev/sda 将sda空间新开辟出sda3分区
操作:m -> n -> p -> 3 -> 回车(默认) -> 回车(默认) -> w
4.执行命令:fdisk -l 发现sda3 的Id 是83 我们要将它改成8e跟sda2是一样的 将sda3的system 类型改成Linux LVM
执行命令:fdisk /dev/sda
操作:m -> t -> 3 -> L -> 8e -> w
5.执行命令:mkfs.ext4 /dev/sda3,将文件格式改成ext4,执行这个命令我遇到了:格式化磁盘不成功,报错:Could not stat /dev/sda3 — No such file or directory,经过查询是因为,分区报错(如下图)
解决:怀疑问题出在系统并未找到/dev/sda3,也就是分区之后,此分区没有被系统重新识别
因为粗心,所以没看到磁盘分区操作后面的那段warning …
大概意思是:设备繁忙,内核仍然使用旧磁盘表,新磁盘表将会在下次重启或执行命令partprobe 或者 kpartx后才会使用(我就是重新启动虚拟机),在执行 mkfs.ext4 /dev/sda3 命令就好了。
6.执行命令:pvcreate /dev/sda3 创建sda3
7.执行命令:pvdisplay 进行查看是否创建成功
8.执行命令:vgextend centos /dev/sda3 设置sda3的VG NAME和 sda2一致(sda2是centos ,所以我这里也是设置为centos )
执行命令:pvdisplay 查看是否修改成功
9.执行命令:lvextend -L +51G /dev/mapper/centos-root 进行扩容(注意51G要看你的sd3分区有多大,我的是51.67GB)
10.执行命令:lvs进行查看是否成功
执行命令:xfs_growfs /dev/mapper/centos-root
11.扩充完毕执行命令:df -h 查看下(如果看不到,重启一下看看)
参考博客:https://blog.youkuaiyun.com/weixin_40436144/article/details/86235432?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-2-86235432-blog-128555910.pc_relevant_aa&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-2-86235432-blog-128555910.pc_relevant_aa&utm_relevant_index=5
https://blog.youkuaiyun.com/qq_34208660/article/details/115961982