我们有一个用于开发的数据库服务器,它有数百个数据库实例,用于我们应用程序的不同分支/构建。我们需要一个特殊的实例NLS_CALENDAR='Thai Buddha'来测试特定的错误。
我们已经建立了一个数据库并将NLS_CALENDAR='Thai Buddha'设置包含在init.ora. 但是,我们仍然得到'GREGORIAN'for NLS_CALENDAR,因为环境变量会覆盖init.ora.
NLS_CALENDAR 值设置如下:
NLS_SESSION_PARAMETERS: 'GREGORIAN'
NLS_INSTANCE_PARAMETERS: 'Thai Buddha'
NLS_DATABASE_PARAMETERS: 'GREGORIAN'
ALTER SESSION不是一个选项,因为这样我们就必须修改我们的应用程序代码以ALTER SESSION在用户登录时发出一个(这是不可能的,因为我们已经在不同的机器上部署了多个客户端)。修改环境设置也不是一个选项,因为在同一主机上运行着其他数据库实例。
我试过了ALTER SYSTEM,但它给出了以下 oracle 错误:
ORA-02096: 不能使用此选项修改指定的初始化参数
我们如何让单个数据库实例忽略环境设置?或者有没有其他方法可以让我们的实例'Thai Buddha'在NLS_CALENDAR设置时默认使用?