1

我必须更改特定数据库(SID)的时区。我有数据库服务器的地方配置并安装了多个数据库 (SID)。当我连接了特定的 SID 并在 Query 下运行时:

alter database set time_zone='-05:00'

我收到以下错误:

ERROR at line 1:
ORA-02231: missing or invalid option to ALTER DATABASE

但是当我运行 alter database set time_zone = 'EST'; 查询时它也没有给出错误但是

注意:我在同一个数据库服务器中配置了多个数据库,我需要将时区更改为一个数据库(SID)。我无法全局更改系统 (OS) 级别和数据库服务器级别。

我无法更改时区,任何人都可以提供帮助。

4

1 回答 1

1

我已经完成了以下对我有用的步骤:

$ ps -ef|grep pmon

这将显示如下列表:

ORADEV    7554     1  0 Oct28 ?        00:00:03 ora_pmon_MDEV230
ORADEV   20649 32630  0 03:39 pts/9    00:00:00 grep pmon
ORADEV   23386     1  0 Nov12 ?        00:00:00 ora_pmon_MQA230POC

我在文件中添加了以下条目 oraenv

$ vi oraenv(它将在 Vi 编辑器中打开文件)在文件末尾添加了以下条目:

if [[ ${ORACLE_SID} = "MQA230POC" ]]; then
   TZ=EST+05EDT
   export TZ
   echo "Time Zone set to EST"
else
  TZ=PST+08EDT
   export TZ
   echo "Time Zone set to PST"
fi

if [[ ${ORACLE_SID} = "MQA230POC" ]];那么这一行对于选择特定的数据库至关重要。

并运行以下命令并测试并重新启动数据库:

$ . oraenv ORACLE_SID = [MQA230POC] ?ORACLE_HOME=/orasw/database12c/product/12.1.0.2/dbhome_1 的 Oracle 基准是 /orasw/database12c 时区设置为 EST

$ sqlplus sys as sysdba
Enter password:XXXXX ( provide password) 

It will give message as below : 
Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

--运行以下命令以重新启动数据库:

SQL> shut immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup;
ORACLE instance started.

它对我有用,我可以为我正在寻找的不同数据库设置不同的时区。希望它会帮助别人。

于 2015-11-17T04:32:41.020 回答