vmware esxi 扩容目录

先说下vwware虚拟机和esxi区别,esxi属于vmware下的产品。vmware虚拟机相当于一个软件,必须安装在一个操作系统之上,esxi相当于一个操作系统,不依赖其他操作系统,可以直接安装在一台空的物理机上,或者在vmware中创建虚拟机时直接安装esxi。然后在esxi服务web页中创建虚拟机,然后安装操作系统(我本次使用的是Ubuntu)

注意:在操作服务器之前,一定要做快照!!! 一定一定

此次记录的是esxi磁盘扩容的经过,有需求的小伙伴可以照此操作:

1.生成快照,备份虚拟机

在虚拟机菜单下,右键虚拟机——>快照——>生成快照
注意这步一定要做,防止下面操作服务器出现问题,可以恢复系统。

2. 备份mysql数据

方式一(备份所有数据库):不会造成锁表:mysqldump -hhost -uroot -ppassword --single-transaction --all-databases > /opt/backup.sql
方式二(备份所有数据库):会造成锁表:mysqldump -hlocalhost -uroot -p --all-databases > back.sql

3. 停止mysql服务

查看mysql服务状态:systemctl status mysql.service
停止服务:systemctl stop mysql.service

4. 备份数据库data文件

可以将数据库整个文件备份到本地

5. 扩容

注意查看不同的分区类型(type):part、lvm。part比较分区简单 查看磁盘信息常使用的命令:

df -h  
lsblk
fdisk -l
blkid
  • 方式1:命令行方式


  • 方式2:图形工具(disks、gparted)
    part:
    如果是part类型,则可以在Ubuntu图形界面找到–设置–disks,然后添加分区即可。
    添加后,需要在/etc/fstab中添加开机自动挂载
    UUID=20984cef-05e4-44c1-bc12-758fc1ecd2e3 /home ext4 defaults 1 2 参考:

lvm :
lvm推荐使用gparted

sudo apt-get install gparted
sudo gparted

使用gparted扩容后,df -h 查看如果没有扩容成功,还需要二步操作:
1.对物理磁盘扩容:lvextend -L +20G 文件系统名称
2.对文件系统扩容:如果是xfs文件系统:xfs_growfs 文件系统名称
如果是ext文件系统: resize2fs 文件系统名称

esxi存储空间不足 esxi存储扩容_mysql

lvextend -L +20G /dev/mapper/ubuntu--vg-root
resize2fs /dev/mapper/ubuntu--vg-root

lvm与part对比:

esxi存储空间不足 esxi存储扩容_mysql_02


esxi存储空间不足 esxi存储扩容_数据库_03


esxi存储空间不足 esxi存储扩容_linux_04

6.迁移新目录(如果第5步只是扩容,没有新建分区那么不需要执行此步骤)
方式一:建立软连接
	软连接方法:
	ln -s 表示目标文件(夹)【即被指向的文件(夹)】 当前目录的软连接名(如:ln -s /opt/mysql_bak0213/ mysql)
	
方式二:切换配置文件中的datadir。目录在/etc/mysql中
	

如果无法启动,需要修改配置信息:https://www.shuzhiduo.com/A/A7zgomGoz4/
修改系统的chroot,需要修改/etc/apparmor.d下的相关文件,这里以mysql为例,需要修改:usr.sbin.mysqld和abstractions/mysql两个文件。 
1.修改usr.sbin.mysqld里面的两行内容:/var/lib/mysql/ r,改为:/usr/local/mysql/ r,/var/lib/mysql/** rwk,改为:/usr/local/mysql/** rwk, 
2.修改abstractions/mysql中一行:/var/lib/mysql/mysql.sock rw,改为:/usr/local/mysql/mysql.sock rw, 
3.重新加载apparmor服务:/etc/init.d/apparmor reload
7.恢复mysql服务

systemctl start mysql.service

8.恢复redis服务
sudo systemctl start redis-server
连接redis:redis-cli -h localhost -p 6380

关于系统空间占满,无法开机的处理办法:

关于linux目录:
对目录文件分组:chown [-R] :所属组 文件或目录
给mysql赋值权限:chmod -R 777 mysql

关于mysql安装时,遇到的问题:

安装后:1.修改mysql.user中的root用户允许远程连接
    	update user set host = ‘%’ where user = ‘root’;
    	GRANT ALL PRIVILEGES ON *.* TO'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
       2.修改配置文件,允许其他IP地址连接:
            /etc/mysql/mysql.conf.d/mysqld.cnf
       3.修改密码
    	根据不同模式(plugin)修改密码:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'new-password';

如果mysql忘记密码可以使用无密码模式进入:
    	忽略密码:配置文件/etc/mysql/mysql.conf.d/mysqld.cnf [mysqld]节点上加skip-grant-tables,
     		重启服务sudo systemctl restart mysql.service,然后mysql -uroot -p 即可无密码进入mysql;
       		然后再修改密码:update user set authentication_string=PASSWORD("mypass") where user='root';

Ubuntu新安装系统后,重新设置root密码:sudo passwd root
mysql版本查询:mysql -V
安装ssh服务:sudo apt-get install openssh-server