Oracle Database 20c
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小微机环境。它是一种高效率的、可靠性好的、适应高吞吐量的数据库方案。
ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。比如SilverStream就是基于数据库的一种中间件。ORACLE数据库是世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。
Oracle数据库最新版本为Oracle Database 20c。Oracle数据库12c 引入了一个新的多承租方架构,使用该架构可轻松部署和管理数据库云。此外,一些创新特性可最大限度地提高资源使用率和灵活性,如Oracle Multitenant可快速整合多个数据库,而Automatic Data Optimization和Heat Map能以更高的密度压缩数据和对数据分层。这些独一无二的技术进步再加上在可用性、安全性和大数据支持方面的主要增强,使得Oracle数据库12c 成为私有云和公有云部署的理想平台。
发展历史
2023年5月,甲骨文在北京举行中国媒体沟通会,对新近推出的Oracle Database 23c开发者版本进行介绍。
支持平台
在2001年发布的Oracle9i之前,甲骨文公司把他们的数据库产品广泛的移植到了不同的平台上。近期,甲骨文公司巩固了一小部分的操作系统平台。
截止至2015年01月,甲骨文公司的Oracle10g/11g/12c支持以下的操作系统和硬件:
· AppleMac OS X Server:PowerPC
· HPHP-UX:PA-RISC,Itanium
· HPTru64 UNIX:Alpha
· HPOpenVMS: Alpha, Itanium
· IBMAIX5L:IBM POWER
· IBMz/OS:zSeries
· Linux:x86,x86-64, PowerPC, zSeries, Itanium
· MicrosoftWindows: x86, x86-64, Itanium
· SunSolaris:SPARC, x86, x86-64
数据特点
(1)完整的数据管理功能:
(2)数据的大量性
(3)数据的保存的持久性
(4)数据的共享性
(5)数据的可靠性
2、完备关系的产品:
(1)信息准则---关系型DBMS的所有信息都应在逻辑上用一种方法,即表中的值显式地表示;
(2)保证访问的准则
(3)视图更新准则---只要形成视图的表中的数据变化了,相应的视图中的数据同时变化;
(4)数据物理性和逻辑性独立准则
3、分布式处理功能:
ORACLE数据库自第5版起就提供了分布式处理能力,到第7版就有比较完善的分布式数据库功能了,一个ORACLE分布式数据库由oraclerdbms、sql*Net、SQL*CONNECT和其他非ORACLE的关系型产品构成。
4、用ORACLE能轻松的实现数据仓库的操作。
这是一个技术发展的趋势,不在这里讨论。
优点
■ 可用性强
■ 可扩展性强
■ 数据安全性强
■ 稳定性强
编程语言
SQL语言是操作关系型数据库的工具,其最显著特点是面向集合,使用SQL语言执行查询时,只需说明数据所满足的条件,不必说明数据的存储位置和如何遍历数据,常见的大型DBMS一般会对SQL语言加入过程性语言特征,对其功能进行扩展,从而在数据库中也可以进行编程,功能扩展后,Oracle的编程语言称为PL/SQL。
在PL/SQL块中,可以使用数据查询语言,数据操作语言和数据控制语言,但不能使用数据定义语言,具体说,就是在SQL块中可以使用SELECT、INSERT、UPDATE、DELETE、COMMIT、ROLLBACK,而不能使用CREATE、ALTER、DROP、GRANT、REVOKE。
在Oracle中,使用了称之为“专用SQL区”(Private SQL,Area)的工作区,用于执行SQL语句和存储处理信息,在PL/SQL中,有一种叫做游标(CURSOR)的专用SQL构造,可以快速存取它所存储的信息,PL/SQL由两种类型的游标:显示优先和隐式游标。PL/SQL为全部SQL DML语句隐式地定义一个游标,而对于返回多行的查询,为了单个地处理每一行,必须显式地定义一个游标。在PL/SQL块子程序或包的说明部分定义游标,给游标命名,并指定一查询,之后可用三种命令:OPEN、FETCH和CLOSE控制游标。
工具简介
·Navicat for Oracle是一套专为Oracle设计的强大数据库管理及开发工具。它可以用于任何版本的Oracle数据库,并支持大部分Oracle的功能,包括触发器、索引、检视等。
·Toad for Oracle是一款老牌的Oracle开发管理工具,比任何一款Oracle开发管理工具功能更多,并针对使用者不同的角色有多个分支版本。版本包括:Toad DBA Suite for Oracle是一款专门为Oracle DBA管理Oracle数据库工具, Toad Development Suite for Oracle是一款专门为Oracle开发工具, Toad DBA Suite for Oracle – Exadata Edition是一款专门为Oracle Exadata一体服务器及Oracle数据库管理工具, Toad DBA Suite for Oracle - RAC Edition是一款专门为Oracle搭建集群RAC的DBA管理工具
比较
在了解了ORACLE数据库后,我们有必要对ORACLE和Sybase SQL Server的比较, Oracle采用的是并行服务器模式,而Sybase SQL Server采用的是虚拟服务器模式,它没有将一个查询分解成多个子查询,再在不同的CPU上同时执行这些子查询。我们可以说在对称多处理方面Oracle的性能优于Sybase的性能。业务量往往在系统运行后不断提高,如果数据库数量达到GB以上时,我们在提高系统的性能方面可以从两方面入手,一种是提高单台服务器的性能,还有就是增加服务器数目。基于此,如果我们是提高单台服务器的性能,选择Oracle 数据库较好,因为它们能在对称多CPU的系统上提供并行处理。相反,由于Sybase的导航服务器使网上的所有用户都注册到导航服务器并通过导航服务提出数据访问请求,导航服务器则将用户的请求分解,然后自动导向由它所控制的多台SQL Server,从而在分散数据的基础上提供并行处理能力,我们可以选择它。这些都是在其他条件和环境相同的情况下比较的,这样才有可比性。在数据的分布更新方面,Oracle采用的是基于服务器的自动的2PC(两阶段提交),而Sybase采用的则是基于客户机DB-Library或CT-Library的可编程的2PC,因此我们在选择数据库方面,必须根据需要进行选择,比如,从事的社会保险软件的开发,考虑到数据量大,并发操作比较多,实时性要求高,我们后台基本采取的是ORACLE数据库。Oracle服务器由Oracle数据库和Oracle实例组成。Oracle实例由系统全局区内存结构和用于管理数据库的后台进程组成。
逻辑结构
它由至少一个表空间和数据库模式对象组成。这里,模式是对象的集合,而模式对象是直接引用数据库数据的逻辑结构。模式对象包括这样一些结构:表、视图、序列、存储过程、同义词、索引、簇和数据库链等。逻辑存储结构包括表空间、段和范围,用于描述怎样使用数据库的物理空间。
总之,逻辑结构由逻辑存储结构(表空间,段,范围,块)和逻辑数据结构(表、视图、序列、存储过程、同义词、索引、簇和数据库链等)组成,而其中的模式对象(逻辑数据结构)和关系形成了数据库的关系设计。
oracle 数据库逻辑结构
段(Segment):
是表空间中一个指定类型的逻辑存储结构,它由一个或多个范围组成,段将占用并增长存储空间。
其中包括:
数据段:用来存放表数据;
索引段:用来存放表索引;
临时段:用来存放中间结果;
回滚段:用于出现异常时,恢复事务。
范围(Extent):是数据库存储空间分配的逻辑单位,一个范围由许多连续的数据块组成,范围是由段依次分配的,分配的第一个范围称为初始范围,以后分配的范围称为增量范围。
数据块(Block):
是数据库进行IO操作的最小单位,它与操作系统的块不是一个概念。oracle数据库不是以操作系统的块为单位来请求数据,而是以多个Oracle数据库块为单位。
文件结构
数据库的物理存储结构是由一些多种物理文件组成,主要有数据文件、控制文件、重做日志文件、归档日志文件、参数文件、口令文件、警告文件等。 [1]
控制文件:存储实例、数据文件及日志文件等信息的二进制文件。alter system set control_files=‘路径’。V$$CONTROLFILE。
数据文件:存储数据,以.dbf做后缀。一句话:一个表空间对多个数据文件,一个数据文件只对一个表空间。dba_data_files/v$$datafile。
日志文件:即Redo Log Files和Archivelog Files。记录数据库修改信息。ALTER SYSTEM SWITCH LOGFILE; 。V$$LOG。
参数文件:记录基本参数。spfile和pfile。
警告文件:show parameter background_dump_dest---使用共享服务器连接
跟踪文件:show parameter user_dump_dest---使用专用服务器连接
恢复技术
恢复意义
当我们使用一个ORACLE数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(硬件故障、网络故障、进程故障和系统故障)影响数据库系统的操作,影响数据库中数据的正确性,甚至破坏数据库,使数据库中全部或部分数据丢失。因此当发生上述故障后,希望能重新建立一个完整的数据库,该处理称为数据库恢复。恢复子系统是数据库管理系统的一个重要组成部分。恢复处理随时随地所发生的故障类型所影响的结构而变化。
恢复方法
数据泵逻辑导入方法:
利用impdp,将最后一次expdp出来的数据文件IMPORT到新的数据库中,这种方式可以将任何数据库对象恢复到它被导出时的状态,此后的变化将无法挽回。IMPORT的命令可以交互式进行,各参数的具体含义见Oracle EXP/IMP参数详解。这种方式适用于没有采用archive 模式的环境。
安全的恢复方法:
如果数据库运行在archive 模式下,那么一旦数据库损坏则可以通过冷备份(热备份)和归档备份将数据库恢复到断点状态。
数据库控制文件恢复(假设所有控制文件均被破坏):
数据库基于文件系统: 利用操作系统的tar、cp等命令即可。
数据库基于裸设备:dd if=$$ORACLE_BASE/con.bak of=/dev/rdrd/drd1 seek=12
数据库数据文件恢复数据及索引表空间、系统表空间的恢复:回拷相关的数据库文件和该数据文件备份以来所有生成的所有逻辑日志文件并执行如下命令:
1svrmgrl>startup mount
2svrmgrl>alter database recover automatic
如果控制文件被破坏,则:
1svrmgrl>alter database recover using backup controfile;#按照提示输入log文件名和redolog文件名
2svrmgrl>alter database open resetlogs;
数据库临时文件和回滚表空间的恢复:简单地offline drop 并重建即可 。
注意:如果数据库不运行在archive 模式下,则恢复只能恢复到上次备份时的状态。
安装过程
一、准备安装
基本都是按部就班。
使用的OS版本:OEL4
1[oracle@ractestorcl]$$cat/etc/redhat-release
2EnterpriseLinuxEnterpriseLinuxASrelease4(OctoberUpdate5)
安装程序路径:
/mnt/Oracle11g_linux_x86_64/database
创建用户
1groupadd-g1001dba
2groupadd-g1002oinstall
3useradd-u10000-gdba-Goinstall,dba-d/home/oracle-s/bin/bashoracle
4chownRoracle:dba/home/oracle
5usermod-gdba-Goinstall,dbaoracle
使用的.bash_profile
1exportORACLE_BASE=/home/oracle
2exportORACLE_HOME=$$ORACLE_BASE/11g
3exportORA_CRS_HOME=$$ORACLE_BASE/crs
4exportORACLE_PATH=$$ORACLE_BASE/common/oracle/sql:.:$$ORACLE_HOME/rdbms/admin
5exportORACLE_SID=orcl1
6exportPATH=$$ORACLE_HOME/bin:$$ORA_CRS_HOME/bin:$${PATH}:$$HOME/bin
7exportPATH=$${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
8exportPATH=$${PATH}:$$ORACLE_BASE/common/oracle/bin
9exportORACLE_TERM=xterm
10exportTNS_ADMIN=$$ORACLE_HOME/network/admin
11exportORA_NLS10=$$ORACLE_HOME/nls/data
12exportLD_LIBRARY_PATH=$${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib:$$ORACLE_HOME/
13oracm/lib:$$ORACLE_HOME/lib
14exportLIBPATH=$$LIBPATH:$$ORA_CRS_HOME/lib:$$ORACLE_HOME/lib
15exportCLASSPATH=$${CLASSPATH}:$$ORACLE_HOME/rdbms/jlib:$$ORACLE_HOME/jlib:$$ORACLE_HOME
16/network/jlib:$$ORACLE_HOME/JRE
17exportTHREADS_FLAG=native
18exportTEMP=/tmp
19exportTMPDIR=/tmp
20exportNLS_LANG=american_america.WE8ISO8859P1
21exportDISPLAY=10.198.90.55:2
22aliassysdba="sqlplus'/assysdba'"
23exportEDITOR=vi
修改的核心参数:
kernel.shmall = 2097152
kernel.shmmax = 2 147483648
kernel.shmmni = 4096
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=262144
net.core.wmem_max=262144
使用xclock检查display正确:
代码:
1[oracle@ractest~]$$xclock
2[oracle@ractest~]$$/mnt/Oracle11g_linux_x86_64/database
3[oracle@ractest~]$$cd/mnt/Oracle11g_linux_x86_64/database
4[oracle@ractestdatabase]$$ls-l
total 10
drwxr-xr-x 4 1003 oinstall 96 Mar 23 18:45 doc
drwxr-xr-x 5 1003 oinstall 1024 Mar 23 18:45 install
drwxr-xr-x 2 1003 oinstall 1024 Mar 23 18:45 response
-rwxr-xr-x 1 1003 oinstall 1251 Mar 23 18:45 runInstaller
drwxr-xr-x 12 1003 oinstall 1024 Mar 23 18:45 stage
-rw-r--r-- 1 1003 oinstall 4638 Mar 23 18:45 welcome.html
1[oracle@ractestdatabase]$$./runInstaller
Starting Oracle Universal Installer...
Checking installer requirements...
Checking operating system version: must be redhat-3, SuSE-9,
redhat-4, UnitedLinux-1.0, asianux-1 or asianux-2
Passed
All installer requirements met.
Preparing to launch Oracle Universal Installer from
/tmp/OraInstall2007-06-28_02-26-12AM. Please wait ...
[oracle@ractest database]$$ Oracle Universal Installer, Version 11.1.0.2.0 Production
Copyright (C) 1999, 2007, Oracle. All rights reserved.
Oracle Universal Installer, Version 11.1.0.2.0 Production
Copyright (C) 1999, 2007, Oracle. All rights reserved.
启动图形以后选择basic&n
选择oracle base的时候,oracle不推荐使用user home作为oracle base,这里我选yes忽略
进行prerequirements检查的时候,安装程序认为swap不足,我选择YES忽略
执行提示脚本,安装完毕
代码:
1[oracle@ractestdatabase]$$
2[oracle@ractestdatabase]$$su-root
3Password:
4[root@ractest~]#/home/oracle/oraInventory/orainstRoot.sh
Changing permissions of /home/oracle/oraInventory to 770.
Changing groupname of /home/oracle/oraInventory to dba.
The execution of the script is complete
1[root@ractest~]#/home/oracle/11g/root.sh
Running Oracle 11g root .sh script...
The following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /home/oracle/11g
Enter the full pathname of the local bin directory: [/usr/local/bin]:
Copying dbhome to /usr/local/bin ...
Copying oraenv to /usr/local/bin ...
Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root .sh script.
Now product-specific root actions will be performed.
Finished product-specific root actions.
安装完毕。
社会评价
2019年,在艾媒金榜(iiMedia Ranking)发布的《2019企业服务品牌之HRM系统排行榜》中位列第一。
Oracle Database 20c 企业版1C数据库软件,近日在商家“北京亿豪永信科技有限公司”特价促销,优惠价为332000元,好物好价,值得您入手!感兴趣的朋友可直接前往北京市海淀区上地十街辉煌国际2号楼1715详询,关于Oracle Database 20c 企业版数据库软件的促销信息也可咨询(联系电话:13911679733 010-51669839 QQ:2680742789 )该商家。
Oracle ORACLE Database 20C
[联系方式] 010-51669839 / 13901054696 / 13621122797
[店铺名称] 北京亿豪永信
[店铺链接] http://m.zol.com/shop_93608/
[商家地址] 北京市海淀区上地十街辉煌国际2号楼1715室
[报价查询] 数据库软件产品报价Oracle(甲骨文)产品报价
评论