如何更改现有Oracle DB初始化参数

wlsrxk51  于 2023-03-22  发布在  Oracle
关注(0)|答案(1)|浏览(191)

我通过SQL developer连接了我的AWS RDS Oracle DB示例。现在我想更改DB初始化参数,如NLS_LANGUAGE,NLS_DATE_FORMAT...等。
我该如何修改它?有没有办法从SQLPLUS或SQL DEVELOPER或AWS DB示例中进行更改?

例如:

我用下面的评论
ALTER SYSTEM SET NLS_DATE_FORMAT='DD/MM/YYYY' scope=both;一旦我执行此评论,它显示错误为

Error starting at line : 1 in command -
ALTER SYSTEM SET NLS_DATE_FORMAT='DD/MM/YYYY' scope=both
Error report -
ORA-02096: specified initialization parameter is not modifiable with this option
02096. 00000 -  "specified initialization parameter is not modifiable with this option"
*Cause:    Though the initialization parameter is modifiable, it cannot be
           modified using the specified command.
*Action:   Check the DBA guide for information about under what scope
           the parameter may be modified
btxsgosb

btxsgosb1#

例如,NLS_DATE_FORMAT的文档显示,它只能在运行ALTER SESSION的示例中修改。
如果要更改系统的密码,则必须执行以下操作:

ALTER SYSTEM SET NLS_DATE_FORMAT='DD/MM/YYYY' scope=spfile;

因此更新的是服务器参数文件(spfile),而不是它和内存中的值;然后重新启动数据库。
然而,我仍然怀疑这样做的必要性。你不需要你的NLS设置匹配来执行导入,正如文档中所说,“初始化参数值,因此,通常被忽略。”任何连接到数据库的用户,客户端或应用程序都可以(可能会)用他们自己的会话值覆盖它,使DB级的通常无关紧要;并且在任何代码或处理中都不应该依赖NLS设置。

相关问题