Questions tagged «memory»

当在数据库环境中使用时,内存是指CPU可以直接寻址的RAM,而不是通过I / O子系统。

1
表压缩如何影响SQL Server的缓冲池?
我很好奇SQL Server的缓冲池如何受到压缩数据表的影响。 是否像在磁盘上一样压缩了内存中的数据,还是对其进行了完全解压缩? 如果将数据压缩存储在缓冲池中,则在执行一条语句时,给定时间将多少个瞬时解压缩的数据保存在内存中;行/页,整个表(假设有足够的可用页来保存数据)还是“取决于”?

2
SQL Server 2012 SP3的内存不足问题
我一直有周期性的SQL Server OOM错误,一次是SQL Server关闭自身,并总是在夜间发生,这时没人使用它,并且那时没有SQL Agent作业运行: 这是典型的错误: 08/17/2017 19:31:17,spid100,未知,资源池``内部''中没有足够的系统内存来运行此查询。 2017年8月17日19:31:17,spid100,未知,错误:701严重性:17状态:123。 2017年8月17日19:31:17,spid112,未知,错误:18056严重性:20状态:29.(Params :)。由于格式化期间出错,因此以简洁模式打印错误。跟踪ETW通知等已跳过。 这是服务器信息: 最小10 GB的SQL Server内存 最大21GB SQL Server内存 服务器上只有4个DB 它们的大小每个只有1到2 GB Tempdb的大小从未增长到超过1GB(设置为自动增长到10GB) 索引均为低碎片指数,统计信息已更新 版: Microsoft SQL Server 2012 (SP3) (KB3072779) - 11.0.6020.0 (X64) Oct 20 2015 15:36:27 Copyright (c) Microsoft Corporation Standard Edition (64-bit) on Windows NT 6.3 <X64> (Build …

2
数据库引擎被盗的服务器内存过高
我从系统中心运营经理(SCOM)得到错误。 如何解决这个错误? SQL DB 2012引擎被盗服务器内存太高。 我运行查询并获得以下计数器: ╔═══════════════════════════════╦═════════════╗ ║ Stolen Server Memory (MB) ║ 7354.773437 ║ ║ Lock Memory (MB) ║ 106.195312 ║ ║ Free Memory (MB) ║ 64.632812 ║ ║ Connection Memory (MB) ║ 24.203125 ║ ║ Log Pool Memory (MB) ║ 14.085937 ║ ║ Optimizer Memory (MB) ║ 2.351562 …

1
SQL Server的页面预期寿命是否过高?
我已经阅读了几篇有关SQL Server的页面预期寿命及其含义以及可以从中获取哪些信息的文章。在我阅读的大多数这些文章中,一个常见的健康PLE值大约为1000-2000秒。我读过,缩短到300秒左右可能意味着您的RAM可能不足。 我最近刚刚将硬件升级到64GB的RAM,从14GB升级到了64GB。在14GB内存上,我的PLE大约需要300秒,而每秒我有很多5-6个内存授权待处理。因此,那很糟糕,我增加了RAM。现在,我的PLE大大提高了,大约是5000秒,并且不再有待决的内存授予。如果我记得的话,我已经看了7000秒。这比我读过的任何东西都要高。 PLE可能是一件坏事吗?还是越高越好? 编辑:对不起,我的PLE不是7000秒,而是70,000秒!尽管目前下降到7000左右。 数据库大小约为160GB。一些表有5+百万行。 max_server_memory 设置为2147483647。

2
MySQL不释放内存
在对它执行任何大的插入或选择语句之后,MySQL似乎想将整个表保留在缓存中(表大小=〜20GB)。现在我的innodb缓冲池是20GB。总内存为32GB。我将提供一些内存使用情况以及innodb状态的输出以及mysqltuner的输出。过去几天一直让我发疯。请帮忙!感谢您提供任何反馈意见,如果您需要更多信息,请告诉我。 同样,执行“刷新表”只会关闭并在内存中重新打开它们。至少我认为这是正在发生的事情。这是我执行一堆插入操作之前innodb当前的内存状态: ---------------------- BUFFER POOL AND MEMORY ---------------------- Total memory allocated 21978152960; in additional pool allocated 0 Dictionary memory allocated 6006471 Buffer pool size 1310719 Free buffers 347984 Database pages 936740 Old database pages 345808 Modified db pages 0 Pending reads 0 Pending writes: LRU 0, flush list 0, single …
8 mysql  innodb  memory 

1
SQL Server-如何确定实例的理想内存?
我们有一些虚拟机分配了X内存。此内存量有些随机。之所以将其分配给计算机,是因为这是物理计算机具有的内存量,是由于供应商的推荐,或者是因为我们对实例所需的内存进行了最佳猜测。 我知道内存越多越好,但是我也想避免在不必要的时候为VM过度分配内存。该内存可以被另一台机器更好地利用。 确定每个实例实际处于活动状态并正在使用的理想内存量的最佳方法是什么?除了页面预期寿命之外,我们还应该考虑其他指标吗?我们的实例的PLE为10k +,其他实例的PLE为100k +。 非常感谢任何见解。谢谢山姆

1
SQL Server最大和最小内存配置
在此用例中,最小内存和最大内存的正确设置是什么? 该服务器具有8GB内存,双Intel Xeon处理器,运行Windows Server 2008 R2 / SQL Server 2008 Standard Edition。它运行着多个数据库,大小从30GB到5GB不等。 最初,内存使用情况已设置为默认设置(最小= 0,最大= 2,147,483,647)。在这些设置上,大多数内存使用量已由sqlservr.exe占用,并且最终将需要每天或每两天重新启动服务器一次。它最初会正常运行,但一天之内就会在一些简单的操作(例如,使用主键查找记录)上超时。 我更改了最小值= 4,096和最大值= 6,144。这样只会占用1.4GB的内存。但是,现在所有四个cpus始终以50-60%cpu的使用率运行。尽管服务器要稳定得多,但执行任务所需的时间大约要长1/3。

1
SQL Server不使用可用内存
Windows 2008R2 Enterprise上的SQL Server 2008 R2标准版(64位) 服务器具有超过300 GB的内存,但控制面板中的总内存使用量永远不会超过86 GB 将SQL配置为使用最大内存量 即使在大量使用的情况下-超过80%的CPU持续数分钟 专用SQL Server 几个大型数据库 一个频繁使用的表的索引大小仅超过10 GB 设置服务帐户以保留内存中的锁 那正常吗? 我可以测试什么? 我可以让SQL Server使用更多的内存吗?

3
由于内存配置错误(ORA-00837)无法启动Oracle(11g1)
我决定减少本地开发人员实例的内存分配,并被告知以下命令可以完成此工作; alter system set memory_max_target = 512M scope = spfile; 我猜是这样,因为我不再可以启动所讨论的Oracle实例。这是我尝试以非DBA用户身份连接时遇到的错误; ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist 当以SYSDBA身份连接时,我得到以下信息; Connected to an inactive instance. SQL>startup nomount; ORA-00837: Specified value of MEMORY_TARGET greater than MEMORY_MAX_TARGET SQL>alter system set memory_max_target = 2G scope = spfile; ORA-01034: ORACLE not …

2
随着时间的流逝,SQL Server变得越来越慢,直到我们不得不重新启动它为止
我们有一个混合OLAP / OLTP工作负载的数据库。这些查询是非常特殊的,并且是在中间层应用程序服务器中动态创建的。当我们启动服务器时,性能是可以接受的,但是在所有可用内存(30GB)用完之前,内存消耗越来越多。在那之后,系统变得越来越慢。 像这样的命令Dbcc freeproccache无效。 交易select * from sys.dm_tran_session_transactions不多(不超过系统正常时),有时此列表为空。 的第一个结果dbcc memorystatus是 VM Reserved 42136628 VM Committed 1487176 Locked Pages Allocated 24994048 Reserved Memory 1024 Reserved Memory In Use 0 重新启动SQL Server可以解决该问题一段时间。 是什么原因导致这种现象?如何避免呢? 如果真正的解决方法太困难了,是否有一条命令可以强制SQL Server在不重新启动DBMS的情况下实际释放所有内存? 服务器在专用硬件(不是VM)上运行。我们有一些预定的工作,但是暂时禁用了它们,没有任何变化。同一台服务器上还运行着其他中层应用程序,但是它们使用的内存不超过2GB,CPU可以忽略不计,几乎没有I / O。我们没有更改就重新启动了所有此类应用程序。

2
同时创建许多mysql临时表是否不好?
我需要进行大量的统计分析,才能为用户提供一些数据。目前,我从mysql捕获数据并通过PHP数组处理它们。但是,mysql临时表要好得多(显然比PHP数组更高效和更快;显然是由于它们的机制)。 我的解决方案是在每次导入和处理数据的请求(即连接)上形成一个临时表。但是,我不确定同时创建多个临时表是否有缺点? 这会给mysql服务器造成问题吗?或者我可以在大量同时请求中将其用作PHP数组的替代方法?


4
MySQL群集RAM要求
从MySQL 5.1开始,数据不再需要完全存储在内存中。 我已经读到索引列(我认为整个索引结构)必须仍在内存中(MySQL High Availability,2010,第533页,“ MySQL群集将所有索引列保留在主内存中”)。 有鉴于此,如果没有足够的内存(例如,巨大的数据库(> 100GB或1TB),且内存配置较低(例如2个数据节点,每个内存1GB)的服务器上运行)会发生什么?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.