虚拟机/var区内存不够导致mysql无法运行,报错Mysql server is not available .Waiting 5seconds… VMware 磁盘扩容

Posted 许腼腆的男神是狂神

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚拟机/var区内存不够导致mysql无法运行,报错Mysql server is not available .Waiting 5seconds… VMware 磁盘扩容相关的知识,希望对你有一定的参考价值。

虚拟机/var区内存不够导致mysql无法运行,报错Mysql server is not available .Waiting 5seconds…

VMware 磁盘扩容

  • 昨天在启动zabbix-appliance时,遇到了无法正常启动一个问题


由于我/var路径占用量已达100%;

df -h 命令查看
[root@localhost ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 894M     0  894M    0% /dev
tmpfs                    910M     0  910M    0% /dev/shm
tmpfs                    910M   11M  900M    2% /run
tmpfs                    910M     0  910M    0% /sys/fs/cgroup
/dev/mapper/centos-root   11G  4.4G  5.4G   46% /
/dev/sda1                448M  154M  266M   37% /boot
/dev/mapper/centos-home  3.9G   22M  3.6G    1% /home
/dev/mapper/centos-var    997M  898M 100KB  100% /var
tmpfs                    182M   32K  182M    1% /run/user/0
/dev/sr0                 4.4G  4.4G     0  100% /run/media/root/CentOS 7 x86_64

由于当时安装虚拟机分区时,我只把/var路径分了900多M,导致我下载yum和安装镜像时,都没有多余空间;
我一开始磁盘总量设置的是20G,由于我没保存截图,所以这里不展示,下面我们开始扩容,

vmware磁盘扩容到你想扩容的分区

我这里是将虚拟机扩容了20G
!!!!!!!!!!!!
这里强调一点,如果你的虚拟机是拍过照的,必须删除拍照,才能扩展;
所以安装虚拟机的时候分配好分区就不用这么麻烦了;

①设置完之后,开启虚拟机,用fdisk -l 命令查看磁盘是否扩展,可以看到磁盘现在是42.9G

[root@localhost ~]# fdisk -l

磁盘 /dev/sda:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000c9a2f

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      964607      481280   83  Linux
/dev/sda2          964608    41943039    20489216   8e  Linux LVM

磁盘 /dev/mapper/centos-root:11.4 GB, 11379146752 字节,22224896 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


磁盘 /dev/mapper/centos-swap:4286 MB, 4286578688 字节,8372224 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


磁盘 /dev/mapper/centos-home:4294 MB, 4294967296 字节,8388608 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

我这个是扩容之后的字节,扩容之前就是9000多MB,
磁盘 /dev/mapper/centos-var:11.8 GB, 11752439808 字节,22953984 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

②接下来就是将刚刚扩容的磁盘分区
这里贴一下,命令参数的解释
[root@hadoop101 ~]# fdisk /dev/sda
p //查看已分区数量
n //新增加一个分区
回车 //分区类型选择主分区
回车 //选择默认即可,会有提示(有时不需要输入)
回车 //默认(起始扇区)
回车 //默认(结束扇区)
t //修改分区类型
回车 //选择默认即可,会有提示
8e //修改为LVM(8e就是LVM)
w //保存刚才创建的分区
q //完成,退出fdisk命令(有时不需要输入)
————————————————————

[root@localhost ~]# fdisk /dev/sda
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): n
Partition type:
   p   primary (2 primary, 0 extended, 2 free)
   e   extended
Select (default p): p
Partition number (3,4, default 3): (默认3,你可以写个3,也可以直接回车)
First sector (41943040-62914559, default 41943040): (起始字节,直接回车)
Using default value 41943040
 (我这里是想把新增加的20G,先分个10G出来,剩下的10G我先不分,留着后面进行其他扩容用)
Last sector, +sectors or +size{K,M,G} (41943040-62914559, default 62914559): +10G   
Using default value 62914559
Partition 3 of type Linux and of size 10 GiB is set

