0

我正在尝试在一个大表(超过 50 亿行)上的 Oracle 11g 数据库上创建分区。我尝试使用本地计算机上的 TOAD 和 sqlplus 连接到数据库并运行分区脚本。我正在使用 CTAS 创建另一个类似于基表的表,然后将其重命名为原始表(删除原始表后)。

由于表很大(大约 170G),我预计这需要几个小时。我的查询运行正常大约 2 小时,然后它断开连接,没有任何错误消息。即使我从后端看不到任何会话,但在 Toad 和 sqlplus 中它仍然说它正在运行。警报日志或任何日志文件中没有消息。

我检查了用户配置文件和资源限制,它设置为无限制。此外,我在数据库设置中看不到任何异常。

欢迎任何建议。

4

2 回答 2

1

我尝试使用 sqlplus 直接在服务器托管数据库上运行脚本,它确实在 5 小时后完成。中间没有终止。了解到,在服务器级别 - 某些设置在 2 小时后终止了 oracle 连接。

于 2013-10-07T23:08:12.733 回答
0

虽然您可能对如何检索上一次运行的日志和错误消息感兴趣,但我建议,下次您再次尝试时,您应该在 Oracle 中将长时间运行的操作作为后台作业运行。

看看 dbms_scheduler 模块:http ://www.oracle-base.com/articles/10g/scheduler-10g.php

或者,如果您有旧版本的 Oracle,您可以使用 dbms_job 模块http://psoug.org/reference/dbms_job.html

于 2013-10-07T20:07:44.670 回答