Oacle12c支持可插入数据库(PDB)在一个统一的数据库(CDB)中具有不同的字符集、时区文件版本和数据库时区。

出于性能原因,Oracle建议将数据库时区设置为UTC(0:00),因为不需要转换时区。

多租户体系结构允许您为每个可插入数据库指定一个不同的数据库时区,并使用容器数据库的时区作为默认值。

在容器数据库级别设置时区与为非cdb实例设置时区相同。CDB设置是所有可插入数据库的默认值。

1. 检查容器数据库的当前时间

sqlplus / as sysdba

SQL> select dbtimezone from dual;

2. 查看PDB时区

SQL> alter session set container=orclpdb;

SQL> SELECT dbtimezone FROM DUAL;

3. 修改PDB时区,根据实际需要设置时区

SQL> ALTER DATABASE SET TIME_ZONE='+00:00';

报错处理:

ORA-30079: cannot alter database timezone when database has TIMESTAMP WITH
LOCAL TIME ZONE columns

1) 清除带时区格式的时间字段表

--sql begin----

--删除用户指定表----

declare v_sql varchar(255);

cursor cur_tb is select 'drop table '|| owner || '.' || table_name || ' purge ' sqltext from dba_tables

where table_name = 'T_BOS_DBTIMEZONEINFO'

AND OWNER <> 'SYS' AND OWNER <> 'SYSTEM';

begin

--打开游标cur_tb--

open cur_tb;

fetch cur_tb into v_sql;

loop

--判断游标cur_stu所指是否有数据行--

if cur_tb%found then

--将游标cur_stu当前行取出存放到变量中--

begin

execute immediate v_sql;

exception

when others then

dbms_output.put_line('删除用户表异常:'||sqlerrm);

end;

fetch cur_tb into v_sql;

else

exit;

end if;

end loop;

--关闭游标cur_tb--

close cur_tb;

end;

--sql end----

2) 修改PDB时区

alter database set time_zone='+00:00';

4. 修改好后需要重启pdb

SQL> alter pluggable database orclpdb close;

SQL> alter pluggable database orclpdb close immediate;

SQL> alter pluggable database orclpdb open;

SQL> select dbtimezone from dual;

附(标红为国内常用时区):

  • UTC-12(IDL - 国际换日线)
  • UTC-11 (MIT - 中途岛标准时间)
  • UTC-10(HST - 夏威夷-阿留申标准时间)
  • UTC-9:30(MSIT - 马克萨斯群岛标准时间)
  • UTC-9(AKST - 阿拉斯加标准时间)
  • UTC-8(PST - 太平洋标准时间A)
  • UTC-7(MST - 北美山区标准时间)
  • UTC-6(CST - 北美中部标准时间)
  • UTC-5(EST - 北美东部标准时间)
  • UTC-4(AST - 大西洋标准时间)
  • UTC-3:30(NST - 纽芬兰岛标准时间)
  • UTC-3(SAT - 南美标准时间)
  • UTC-2(BRT - 巴西时间)
  • UTC-1(CVT - 佛得角标准时间)
  • UTC(WET - 欧洲西部时区,GMT - 格林威治标准时间)
  • UTC+1(CET - 欧洲中部时区)
  • UTC+2(EET - 欧洲东部时区)
  • UTC+3(MSK - 莫斯科时区)
  • UTC+3:30(IRT - 伊朗标准时间)
  • UTC+4(META - 中东时区A)
  • UTC+4:30(AFT- 阿富汗标准时间)
  • UTC+5(METB - 中东时区B)
  • UTC+5:30(IDT - 印度标准时间)
  • UTC+5:45(NPT - 尼泊尔标准时间)
  • UTC+6(BHT - 孟加拉标准时间)
  • UTC+6:30(MRT - 缅甸标准时间)
  • UTC+7(IST - 中南半岛标准时间)
  • UTC+8(EAT - 东亚标准时间/中国标准时间(BJT))
  • UTC+9(FET- 远东标准时间)
  • UTC+9:30(ACST - 澳大利亚中部标准时间)
  • UTC+10(AEST - 澳大利亚东部标准时间)
  • UTC+10:30(FAST - 澳大利亚远东标准时间)
  • UTC+11(VTT - 瓦努阿图标准时间)
  • UTC+11:30(NFT - 诺福克岛标准时间)
  • UTC+12(PSTB - 太平洋标准时间B)
  • UTC+12:45(CIT - 查塔姆群岛标准时间)
  • UTC+13(PSTC - 太平洋标准时间C)
  • UTC+14(PSTD - 太平洋标准时间D)

详情见https://zh.wikipedia.org/wiki/%E6%97%B6%E5%8C%BA%E5%88%97%E8%A1%A8#UTC+8%EF%BC%88EAT_-_%E6%9D%B1%E4%BA%9E%E6%A8%99%E6%BA%96%E6%99%82%E9%96%93/%E4%B8%AD%E5%9C%8B%E6%A8%99%E6%BA%96%E6%99%82%E9%96%93(BJT)%EF%BC%89

