如何使用SQL命令删除vCenter Server里的陈旧数据

如何使用SQL命令删除vCenter Server里的陈旧数据,第1张

 VMware的vCenter Server数据库就如同VMware的存储库。在vCenter里,几十个表格存储着资源、集群、VMware分布式资源调度程序、快照、VMware ESX主机、虚拟机、警告、性能参数、任务和事件等信息。

问题是如果环境里拥有许多VMware主机服务器和虚拟机,数据库增长得非常大。不过增长的空间主要来自少数几个包括任务、事件和历史性能数据的表格(参见下面的描述)。从vCenter Server数据库删除无关的任务和事件能节约空间、提升系统性能、加速备份和最小化数据库崩溃的概率。在本文中,TechTarget中国的特约虚拟化专家Eric Siebert将介绍如何使用微软的SQL Server从vCenter数据库删除不需要的信息。

*** 作vCenter表格数据

不过在清理文件之前,你应该明白vCenter Server的表格数据。下面是有关这些表格的信息类型简要。

任务信息。这个表格包括在vCenter Server执行的所有任务的信息。

VPX_TASK

事件信息。这个表格包括所有发生在vCenter Server的事件的信息。对于每一个事件,VPX_EVENT表格里占有一行,由于EVENT_ID字段,有一行或更多行在VPX_EVENT_ARG。

VPX_EVENT

VPX_EVENT_ARG

历史参数。这些表格包括vCenter Server所管理的主机与虚拟机的性能记数信息。对于vCenter Server 20x服务器来说,这个信息存储在单个的VPX_HIST_STAT表格里。但在vCenter Server 25里,这种方式改变了:每天的性能数据存储在VPX_HIST_STAT1里,然后融入VPX_HIST_STAT2计算每周数据,最后,融入VPX_HIST_STAT4计算每年数据。此外,有四个样本时间表格用于VMware迁移技巧——白皮书历史性能表格。

VPX_HIST_STAT (VC 20x)

VPX_HIST_STAT1 (VC 25)

VPX_HIST_STAT2 (VC 25)

VPX_HIST_STAT3 (VC 25)

VPX_HIST_STAT4 (VC 25)

VPX_SAMPLE_TIME1 (VC 25)

VPX_SAMPLE_TIME3 (VC 25)

VPX_SAMPLE_TIME3 (VC 25)

VPX_SAMPLE_TIME4 (VC 25)

使用vCenter Server清除数据

通过更改参数间隔配置,能间接地使用vCenter Server清除数据。当你更改某个间隔,只有关于这个间隔的数据被清除。例如,如果你只更改每周间隔,就清除了每周数据,但没有清除每天、每月和每年的数据。你也能更改所收集的数据或者禁用间隔,这将减少VPX_HIST_STAT表格的大小。

有几大原因需要删除这个数据。首先是为了降低在数据库服务器上使用的空间数量。在大型环境里,这样的的数据库很容易就增长到20GB,虽然这可能对于运行在大型本地磁盘上的SQL Server不成问题,但在使用不同存储区域网络的磁盘空间的数据库服务器上就有问题。

第二个原因是性能。数据库越大,搜寻数据和完成如更新索引这样的数据库 *** 作就更花费时间。最后,拥有的数据越少,数据库越有效率,发生崩溃的概率也越小。备份数据库的时间也更少。

底线是问问自己是否真的需要那么多的历史任务和历史事件数据。你在一年前检查过新年数据吗?旧的性能数据对于偶尔的定点有价值。不过如果不需要这种功能,就清除旧数据。同样,首先考虑不要收集数据。你可能只收集每天和每周的数据用于故障检修的目的,并禁用比较久的每月和每年的数据。

检查表格大小

使用SQL命令,能检查表格的大小。对于SQL数据库来说,使用SQLPlus或另外的SQL客户端在登录到数据库,使用以下的SQL命令:

select count () from VPX_EVENT

这个命令显示了表格里的行数(或记录)。对于其他表格,更改表格名称查看。

select num_rows avg_row_len from user_tables where table_name = 'VPX_EVENT'

这个命令以字节形式显示表格正在使用的磁盘空间数量,不包括剩余的表格空间。

select bytes from user_segments where segment_name = 'VPX_EVENT'

这个命令以字节形式显示表格正在使用的磁盘空间数量,包括剩余的表格空间。

对于SQL Servers,通过以下命令,能使用SQL Query Analyzer工具(作为SQL server的一部分安装)。

在Query窗口输入:

use

然后输入:

EXEC sp_spaceused

接下来点击Execute Query图标或按F5。这将运行sp_spaceused存储程序(本质上是一个SQL服务器脚本),显示这个表格的信息,包括正在使用的行数、保存在表格里以千字节显示的磁盘空间数量以及数据所占据的表格空间的数量。想查看其他表格的这些信息,只需要用其他表格名称输入上面的命令。

现在我们知道了表格的情况和如何决定它们的大小,我们就能清除数据了。在这系列的下一篇文章中,我们将介绍如何使用VMware所提供的SQL脚本清除数据。

vcenter70的集成数据库是PostgreSQL数据库。据查询相关资料,PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),PostgreSQL支持大部分的SQL标准并且提供了很多其他现代特性,如复杂查询、外键、触发器、视图、事务完整性、多版本并发控制。

在准备好环境之后,在VMware Workstation中创建一个2CPU、8GB内存、80GB硬盘的虚拟机,安装Windows Server 2012 R2及vCenter Server 6,主要步骤如下。

1、在安装之前,查看"任务管理器",当前没有运行虚拟机时,主机占用987MB,CPU基本是0%,如图1所示:

2、在VMware Workstation中创建虚拟机,如图2所示:

(3)设置虚拟机 *** 作系统为Windows Server 2012 R2、2个处理器、8GB内存、80GB硬盘、使用NAT网卡,如图3所示。

4、在vCenter 6虚拟机中安装Windows Server 2012 R2,安装好之后安装VMware Tools,设置IP地址为1921688020、默认网关为192168802,如图4所示。

5、修改计算机名称为vCenter,计算机的DNS后缀为heinfolocal,如图5所示。

这样当前计算机名称则为vCenterheinfolocal。

vCenter 6的安装比较简单,在一次安装中,集成了Single Sign-on、vCenter Server、vSphere Web Client,而在以前的55版本中,这些都是分次安装的(没有加入到域之前),现在安装变的更简单了,vCenter Server 6安装主要步骤如下。

(1)在"部署类型"中选择"具有嵌入式的vCenter Server",如图7所示。

(2)在"系统网络名称"对话框中,系统名称为vCenterheinfolocal,如图8所示。

(3)在"Single Sign-On 配置"对话框中,选择创建新的Single Sign-On域,并为此设置一个具有大小写字母、数字、特殊字符的密码,如图9所示。注意,需要记下此密码,稍后会用administrator@vspherelocal登录、用此密码登录,并将本地Administrator帐户添加到vCenter Server管理员帐户中来。

(4)在"数据库设置"中,选择"使用嵌入式数据库"

(5)安装完成

以上就是关于如何使用SQL命令删除vCenter Server里的陈旧数据全部的内容,包括:如何使用SQL命令删除vCenter Server里的陈旧数据、vcenter7.0的集成数据库是哪个、vcenter中的虚机怎么安装数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9590526.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存