python - 我们应该为一群DBA采用哪种跨平台脚本语言?

标签 python scala groovy shell jython

我想就我们的团队希望在不久的将来做出的语言选择获得社区的反馈。我们是一名软件开发人员,我在 Oracle 和 SQL Server DBA 团队中工作,支持在 Oracle 应用服务器上运行的跨平台 Java 应用程序。我们拥有 SQL Server 和 Oracle 代码库,并支持 Windows、Solaris 和 Linux 服务器上的客户。

我们经常执行的许多任务都没有充分自动化,而且它们往往通过 shell 脚本自动化得多,在 Windows 上几乎没有等效功能。不幸的是,我们现在遇到了在两个平台上重新开发脚本等问题。因此,我希望我们选择一种跨平台语言来编写脚本,而不是使用 Bash 并在必要时笨拙地转换为 Cygwin 或批处理文件。

它需要是:

  1. 动态(所以不建议使用 Java 或 C!)
  2. 可在每个平台(Windows、Solaris、Linux,也许是 AIX)上轻松使用
  3. 对设置方式的要求非常低(root 访问权限并不总是可用!)
  4. 让非核心开发人员的 shell 脚本编写者(即 DBA)易于采用。
  5. 容易理解别人的代码
  6. 熟悉 SQL Server 和 Oracle,不会乱来。
  7. 一些不错的 XML 特性不会出错。

如果它能在 JVM 上运行会更好,因为它几乎总是安装在每台服务器上(当然是在所有应用程序服务器上),而且我们公司有很多 Java 开发人员,所以坚持使用 JVM 是有道理的。但这并不是唯一的,因为我知道 Python 在这里是一种非常可行的语言。

我已经创建了一个选项列表,但可能还有更多选项:Groovy、Scala、Jython、Python、Ruby、Perl。

除了我自己有相当多的 Java 和 Groovy 经验外,没有人在这方面经验丰富。我们正在寻找动态的、容易上手的东西,可以毫不费力地与 SQL 服务器和 Oracle 一起工作,具有一些 XML 简化特性,并且不会让 DBA 失望。我们中的许多人都非常喜欢 Bash - 什么可以让我们摆脱这种沉迷?

人们对此有何看法?

谢谢!

克里斯

最佳答案

您可以选择 Python。它的动态(解释),在 Windows/Linux/Solaris 上可用,具有易于阅读的语法,因此您的代码维护很容易。还有用于 Oracle 交互和各种其他数据库服务器的模块/库。还有对 XML 的库支持。涵盖所有 7 个要点。

关于python - 我们应该为一群DBA采用哪种跨平台脚本语言?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3564177/

相关文章:

groovy - Gradle测试失败,并显示NullPointerException

python - 为什么我不能导入 folium python 包?

python - 如何使用 Python 在 Firestore 中下载大型集合而不会出现 503 错误?

python - Tensorflow frozen graph protobuf不预测使用c api

验证:未找到隐式 scalaz.Bind

scala - CanBuildFrom 如何知道一个类型是否可以从另一个类型构建?

scala - 无法在 Redshift 中保存数据框

groovy - JMeter 脚本 - 根据条件停止所有线程组(整个测试)

java - 如何将GMetrics工具与Grails 3x应用程序集成

Python游戏编程: is my IO object a legitimate candidate for being a global variable?