Oracle Vagrant Box 扩展根文件系统

需求

默认的Oracle Database 19c Vagrant Box的磁盘为34GB。

最近在做数据库升级实验,加之导入AWR dump数据,导致空间不够。

因此需要对磁盘进行扩容。

扩容方法1:预先扩容

此方法参考文档Vagrant, how to specify the disk size?

指在Vagrant Box尚未创建之前,修改Vagrantfile。

首先安装Vagrant插件:vagrant-disksize:

sql 复制代码
vagrant plugin install vagrant-disksize

然后修改Vagrantfile:

sql 复制代码
vagrant.configure('2') do |config|
    config.vm.box = ...
    config.disksize.size = '50GB'
end

注意,虚机生成成功后,需要把config.disksize.size = ... 这句删除掉

然后运行vagrant up就可以了。

在程序运行的初始阶段,就可以看到磁盘大小被改成了设置的值:

数据库安装正常,时间和不扩容的没有区别。完成后,在操作系统中可以看到相应的信息:

bash 复制代码
$ lsblk
NAME                MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                   8:0    0   50G  0 disk
├─sda2                8:2    0 36.5G  0 part
│ ├─vg_main-lv_swap 252:1    0    4G  0 lvm  [SWAP]
│ └─vg_main-lv_root 252:0    0 32.5G  0 lvm  /
└─sda1                8:1    0  500M  0 part /boot

$ df -h
Filesystem                   Size  Used Avail Use% Mounted on
devtmpfs                     951M     0  951M   0% /dev
tmpfs                        963M     0  963M   0% /dev/shm
tmpfs                        963M   17M  947M   2% /run
tmpfs                        963M     0  963M   0% /sys/fs/cgroup
/dev/mapper/vg_main-lv_root   33G   14G   19G  43% /
/dev/sda1                    497M  136M  362M  28% /boot
tmpfs                        193M     0  193M   0% /run/user/1000
vagrant                      473G  257G  217G  55% /vagrant

# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               vg_main
  PV Size               36.51 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              9346
  Free PE               0
  Allocated PE          9346
  PV UUID               yPArM2-80p6-bXNd-q0ko-rLdK-2inN-LpZ4bq

可以看到,磁盘是50G的,但根分区仍是33G。

剩下的部分可参见文章Linux扩展根文件系统

扩容方法2:后续扩容

是指Vagrant Box创建后,进行的扩容。

和方法1是类似的,只不过不用vagrant plugin,而是利用VirtualBox来扩容物理磁盘。剩下的操作和方法1就一样了。

相关推荐
web1508509664111 分钟前
给SQL server数据库表字段添加注释SQL,附修改、删除注释SQL及演示
数据库·sql·oracle
new出对象2 小时前
数据库增删查改sql语句
数据库·sql·oracle
想做富婆4 小时前
数仓搭建实操(传统数仓oracle):[构建数仓层次|ODS贴源层]
数据库·oracle·数仓
limts5 小时前
Oracle中补全时间的处理
数据库·oracle
pk_xz12345611 小时前
基于Python和Neo4j开发的医疗辅助诊断系统的详细实现步骤和代码示例
python·oracle·neo4j
纠结哥_Shrek1 天前
Oracle和Mysql的区别
数据库·mysql·oracle
小蒜学长1 天前
医疗报销系统的设计与实现(代码+数据库+LW)
数据库·spring boot·学习·oracle·课程设计
ok0601 天前
oracle怎么创建定时任务
数据库·oracle
浪九天1 天前
Orcale、MySQL中参数类型的详解和运用场景(不带示例)
数据库·mysql·oracle
知初~2 天前
出行项目案例
hive·hadoop·redis·sql·mysql·spark·database