我正在调查我们的一个数据库的性能问题。与database2相比,database1非常慢-数据库2是另一台服务器中的数据库1的副本。进一步看,我发现生产数据库没有使用分配的内存。数据库内存,排序堆,共享排序堆阈值确实很低。
数据库版本为v10.5
database 1
(INSTANCE_MEMORY) = AUTOMATIC(5487480)
(SELF_TUNING_MEM) = ON
(DATABASE_MEMORY) = AUTOMATIC(248622)
(SHEAPTHRES_SHR) = AUTOMATIC(5001)
(SORTHEAP) = AUTOMATIC(1000)
(DBHEAP) = AUTOMATIC(4401)
database 2
(INSTANCE_MEMORY) = AUTOMATIC(3835692)
(SELF_TUNING_MEM) = ON
(DATABASE_MEMORY) = AUTOMATIC(860764)
(SHEAPTHRES_SHR) = AUTOMATIC(506165)
(SORTHEAP) = AUTOMATIC(50000)
(DBHEAP) = AUTOMATIC(4401)
我试图在两个数据库上运行一些MQT刷新,database2在2-3小时内完成。但是database1需要7-8个小时。谁能帮助我使数据库使用更多的内存?
答案 0 :(得分:0)
AUTOCONFIGURE
可能是一个合理的起点,但是如果这是生产数据库,请务必小心
不过,您可以尝试AUTOCONFIGURE APPLY NONE
并查看它的建议。