我有一个oracle程序,需要每小时运行一次。我的应用服务器是基于Linux的,我的数据库是oracle。现在我有2个选择。我可以在Oracle中创建一个作业并安排它,或者我可以编写一个shell脚本并在我的应用程序服务器的cron选项卡的帮助下安排它。任何人都可以告诉我哪种方法在数据库性能方面更好,为什么?或者两种方法是否会导致相同的性能结果?如果是,那么标准方法应该是什么。
答案 0 :(得分:1)
我们不会看到性能方面的差异。无论哪种方式,都会产生一个会话,并评估该会话的性能。
所以这取决于谁有权访问服务器。如果它是一个仅限DBA的工作,那么我们发现在服务器上管理更容易。如果他们是与在仓库上编写长期运行报告的人共享的工作,那么他们可以更容易地一起管理。
cron作业的缺点是,当升级oracle时,所有作业都必须停止,移动,启动,测试,这可能会很痛苦。
调度程序作业流程的缺点是,有时很难跟踪谁运行了什么工作,因此我们将脚本与作业号码中的工作人员匹配。