文档解释
ORA-12200: TNS:could not allocate memory
Cause: Out of memory on machine.
Action: Reconfigure machine to have more storage or run fewer applications while the Interchange is running.
ORA-12200:TNS:无法分配内存是 Oracle 数据库在建立 TNS 连接时出现的一个错误代码。它表明应用程序无法分配足够的内存来创建 TNS 连接所需的 TNS 入口。
此错误的官方解释是:“TNS 尝试在本地 SGA 中分配内存失败,可能是因为内存池中的对象的尺寸溢出了,或者应用程序已经分配了太多的内存”。
常见案例
1. 为了创建 TNS 连接,可能会有太多的连接试图访问数据库,这使 SGA 内存池的尺寸超出了容量。
2. 因为数据库不断增长,增加了应用程序中需要分配的内存数量,导致内存池尺寸超出了容量。
3. 在启动数据库时,SGA 内存池尺寸被定义为过小以致不足以满足 TNS 建立连接所需的内存空间。
正常处理方法及步骤
1.关闭应用程序中的多余的连接,以释放内存,并确保不要同时打开过多的连接。
2.重新定义 SGA 内存池尺寸,确保它足够满足 TNS 建立连接所需的内存空间。
3.如果应用程序中数据库不断增长,考虑重新调整内存池尺寸。
4.检查是否有其他应用程序正在使用和占用大量内存,如果是,则关闭这些应用程序以释放内存资源以更好地满足 TNS 建立连接所需的内存要求。