Oracle12c修改时区的更多相关文章

  1. win7 无法修改时区和时间

    电脑用的win7系统, 今天调试程序的时候,想改下时间,才发现修改时区的按钮点了没反应,修改时间的按钮是灰色的,没法保存. 在网上搜了一下,想着应该是用的Ghost安装系统的问题,不过也找到了解决办法 ...

  2. 树莓派(Raspberry Pi)修改时区

    1.安装ntp sudo apt-get install ntpdate 2.修改时区 tzselect 3.选择自己的时区 1)选择大洲 2)选择国家 3)选择城市 4)选择YES 5)或者使用命令 ...

  3. 云服务器 ECS Linux 服务器修改时区的两种方式

    在云服务器 ECS Linux 系统中,以 Centos6.5 为例,可以通过如下两种方式,修改系统时区: 可以使用命令 tzselect,修改时区.操作示例: [root@localhost ~]# ...

  4. ubuntu下修改时区

    使用一个虚拟机服务,其时区设置的为格林兰标准时区,我北京时区在东八区,较其快八个小时. 修改时区需要执行 tzselect 一步步选择下来,注意确认后的information Therefore TZ ...

  5. ubuntu server修改时区

    公司用的是ubuntu server 服务器在美国亚马逊VPS 现在要修改时区 执行:tzselect 或直接修改 /etc/timezone 文件,我是改成(America/Los_Angeles) ...

  6. MySQL修改时区的方法小结

    这篇文章主要介绍了MySQL修改时区的方法,总结分析了三种常见的MySQL时区修改技巧,包括命令行模式.配置文件方式及代码方式,需要的朋友可以参考下 方法一:通过mysql命令行模式下动态修改 1.1 ...

  7. Laravel项目修改时区

    Laravel项目修改时区 最近做了一个支付宝支付的应用,现在还在开发过程中,今天早上起床之后先调试了一下项目,模拟支付了一笔(¥9999.00) 2333支付宝的沙箱环境啦,屌丝程序猿哪来这么多钱- ...

  8. linux修改时区

    Linux修改时区 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任 CentOS6: 查看以前的时区: [root@localhost mysq ...

  9. centos 7修改时区

    在线上环境遇到时间差八小时,怀疑是时区的原因: 然后再linux上运行: date 发现输出的是UTC时间,时间与现在差八个小时 然后通过以下命令去修改时区: ln -sf /usr/share/zo ...

随机推荐

  1. ORA-00972

    SQL> select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') as 日期时间 from dual;select to_char(sysdate,'YY ...

  2. CSS - 视觉格式化模型(Visual formatting model)

    几个概念 块:block,一个抽象的概念,块与块之间在垂直方向上按照顺序依次堆叠. 行内:inline,一个抽象的概念,行内与行内之间在水平方向上按照顺序依次堆叠(会有换行). 元素:element, ...

  3. scrapy Pipeline使用twisted异步实现mysql数据插入

    from twisted.enterprise import adbapi class MySQLAsyncPipeline: def open_spider(self, spider): db = ...

  4. VMware 虚拟机的虚拟磁盘编程知识点扫盲之二

    目录 目录 前文列表 VDDK 安装 VDDK VixDiskLib VADP 前文列表 VMware 虚拟机的虚拟磁盘编程知识点扫盲之一 VDDK 摘自官方文档:The Virtual Disk D ...

  5. 阶段1 语言基础+高级_1-3-Java语言高级_04-集合_09 Debug调试_1_Debug追踪

    行号的右边.点击就加上红色的原点 执行后程序停在断点的这一行代码 F8 Shift+F8从方法中出来. F9跳到下一个断点. 终止程序 Ctrl+F2: 断点停留在第一行之后,F8进入下一行代码. 再 ...

  6. 002/Node.js(Mooc)--Http知识

    1.什么是Http 菜鸟教程:http://www.runoob.com/http/http-tutorial.html 视频地址:https://www.imooc.com/video/6713 h ...

  7. Java WebService 参考文档

    webservice 基础使用 java 与tomcat使用http://cxshun.iteye.com/blog/1275408 spring mvc中使用https://www.cnblogs. ...

  8. Hadoop Map/Reduce

    Hadoop Map/Reduce是一个使用简易的软件框架,基于它写出来的应用程序能够运行在由上千个商用机器组成的大型集群上,并以一种可靠容错的方式并行处理上T级别的数据集.一个Map/Reduce ...

  9. Mybatis-学习笔记(2)Mybatis配置文件

      3>typeAliases:类型别名.2种指定方式. 1>给某个类起个别名 <typeAliases> <typeAlias type="com.lfy.b ...

  10. Html标签替换(过滤掉html特殊符号)

    /// <summary> /// 替换标签,把 <>" 替换为HTML标记 /// </summary> /// <param name=&quo ...