Command (m for help): t
Partition number (1-3, default 3): 3
Hex code (type L to list all codes): L

 0  Empty           24  NEC DOS         81  Minix / old Lin bf  Solaris        
 1  FAT12           27  Hidden NTFS Win 82  Linux swap / So c1  DRDOS/sec (FAT-
 2  XENIX root      39  Plan 9          83  Linux           c4  DRDOS/sec (FAT-
 3  XENIX usr       3c  PartitionMagic  84  OS/2 hidden C:  c6  DRDOS/sec (FAT-
 4  FAT16 <32M      40  Venix 80286     85  Linux extended  c7  Syrinx         
 5  Extended        41  PPC PReP Boot   86  NTFS volume set da  Non-FS data    
 6  FAT16           42  SFS             87  NTFS volume set db  CP/M / CTOS / .
 7  HPFS/NTFS/exFAT 4d  QNX4.x          88  Linux plaintext de  Dell Utility   
 8  AIX             4e  QNX4.x 2nd part 8e  Linux LVM       df  BootIt         
 9  AIX bootable    4f  QNX4.x 3rd part 93  Amoeba          e1  DOS access     
 a  OS/2 Boot Manag 50  OnTrack DM      94  Amoeba BBT      e3  DOS R/O        
 b  W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4  SpeedStor      
 c  W95 FAT32 (LBA) 52  CP/M            a0  IBM Thinkpad hi eb  BeOS fs        
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a5  FreeBSD         ee  GPT            
 f  W95 Ext'd (LBA) 54  OnTrackDM6      a6  OpenBSD         ef  EFI (FAT-12/16/
10  OPUS            55  EZ-Drive        a7  NeXTSTEP        f0  Linux/PA-RISC b
11  Hidden FAT12    56  Golden Bow      a8  Darwin UFS      f1  SpeedStor      
12  Compaq diagnost 5c  Priam Edisk     a9  NetBSD          f4  SpeedStor      
14  Hidden FAT16 <3 61  SpeedStor       ab  Darwin boot     f2  DOS secondary  
16  Hidden FAT16    63  GNU HURD or Sys af  HFS / HFS+      fb  VMware VMFS    
17  Hidden HPFS/NTF 64  Novell Netware  b7  BSDI fs         fc  VMware VMKCORE 
18  AST SmartSleep  65  Novell Netware  b8  BSDI swap       fd  Linux raid auto
1b  Hidden W95 FAT3 70  DiskSecure Mult bb  Boot Wizard hid fe  LANstep        
1c  Hidden W95 FAT3 75  PC/IX           be  Solaris boot    ff  BBT            
1e  Hidden W95 FAT1 80  Old Minix      
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.

这里我只用了10G,如果你想把20G全部分完,是可以继续创建分区的,根据自己的需要分为主分区,扩展分区和逻辑区;

执行 partprobe或者重启

执行 partprobe命令用于将磁盘分区表变化信息通知内核,并请求操作系统重新加载分区表,可以避免必须重新启动的问题,这里我们reboot一下。

reboot完,用fdisk命令,查看一下磁盘

[root@localhost ~]# fdisk -l

磁盘 /dev/sda:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000c9a2f

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      964607      481280   83  Linux
/dev/sda2          964608    41943039    20489216   8e  Linux LVM
/dev/sda3        41943040    62914559    10485760   8e  Linux LVM
可以看到多了sda3

扩展vg

[root@localhost ~]# pvcreate /dev/sda3
  Physical volume "/dev/sda3" successfully created.
[root@localhost ~]# vgs
  VG     #PV #LV #SN Attr   VSize   VFree
  centos   2   4   0 wz--n- <19.54g    0 
[root@localhost ~]# vgextend centos /dev/sda3
  Volume group "centos" successfully extended
再次查看vgs
[root@localhost ~]# vgs
  VG     #PV #LV #SN Attr   VSize   VFree
  centos   2   4   0 wz--n- <29.54g    0 

再扩展lv

先查看一下,这是我分的四个区,

[root@localhost ~]# lvs
  LV   VG     Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home centos -wi-ao----   4.00g                                                    
  root centos -wi-ao---- <10.60g                                                    
  swap centos -wi-ao----   3.99g                                                    
  var  centos -wi-ao---- <0.95g                                                    
[root@localhost ~]# 

这里可以把刚刚的10G全部都给,也可以只给你想加的,只要在 lvextend -L +5G(后面加上你想加的)
[root@localhost ~]#  lvextend /dev/centos/var /dev/sda3
  Size of logical volume cl_angular/root changed from 17.00 GiB (4351 extents) to 26.99 GiB (6910 extents).
  Logical volume cl_angular/root successfully resized.
[root@localhost ~]# lvs
  LV   VG     Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home centos -wi-ao----   4.00g                                                    
  root centos -wi-ao---- <10.60g                                                    
  swap centos -wi-ao----   3.99g                                                    
  var  centos -wi-ao---- <10.95g  

看到加上了,这时候df 状态时还没有变化的,还要进行同步

[root@localhost ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 894M     0  894M    0% /dev
tmpfs                    910M     0  910M    0% /dev/shm
tmpfs                    910M   11M  900M    2% /run
tmpfs                    910M     0  910M    0% /sys/fs/cgroup
/dev/mapper/centos-root   11G  4.4G  5.4G   46% /
/dev/sda1                448M  154M  266M   37% /boot
/dev/mapper/centos-home  3.9G   22M  3.6G    1% /home
/dev/mapper/centos-var    997M  898M 100KB  100% /var
tmpfs                    182M   32K  182M    1% /run/user/0
/dev/sr0                 4.4G  4.4G     0  100% /run/media/root/CentOS 7 x86_64

同步

如果你的文件类型为xfs,就用xfs_growfs可以将xfs文件系统进行online方式的扩展

特别注意的是:
resize2fs 命令 针对的是ext2、ext3、ext4文件系统
xfs_growfs 命令 针对的是xfs文件系统

[root@mail ~]# xfs_growfs /dev/mapper/centos-var
我这个/var不是xfs类型;所以用resize2fs

[root@localhost ~]# resize2fs /dev/mapper/centos-var
[root@localhost ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 894M     0  894M    0% /dev
tmpfs                    910M     0  910M    0% /dev/shm
tmpfs                    910M   11M  900M    2% /run
tmpfs                    910M     0  910M    0% /sys/fs/cgroup
/dev/mapper/centos-root   11G  4.4G  5.4G   46% /
/dev/sda1                448M  154M  266M   37% /boot
/dev/mapper/centos-home  3.9G   22M  3.6G    1% /home
/dev/mapper/centos-var    11G  2.1G  8.3G   20% /var
tmpfs                    182M   32K  182M    1% /run/user/0
/dev/sr0                 4.4G  4.4G     0  100% /run/media/root/CentOS 7 x86_64

再次查看,已经降到20%了,后面再启动zabbix-appliance,就可以正常启动了;

以上是关于虚拟机/var区内存不够导致mysql无法运行,报错Mysql server is not available .Waiting 5seconds… VMware 磁盘扩容的主要内容,如果未能解决你的问题,请参考以下文章

Oracle VM VirtualBox 改内存后虚拟机启动报错

Oracle VM VirtualBox 改内存后虚拟机启动报错

虚拟机显示物理内存不足怎么解决

java虚拟机

《Java虚拟机》随笔记01

Java虚拟机2:Java 运行时数据区