ORACLE标准版与企业版的差别

ORACLE标准版与企业版的差别
ORACLE标准版与企业版的差别

**********Orace 9i的标准版&企业版************

Oracle9i数据库的企业版和标准版最主要的区别在于企业版有更强大的并行和分布式处理能力,标准版是专为开发、部署和管理部门级Internet 应用程序而设计的数据库管理系统,是用于传统的部门级应用程序的一流数据库。而应用超出部门级标准或访问数据库的人较多时,则应当选用企业版。

**********Oracle 10g标准版&企业版************

Oracle10g分为4个版本,分别是:

1。Oracle Database Standard Edition One,最基本的商业版本,包括基本的数据库功能。

2。Oracle Database Standard Edition ,标准版,包括上面那个版本的功能和RAC,只有在1 0g的标准版中才开始包含RAC。

3。Oracle Database Enterprise Edition,企业版,虽说是最强劲的版本,但是并不是所有我们常用的功能都在这个版本中,很多东西仍然是要额外付费的,后面会说到。

4。Oracle Database Personal Edition,个人版,除了不支持RAC之外包含企业版的所有功能,但是注意的是,只有Windows平台上才提供个人版。

下面来看一下,在Standard Edition One和Standard Edition中不支持的功能(只是选了一些大家比较常见或者常用的功能),注意,这些功能除了RAC之外仍然包含在个人版中。

1。Oracle Data Guard,不支持。(想要高可用性的客户,就不能选择标准版)

2。一些Online操作,比如Online index maintenance,Online table redefinition等不支持

3。备份和恢复的某些操作受限,比如不支持Block级别的恢复(Block-level media recovery),不支持并行备份和恢复(Parallel backup and recovery),多重备份(Duplexed backup set s)等等

4。Flashback功能,在标准版中Flashback Table,Flashback Database,Flashback Trans action Query都是不支持的

5。VPD(Virtual *** Database)不支持

6。FGA(Fine-grained auditing)不支持

7。Partitioning,分区也不支持

8。Data compression,比如表压缩,分区压缩都不支持

9。Bitmapped index and bitmapped join index,不支持,(如果是数据仓库系统就不能选择标准版了)

10。Export transportable tablespace,(注意,这里只是导入不支持),但是Import transpo rtable tablespace,包括跨平台的import都是支持的,也就是说你如果选择了标准版,那么想把数据库简单地转移到其它平台上是比较费劲的事情了

11。一些并行操作都不支持,包括Parallel query,Parallel DML,Parallel index build,Para llel Data Pump export and import。

12。不支持Streams,又少了一个高可用性的可行性方案

13。不支持Advanced Replication的multimaster方式,再少一个高可用性方案,当然实体化视图的复制方案仍然是支持的

14。Connection Manager不支持。

标准版在10g中虽然支持RAC,但是oracle是有限制的,如果要在标准版中用RAC,那么只能使用Oracle Clusterware(不支持其它任何第三方群集软件),同时必须使用A***来做数据文件的存储管理(其它任何第三方的卷管理和文件系统都不支持)。

如果要安装另外一个数据库作为RMAN repository 或者OEM Grid Control repository那么不需要另外付费了。

另外如果你购买了最低级的那个Standard One的版本,那么下面这些功能都是不支持的。

1。RAC

2。Partitioning

3。Data Mining

4。Advanced Security

5。Label Security

6。OLAP

7。Spatial

8。Oracle Management Packs

最后还有一些关于oracle产品的FAQ:

1. Oracle数据库软件目前在售的版本号?

A:目前在售的是Oracle 9i 和Oracle 10g

2. 10g是不是比9i更好?

A:一个新版本的软件推出以后,总要经过一段时间的考验,其间会有相当多的补丁。但新版本的软件往往有更多的新特性和更友好的界面。9i和10g作为目前在售的两个版本,各有所长。相比较而言,9i更为稳定成熟,10g则提供了更多新特性。建议用户根据自己业务需求来选择,最合适的就是最好的。(因为这个FAQ是前年的,现在建议选择oracle 10G R2的版本)

3. Oracle数据库软件有几类版本?

A:Oracle数据库软件分个人版、标准版1、标准版、企业版。

4. 能否说说个人版、标准版1、标准版、企业版各自的特点和区别?

A:标准版1(Standard Edition One)适用于1-2CPU的服务器,价格有相当的优势,但仅限单机环境,适用于中小型用户入门级应用;

标准版(Standard Edition)适用于1-4CPU的服务器,包括4CPU单服务器或2台双CPU服务器等配置,可以做双机热备或RAC,价格适中,适用于对数据库性能及安全性有进一步要求的大中型用户工作组级及部门级应用;

企业版(Enterprise Edition)适用于单机、双机、多CPU多节点集群等各种环境,功能齐全,但费用也比较高,适用于对数据库性能及可靠性有相当高要求的大型、超大型用户企业级、高端企业级应用。

功能模块上的比较请参考《Oracle数据库白皮书》。

5. 是不是企业版一定要比标准版好?

A:企业版功能齐全,提供更高可靠性和性能,但也意味着更多的软件费用和硬件开销。建议用户根据实际需求确定版本,最合适的就是最好的。

6. Oracle的订购方式?

A:有按用户数订购和按CPU订购两种方式,其中按CPU订购也即所谓无限用户版。

7. Oracle用户数的官方定义?

A:每一个访问Oracle数据库的用户,无论是自然人还是设备,都算作一个用户(Named User)。

英文官方定义:Named User Plus: is defined as an individual authorized by you to use t he programs which are installed on a single server or multiple servers, regardless of w hether the individual is actively using the programs at any given time. A non human op erated device will be counted.

8. Oracle的用户数是怎么算的呢?

A:Oracle官方要求的各类版本的最低用户数为:

个人版本:1user*PC数

标准版1=服务器的CPU数*5

标准版=服务器的CPU数*10user

企业版=服务器的CPU数*25user;

用户应该根据自己的实际用户数订购,且不少于相应版本所要求的最低用户数。

9. 什么情况下须按照CPU订购?

A:访问Oracle的用户数很多,或者无法预估用户数的情况下,应该按照CPU(Processor)订购。

10. Proce ssor的官方定义?

A:等于安装Oracle数据库软件的服务器的CPU总数。

英文官方定义:Processor: shall be defined as all processors where the Oracle programs are installed and/or running. Programs licensed on a Processor basis may be accessed by your internal users (including agents and contractors) and by your third party users.

11. 请举例说明?

A:例如,若用户的应用是基于Internet,Oracle作为网站后台数据库,根据Oracle对用户数的官方定义,每一个通过Internet访问网站(数据库)的都算作1个用户,这样用户数很多,而且无法预估,所以应按照CPU数订购。

12. 按CPU订购的费用是否很高?

A:一般情况下,1CPU的费用约等于50user的费用,所以如果用户数>CPU数*50,则按CP U订购反而更为经济

13. 是否Internet或B/S架构的应用就必须要按照CPU订购?

A:不一定,如果访问Oracle数据库的用户数可以预估,且用户数不多(小于服务器CPU数*5 0),也可以按照用户数订购。

14. Oracle数据库软件的公开报价(List Price)是多少?

A:请参考公开报价(List Price)表。

15. Oracle数据库软件的价格是如何计算的?

A:计算公式:Q=(P*N*(1-D)*(1+22%)+415)*(1+17%)

其中:

Q:折扣后含税价格

P:未税单价(每用户或每CPU)

N:用户数或CPU(Processor)数;

D:折扣(%off),起步折扣为30%off。

22%:一年的标准服务费,其中产品支持7%,升级保障15%;

C:介质费,目前为人民币600/套。

17%:增值税

16. 折扣是多少?

A:Oracle官方规定Oracle数据库软件到最终用户的起步折扣是25%off,申请特别折扣必须提供最终用户信息,请参考《Oracle软件订购确认函》。

17. 是否可以提供试用版?试用期限是多长?

A:达成订购意向后,可以提供试用版供免费试用、评估,试用期为一个月。试用期到后若不订购,用户必须从系统中卸载、删除所安装的Oracle试用版软件。

三大主流数据库对比 哪个更有优势

三大主流数据库对比哪个更有优势 Oracle Oracle 能在所有主流平台上运行(包括Windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持,Oracle并行服务器通过使一组结点共享同一簇中的工作来扩展Windows NT的能力,提供高可用性和高伸缩性的簇的解决方案。如果Windows NT不能满足需要,用户可以把数据库移到UNIX中。Oracle 的并行服务器对各种UNIX平台的集群机制都有着相当高的集成度。Oracle获得最高认证级别的ISO标准认证.Oracle性能最高,保持开放平台下的TPC-D和TPC-C的世界记录Oracle多层次网络计算,支持多种工业标准,可以用ODBC、JDBC、OCI等网络客户连接。 Oracle 在兼容性、可移植性、可联结性、高生产率上、开放性也存在优点。Oracle产品采用标准SQL,并经过美国国家标准技术所(NIST)测试。与IBM SQL/DS,DB2,INGRES,IDMS/R等兼容。Oracle的产品可运行于很宽范围的硬件与操作系统平台上。可以安装在70种以上不同的大、中、小型机上;可在VMS、DOS、UNIX、WINDOWS等多种操作系统下工作。能与多种通讯网络相连,支持各种协议(TCP/IP、DECnet、LU6.2等)。提供了多种开发工具,能极大的方便用户进行进一步的开发。Oracle良好的兼容性、可移植性、可连接性和高生产率是Oracle RDBMS具有良好的开放性。 Oracle价格是比较昂贵的。据说一套正版的Oracle软件早在2006年年底的时候在市场上的价格已经达到了6位数。所以如果你的项目不是那种超级大的项目,还是放弃Oracle 吧。 SQL Server SQL Server 是Microsoft推出一套产品,它具有使用方便、可伸缩性好、与相关软件集成程度高等优点,逐渐成为Windows平台下进行数据库应用开发较为理想的选择之一。SQLServer是目前流行的数据库之一,它已广泛应用于金融、保险、电力、行政管理等与

完整的Oracle数据库通常由两部分组成

完整的Oracle数据库通常由两部分组成:实例和数据库。 1、数据库是一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等);Oracle数据库由操作系统文件组成,这些文件也称为数据库文件,为数据库信息提供实际物理存储区。Oracle数据库包括逻辑结构和物理结构。数据库的物理结构包含数据库中的一组操作系统文件。数据库的逻辑结构是指数据库创建之后形成的逻辑概念之间的关系,如表、视图、索引等对象。 2、实例则是一组Oracle后台进程/线程以及在服务器分配的共享内存区。 Oracle实例是后台进程和内存结构的集合。必须启动实例才能访问数据库中的数据。Oracle 实例启动时,将分配一个系统全局区(SGA)并启动一系列Oracle后台进程。每一个后台进程在数据库中执行不同的任务。一个实例只能打开并使用一个数据库。 在启动Oracle数据库服务器时,实际上是在服务器的内存中创建一个Oracle实例(即在服务器内存中分配共享内存并创建相关的后台内存),然后由这个实例来访问和控制磁盘中的数据文件。Oracle有一个很大的内存快,成为全局区(SGA)。 Oracle数据库的存储结构分为逻辑存储结构和物理存储结构: 逻辑存储结构:用于描述Oracle内部组织和管理数据的方式; 物理存储结构:用于描述Oracle外部即操作系统中组织和管理数据的方式。 会话:λ 会话是用户与Oracle服务器的单个连接。当用户与服务器建立连接时创建会话。当用户与服务器断开连接时关闭会话。当一个数据库用户同时用多个不同的应用程序或从多个终端连接数据库时,则为该用户创建多个并行会话。 Oracle实例内存结构:λ Oracle的内存结构包含以下两个内存区: υ系统全局区:(SGA):实例启动时分配该内存区。 Oracle实例的SGA(System Global Area)又称为共享全局区,它用来存储数据库信息,并由多个数据库进程共享。当数据库实例启动时,SGA的内存被自动分配。SGA是数据库中占用服务器内存最大的一个区域,同时也是影响数据库性能的一个重要指标。SGA按其作用不同,可以分为共享池、数据缓冲区及日志缓冲区。 共享池λ 共享池是对SQL、PL/SQL程序进行语法分析、编译、执行的内存区域 共享池由库缓存和数据字典缓存组成。 共享池的大小直接影响数据库的性能。 数据缓冲区λ 用于存储从磁盘数据文件中读入的数据,所有用户共享。 服务器进程将读入的数据保存在数据缓冲区中,当后续的请求需要这些数据时可以在内存中

Oracle到mysql转换的问题总结

Oracle 到 mysql 转换的问题总结 常用字段类型区别
oracle number(10,0) number(10,2) varchar2 date Colb mysql int decimal(10,2) varchar datetime text
个别语句写法区别
1.oracle 里只可以用单引号包起字符串,mysql 里可以用双引号和单引号。 2.mysql 在 select * from () ....,from 后面是一个结果集时,括号后面必须 加上别名。 3.mysql 在 delete 数据时不能给表加别名, 如: delete from table1 T where...., 会报错,但是可以这样写:delete T from table1 T where....。 4.Mysql 不支持在同一个表中先查这个表在更新这个表,举个例子说明一下, insert into table1 values (字段 1, (select 字段 2 from table1 where...) ) , 但是可以在后面那个 table1 加上别名就没有问题了。 insert into table1 values (字段 1, (select T.字段 2 from table1 T where...) ) 5.MYSQL 有自动增长的数据类型,插入记录时不用操作此字段,会自动获得数据 值。ORACLE 没有自动增长的数据类型,需要建立一个自动增长的序列号,插入 记录时要把序列号的下一个值赋于此字段。也可以自定义函数实现 oracle 的 nextval。 6.翻页的 sql 语句处理, MYSQL 处理翻页的 SQL 语句比较简单,用 LIMIT 开始位 置, 记录个数,例如:select * from table limit m,n,意思是从 m+1开始取 n 条。
常见的函数替换
1.日期转换方面的函数 oracle mysql 说明

ORACLE10.2G数据库服务器安装说明

ORACLE10.2G FOR WINDOWS 2003数据库安装步骤 一、ORACLE10.2G数据库服务环境的安装 1、运行SETUP安装程序 2、选择安装路径以及是否创建新的数据库(推荐不创建) 选择基本安装即可,ORACLE主目录位置不推荐使用操作系统分区,建议使用逻辑分区,注意空间大小预留10G以上。 你可以在安装时选择创建一个数据库,也可以在安装完毕后使用数据库安装工具来创建,注意全局数据库名称尽量要和你未来使用数据库名称一致。 输入正确的信息后,按下一步 3、安装系统自动做先决条件的检测 只有所有先决条件都检测成功才可以按下一步进行安装,否则可能在以后的安装过程中出现错误。

4、安装系统列出需要安装的组件列表 5、开始安装 进入安装界面,请等待,保持计算机始终工作,防止以外断电。请注意安装日志的路径,如果安装出现错误,可以通过日志来查看具体的信息。 6、安装完毕

系统提示安装成功,并弹出iSQL*Plus工具使用的网址,请复制该段信息,以方便日后使用该工具来调试数据库。点击退出即可。 注意:以上安装过程,并没有安装数据库,只是安装了数据库服务环境,如果需要数据库服务器正常工作,还需要安装数据库以及监听服务。 安装完成后,可以发现在开始菜单里就应该存在一个Oracle - OraDb10g_home1。 二、建立数据库 1、运行数据库管理工具DBCA (DA TABASE CONFIGURA TION ASSISTANT)数据库管理助手。在开始菜单中找到Oracle - OraDb10g_home1-配置和移植工具下可以找到该工具。 按下一步进行安装 2、选择创建数据库

Oracle数据库基本知识点

1、数据库基本语句 (1)表结构处理 创建一个表:cteate table 表名(列1 类型,列2 类型); 修改表的名字 alter table 旧表名 rename to 新表名 查看表结构 desc 表名(cmd) 添加一个字段 alter table 表名 add(列类型); 修改字段类型 alter table 表名 modify(列类型); 删除一个字段 alter table 表名 drop column列名; 删除表 drop table 表名 修改列名 alter table 表名 rename column 旧列名 to 新列名; (2)表数据处理 增加数据:insert into 表名 values(所有列的值); insert into 表名(列)values(对应的值); 更新语句:update 表 set 列=新的值,…[where 条件] 删除数据:delete from 表名 where 条件 删除所有数据,不会影响表结构,不会记录日志, 数据不能恢复--》删除很快: truncate table 表名 删除所有数据,包括表结构一并删除: drop table 表名 去除重复的显示:select distinct 列 from 表名 日期类型:to_date(字符串1,字符串2)字符串1是日期的字 符串,字符串2是格式 to_date('1990-1-1','yyyy-mm-dd')-->返回日期的 类型是1990-1-1 (3)查询语句 1)内连接 select a.*,b.* from a inner join b on a.id=b.parent_id

三大数据库的区别

1.ORACLE oracle能在所有主流平台上运行(包括 windows)。 Oracle 一般只有一个数据库,可以通过不同 不同用户(模式)的数据库对象名可以相同 2. SQLSERVER SQL Server 是Microsoft推出一套产品,它具有使用方便、可伸缩性好、与相关软件集成程度高等优点,逐渐成为Windows平台下进行数据库应用开发较为理想的选择之一。SQLServer 是目前流行的数据库之一,它已广泛应用于金融,保险,电力,行政管理等与数据库有关的行业.而且,由于其易操作性及友好的界面,赢得了广大用户的青睐,尤其是SQLServer与其它数据库,如Access,FoxPro,Excel等有良好的ODBC接口,可以把上述数据库转成SQLServer的数据库,因此目前越来越多的读者正在使用SQLServer. 3. MYSQL MySQL是开源的,不支持事务处理,没有视图,没有存储过程和触发器,没有数据库端的用户自定义函数,不能完全使用标准的SQL语法。 从数据库行家听说的第一件事就是MySQL缺乏transactions,rollbacks,和subselects的功能。如果你计划使用MySQL写一个关于银行、会计的应用程序,或者计划维护一些随时需要线性递增的不同类的计数器,你将缺乏transactions功能。在现有的发布版本的MySQL 下,请不要有任何的这些想法。(请注意,MySQL的测试版 3.23.x系列现在已经支持transactions了)。 在非常必要的情况下,MySQL的局限性可以通过一部分开发者的努力得到克服。在MySQL中你失去的主要功能是subselect语句,而这正是其它的所有数据库都具有的。换而言之,这个失去的功能是一个痛苦。 MySQL没法处理复杂的关联性数据库功能,例如,子查询(subqueries),虽然大多数的子查询都可以改写成join 另一个MySQL没有提供支持的功能是事务处理(transaction)以及事务的提交(commit)/撤销(rollback)。一个事务指的是被当作一个单位来共同执行的一群或一套命令。如果一个事务没法完成,那么整个事务里面没有一个指令是真正执行下去的。对于必须处理线上订单的商业网站来说,MySQL没有支持这项功能,的确让人觉得很失望。但是可以用MaxSQL,一个分开的服务器,它能通过外挂的表格来支持事务功能。 外键(foreignkey)以及参考完整性限制(referentialintegrity)可以让你制定表格中资料间的约束,然后将约束(constraint)加到你所规定的资料里面。这些MYSQL没有的功能表示一个有赖复杂的资料关系的应用程序并不适合使用MySQL。当我们说MySQL不支持外键时,我们指的就是数据库的参考完整性限制--MySQL并没有支持外键的规则,当然更没有支持连锁删除(cascadingdelete)的功能。简短的说,如果你的工作需要使用复杂的资料关联,那你还是用原来的Access吧。 你在MySQL中也不会找到存储进程(storedprocedure)以及触发器(trigger)。(针对这些功能,在Access提供了相对的事件进程(eventprocedure)。)

Oracle数据库测试人员必知

ORACLE常用命令 一、ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a、启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup SVRMGR>quit b、关闭ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>shutdown SVRMGR>quit 启动oracle9i数据库命令: $ sqlplus /nolog SQL*Plus: Release 9.2.0.1.0 - Production on Fri Oct 31 13:53:53 2003 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. SQL> connect / as sysdba Connected to an idle instance. SQL> startup^C SQL> startup ORACLE instance started. 2、在双机环境下 要想启动或关闭ORACLE系统必须首先切换到root用户,如下 su -root a、启动ORACLE系统 hareg -y oracle b、关闭ORACLE系统 hareg -n oracle

Oracle数据库有哪几种启动方式 说明: 有以下几种启动方式: 1、startup nomount 非安装启动,这种方式启动下可执行:重建控制文件、重建数据库 读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。 2、startup mount dbname 安装启动,这种方式启动下可执行: 数据库日志归档、 数据库介质恢复、 使数据文件联机或脱机, 重新定位数据文件、重做日志文件。 执行“nomount”,然后打开控制文件,确认数据文件和联机日志文件的位置, 但此时不对数据文件和日志文件进行校验检查。 3、startup open dbname 先执行“nomount”,然后执行“mount”,再打开包括Redo log文件在内的所有数据库文件,这种方式下可访问数据库中的数据。 4、startup,等于以下三个命令 startup nomount alter database mount alter database open 5、startup restrict 约束方式启动 这种方式能够启动数据库,但只允许具有一定特权的用户访问 非特权用户访问时,会出现以下提示: ERROR: ORA-01035: ORACLE 只允许具有RESTRICTED SESSION 权限的用户使用 6、startup force 强制启动方式

MySql Oracle SqlServer三大数据库的数据类型列表

MySql Oracle SqlServer三大数据库的数据类型列表MySql数据类型

Oracle数据类型 一、概述 在ORACLE8中定义了:标量(SCALAR)、复合(COMPOSITE)、引用(REFERENCE)和LOB四种数据类型,下面详细介绍它们的特性。 二、标量(SCALAR) 合法的标量类型与数据库的列所使用的类型相同,此外它还有一些扩展。它又分为七个组:数字、字符、行、日期、行标识、布尔和可信。 数字,它有三种基本类型--NUMBER、PLS_INTEGER和BINARY_INTENER。NUMBER可以描述整数或实数,而PLS_INTEGER和BINARY_INTENER只能描述整数。 NUMBER,是以十进制格式进行存储的,它便于存储,但是在计算上,系统会自动的将它转换成为二进制进行运算的。它的定义方式是NUMBER(P,S),P是精度,最大38位,S是刻度范围,可在-84...127间取值。例如:NUMBER(5,2)可以用来存储表示-999.99...999.99间的数值。P、S可以在定义是省略,例如:NUMBER(5)、NUMBER 等; BINARY_INTENER用来描述不存储在数据库中,但是需要用来计算的带符号的整数值。它以2的补码二进制形式表述。循环计数器经常使用这种类型。 PLS_INTEGER和BINARY_INTENER唯一区别是在计算当中发生溢出时,BINARY_INTENER型的变量会被自动指派给一个NUMBER型而不会出错,PLS_INTEGER型的变量将会发生错误。 字符,包括CHAR、VARCHAR2(VARCHAR)、LONG、NCHAR和NVARCHAR2几种类型。 CHAR,描述定长的字符串,如果实际值不够定义的长度,系统将以空格填充。它的声明方式如下CHAR(L),L 为字符串长度,缺省为1,作为变量最大32767个字符,作为数据存储在ORACLE8中最大为2000。 VARCHAR2(VARCHAR),描述变长字符串。它的声明方式如下VARCHAR2(L),L为字符串长度,没有缺省值,作为变量最大32767个字节,作为数据存储在ORACLE8中最大为4000。在多字节语言环境中,实际存储的字符个数可能小于L值,例如:当语言环境为中文(SIMPLIFIED CHINESE_CHINA.ZHS16GBK)时,一个VARCHAR2(200)的数据列可以保存200个英文字符或者100个汉字字符。 LONG,在数据库存储中可以用来保存高达2G的数据,作为变量,可以表示一个最大长度为32760字节的可变字符串。 NCHAR、NVARCHAR2,国家字符集,与环境变量NLS指定的语言集密切相关,使用方法和CHAR、VARCHAR2相同。 行,包括RAW和LONG RAW两种类型。用来存储二进制数据,不会在字符集间转换。 RAW,类似于CHAR,声明方式RAW(L),L为长度,以字节为单位,作为数据库列最大2000,作为变量最大32767字节。 LONG RAW,类似于LONG,作为数据库列最大存储2G字节的数据,作为变量最大32760字节。 日期,只有一种类型--DATE,用来存储时间信息,站用7个字节(从世纪到秒),绝对没有“千年虫”问题。 行标识,只有一种类型--ROWID,用来存储“行标识符”,可以利用ROWIDTOCHAR函数来将行标识转换成为字符。 布尔,只有一种类型--BOOLEAN,仅仅可以表示TRUE、FALSE或者NULL。 可信,只有一种类型--MLSLABEL,可以在TRUSTED ORACLE中用来保存可变长度的二进制标签。在标准ORACLE 中,只能存储NULL值。 三、复合(COMPOSITE) 标量类型是经过预定义的,利用这些类型可以衍生出一些复合类型。主要有记录、表。 记录,可以看作是一组标量的组合结构,它的声明方式如下: TYPE record_type_name IS RECORD ( filed1 type1 [NOT NULL] [:=expr1] ....... filedn typen [NOT NULL] [:=exprn] ) 其中,record_type_name是记录类型的名字。(是不是看着象CREATE TABLE?......)引用时必须定义相关的变量,记录只是TYPE,不是VARIABLE。 表,不是物理存储数据的表,在这里是一种变量类型,也称为PL/SQL表,它类似于C语言中的数组,在处理方式上也相似。它的声明方式如下:

ORACLE数据库简介

1ORACLE数据库简介 一、概论 ORACLE 是以高级结构化查询语言(SQL)为基础的大型关系数据库,通俗地讲它是用方便逻辑管理的语言操纵大量有规律数据的集合。是目前最流行的客户/服务器(CLIENT/SERVER)体系结构的数据库之一。 二、特点 1、ORACLE7.X以来引入了共享SQL和多线索服务器体系结构。这减少了ORACLE 的资源占用,并增强了ORACLE的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。 2、提供了基于角色(ROLE)分工的安全保密管理。在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。 3、支持大量多媒体数据,如二进制图形、声音、动画以及多维数据结构等。 4、提供了与第三代高级语言的接口软件PRO*系列,能在C,C++等主语言中嵌入 SQL语句及过程化(PL/SQL)语句,对数据库中的数据进行操纵。加上它有许多优秀的前台开发工具如 POWER BUILD、SQL*FORMS、VISIA BASIC 等,可以快速开发生成基于客户端PC 平台的应用程序,并具有良好的移植性。 5、提供了新的分布式数据库能力。可通过网络较方便地读写远端数据库里的数据,并有对称复制的技术。 三、存储结构 1、物理结构 ORACLE数据库在物理上是存储于硬盘的各种文件。它是活动的,可扩充的,随着 数据的添加和应用程序的增大而变化。 下图为ORACLE数据库扩充前后在硬盘上存储结构的示意图:

2、逻辑结构 ORACLE数据库在逻辑上是由许多表空间构成。主要分为系统表空间和非系统 表空间。非系统表空间内存储着各项应用的数据、索引、程序等相关信息。我们准备上马一个较大的ORACLE应用系统时,应该创建它所独占的表空间,同时定义 物理文件的存放路径和所占硬盘的大小。 下图为ORACLE数据库逻辑结构与物理结构的对照关系: 四、分布式数据库管理介绍 1、原理 物理上存放于网络的多个ORACLE数据库,逻辑上可以看成一个单个的大数据库。 用户可以通过网络对异地数据库中的数据同时进行存取,而服务器之间的协同处理对于工作站用户及应用程序而言是完全透明的:开发人员无需关心网络的连接

总结Oracle和Mysql的区别和特点

总结Oracle和Mysql的区别和特点 ------------------------------------------51联盟在线(51lmzx)对于这个问题很多人都有这样问到,在这里我就总结一下给大家: 一,按系统属性:软件系统不一样,都是数据库系统,mysql的优点是开源免费,oracle的优点是有甲骨文公司强大的技术后盾,功能强大,安全、性能、人性化、等各方面都比mysql好。 二,优缺点对比:mysql的缺点就是功能少,面向的对象是一般的小型网站或者系统,大型数据库很少用mysql;oracle的缺点是对硬件的要求十分高,对管理人员的技术要求高。基本上是这样了。 三,对应的客户群体不一样:Oracle 可以使用在大企业、大公司的数据库领域,mysql适用于小群体,或软件集成。 四,其他功能特点:mysql不支持视图;不支持commit-rollback,有效处理commit-rollback将需要完全不同于mysql使用的表布局,mysql也将需要而外的线程在表上做自清工作,而且磁盘用量将更高,而不用它,mysql比几乎所有的其他SQL数据库都快2到4倍,所以小型开发用mysql是很好的。 五,在Oracle中用select * from all_users显示所有的用户,而在MYSQL中显示所有数据库的命令是show databases。对于我的理解,Oracle项目来说一个项目就应该有一个用户和其对应的表空间,而MYSQL项目中也应该有个用户和一个库。在ORACLE(db2也一样)

中表空间是文件系统中的物理容器的逻辑表示,视图、触发器和存储过程也可以保存在表空间中。而MYSQL并没有使用表空间来进行管理。 六,查询当前所有的表。ORACLE:select * from tab,MYSQL:show tables。 七,改变连接用户(库)。ORACLE:conn 用户名/密码@主机字符串,MYSQL:use 库名。 八,显示当前连接用户(库)。ORACLE:show user,MYSQL:connect。九,执行外部脚本命令。ORACLE:@a.sql,MYSQL:source a.sql。

Oracle向Mysql迁移方案

Oracle向Mysql迁移方案 一、可自动迁移部分; 1、表 这个部分的移植是最容易用工具实现的部分,因为很多MySQL的图形管理工具都自带这样的移植工具,比如SQL Yog,MySQL Administrator等。但是,这些工具的移植能力各有不同,对字段类型转换﹑字符集等问题都有自己的处理方式,使用时请注意。 笔者使用“SQL Yog Migration Toolkit”工具按提示步骤移植后,表的主要结构和数据将成功移植,主要包括表的字段类型(经过映射转换,比如number会转换为int,Varchar2会转换为Varchar,date转换为datetime等,请小心处理日期字段的默认值等),表的主键,表的索引(Oracle的位图索引会被转成BTree索引,另外表和字段的注释会丢失)等信息。 注意的是,Oracle的自增字段的处理。大家知道,Oracle通常使用序列sequence 配合触发器实现自增字段,但是MySQL和SQL Server等一样,不提供序列,而直接提供字段自增属性。所以,请把Oracle里面的自增字段实现直接改为MySQL的字段属性,而且,这个字段必须是主键(key)并且不能有默认值。还有一个问题,如果您的应用要直接使用Oracle的某个序列,那么您只能在MySQL里面模拟实现一个,具体方法就是利用MySQL的自增字段实现的。 二、不可自动迁移部分; 视图、过程、函数、触发器 以上对象都是写sql语句进行编程的,两个数据库的有些语法是不一新的,所以这些都要开发人员进行人工修改在mysql中重新创建; 语法区别如下: 视图:mysql中视图不能有子查询,可以把字查询再建一个视 图; 触发器:mysql中触发器中before或after的触发事件(insert、 update、delete)只能有一个,oracle可以有多个; 字符串拼接:oracle直接用’||’,mysql只能用函数’concat’; 判断是否为空:oracle用nvl;mysql用ifnull; 变量定义:oracle可以只写一次DECLARE,Mysql需要在每句前面加 DECLARE 变量赋值:oracle用’:=’,mysql用’=’; 三、Oracle与Mysql几个主要根本区别 1、oracle中的包在mysql中不存在,要全部改成普通的存储过程; 2、用户及权限在oracle中是包含在各自的数据库里,而在mysql是数据库的用户及权 限在一个单独的数据库中(information_schema); 3、Oracle是没有敏感字段,是mysql有,如果有要修改成长非敏感名字; 4、系统架构区别:oracle有主备库,和集群架构(RAC)且RAC是基共享存储的, Mysql有主从复制,和集群架构(ndbcluster),但ndbcluster是非共享 存储的。 四、建立迁移测试环境; 五、迁移实施;

如何查看oracle数据库服务器名

windows 中 1. select name from v$database ; 直接运行就可以查看了, 2.查看tnsnames.ora 的连接,有个SID,SID就是服务名了 1.查看oracle的安装目录, 方法是查看注册表: 如:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ORACLE_HOME REG_SZ E:\ORACLE\ORA92 得到了oracle的安装目录 一般来讲,如果服务器在安装时采用的是默认值那么这个值是:D:\ORACLE\ORA92 2.找到tnsnames.ora文件 在根目录下面找到\network\ADMIN\tnsnames.ora 文件,并打开 3.仔细查看里面的tnsnames.ora 配置 例如 # TNSNAMES.ORA Network Configuration File: d:\oracle\ora92\network\admin\tnsnames.ora # Generated by Oracle configuration tools. WZZ= (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = wzz)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = WZZ) ) ) 其中的service_name就是服务名,例如对如上面的文件,服务名就是WZZ 附C#获取oracle服务器名:

#region从注册表中读取安装主目录的值 ///

///从注册表中读取安装主目录的值 /// /// /// public static string ReadHomeDirectory(string setupKey) { RegistryKey readKey; try { readKey = Registry.LocalMachine.OpenSubKey ("Software\\ORACLE", false); foreach (string name in readKey.GetValueNames()) { if (name == setupKey) { return readKey.GetValue(name).ToString(); } } return null; } catch { return null; } } #endregion 复制代码

Oracle数据库简介

oracle数据库是一种大型数据库系统,一般应用于商业,政府部门,它的功能很强大,能够处理大批量的数据,在网络方面也用的非常多。不过,一般的中小型企业都比较喜欢用SQL数据库系统,它的操作很简单,功能也非常齐全。只是比较oracle 数据库而言,在处理大量数据方面有些不如。 Oralce数据库的发展历程 Oralce数据库简介 Oracle简称甲骨文,是仅次于微软公司的世界第二大软件公司,该公司名称就叫Oracle。该公司成立于1979年,是加利福尼亚州的第一家在世界上推出以关系型数据管理系统(RDBMS)为中心的一家软件公司。 Oracle不仅在全球最先推出了RDBMS,并且事实上掌握着这个市场的大部分份额。现在,他们的RDBMS被广泛应用于各种操作环境:Windows NT、基于UNIX系统的小型机、IBM大型机以及一些专用硬件操作系统平台。 事实上,Oracle已经成为世界上最大的RDBMS供应商,并且是世界上最主要的信息处理软件供应商。由于Oracle公司的RDBMS都以Oracle为名,所以,在某种程度上Oracle己经成为了RDBMS的代名词。 Oracle数据库管理系统是一个以关系型和面向对象为中心管理数据的数据库管理软件系统,其在管理信息系统、企业数据处理、因特网及电子商务等领域有着非常广泛的应用。因其在数据安全性与数据完整性控制方面的优越性能,以及跨操作系统、跨硬件平台的数据互操作能力,使得越来越多的用户将Oracle作为其应用数据的处理系统。 Oracle数据库是基于“客户端/服务器”模式结构。客户端应用程序执行与用户进行交互的活动。其接收用户信息,并向“服务器端”发送请求。服务器系统负责管理数据信息和各种操作数据的活动。 Oracle数据库有如下几个强大的特性: 支持多用户、大事务量的事务处理 数据安全性和完整性的有效控制 支持分布式数据处理 可移植性很强 Oracle大体上分两大块,一块是应用开发,一块是系统管理。 开发主要是写存储过程、触发器什么的,还有就是用Oracle的Develop工具做form。有点类似于程序员,需要有较强的逻辑思维和创造能力。管理则需要对Oracle 数据库的原理有深刻的认识,有全局操纵的能力和紧密的思维,责任较大,因为一个小的失误就会丢失整个数据库,相对前者来说,后者更看重经验。 Oracle数据库服务器: Oracle数据库包括Oracle数据库服务器和客户端 Oracle Server是一个对象一关系数据库管理系统。它提供开放的、全面的、和集成的信息管理方法。每个Server由一个 Oracle DB和一个 Oracle Server实例组成。它具有场地自治性(Site Autonomy)和提供数据存储透明机制,以此可实现数据存储透明性。每个 Oracle数据库对应唯一的一个实例名SID,Oracle数据库服务器启动后,一般至少有以下几个用户:Internal,它不是一个真实的用户名,而是具有SYSDBA优

oraclesqlservermysql与db2的比较 - oracle 开发

ORACLE、SQLSERVER、MYSQL与DB2的比较- Oracle 开发 比较SQL Server与Oracle、DB2 出处:不祥 关键词:Sql Server, Oracle, 其他1.选择一个好的数据库是非常重要的。2.如何选择一个好的数据库开放性: SQL Server 只能在windows 上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象unix那样久经考验,尤其是在处理大数据量的关键业务时. Oracle 能在所有主流平台上运行(包括windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。DB2 能在所有主流平台上运行(包括windows)。最适于海量数据。DB2在企业级的应用最为广泛,在全球的500家最大的企业中,几乎85%以上用DB2数据库服务器,而国内到97年约占5%. 可伸缩性,并行性 SQL server

DB2 并行实施和共存模型并不成熟。很难处理日益增多的用户数和数据卷。伸缩性有限。Oracle 平行服务器通过使一组结点共享同一簇中的工作来扩展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。如果windowsNT不能满足需要, 用户可以把数据库移到UNIX中。DB2 DB2具有很好的并行性。DB2把数据库管理扩充到了并行的、多节点的环境. 数据库分区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日 志。数据库分区有时被称为节点或数据库节点安全性 SQL server 没有获得任何安全证书。Oracle Server 获得最高认证级别的ISO标准认证。DB2 获得最高认证级别的ISO标准认证。性能 SQL Server 多用户时性能不佳Oracle 性能最高,保持windowsNT下的TPC-D和TPC-C的世界记录。DB2 适用于数据仓库和在线事物处理性能较高。客户端支持及 应用模式

mysql和oracle部分格式转换函数的区别

msyql中没有TO_CHAR这样的通用格式转换函数,所以有几个几个不同的格式函数分开使用,我遇到最经常使用的为转换数字格式和转换时间格式: 1. oracle中的to_char(int, text), to_char(float, text), to_char(numeric, text) 作用:将各种类型的数据转换成特定的格式,其中text为想要转换成为的模板,例如9999.999等。 Mysql:format(number,int) ,其中int的值为想要保留的小数位数。 2. oracle中的TO_CHAR(date,yyyymmdd), 作用:将date类型的数据转换成固定格式的的字符串格式,其中yyyymmdd为想要转换成为的日期格式。 Mysql:date_formate(date,’%Y%m%d’)将时间类型字段格式为字符串格式 与上面那个函数功能正好相反的是str_to_date(string,,'%m.%d.%Y')函数,作用是将字符串类型字段格式为date数据,相当于oracle中的to_date函数。 oracle和mysql的星期返回: oracle返回某个日期的星期值的写法是: to_char(to_date(m.ldate,'YYYYMMDD')-1,'d') -- oracle 返回的是星期1到星期7 mysql 的改写方法为 DATE_FORMAT(m.date,'%w') WHEN 0 THEN 7 ELSE DATE_FORMAT'm.nextselldate,' %w') END -- msyql 返回的是星期1到星期0 说到时间,我们经常可以看到,在oracle数据库中把字段的默认值设为插入的当前时间,如: alter table tablename add col date default sysdate 在mysql中获取当前时间的函数为now(),但是不支持将函数设为字段的默认值,所以我们可以使用timestamp来设置为默认时间,如: Alter tablename add column timestamp date DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTA MP 如果有需要的话,可以使用上面提到的date_format函数来将timestamp转换成合适的字符串。格式如下:To_number(varchar2 or char,’format model’) oracle中还有一个经常使用的格式转换函数就是to_number,作用是将一些处理过的按一定格式编排过的字符串变回数值型的格式。其常用格式为: to_number(varchar2 or char,’format model’) 在mysql中我们使用cast()来对这种情况进行处理,但要填适当的类型,例如: cast(char as unsigned int) /*整型*/ cast(char as decimal(10,2)) /*浮点型*/ 同时mysql中的cast()函数还能用取浮点型小数的整数部分,例如cast(-1.002 as int),这对应的是oracle中的trunc()函数

如何配置Oracle数据库监听

近段时间很多网友提出监听配置相关问题,客户终端(Client)无法连接服务器端(Server)。本文现对监听配置作一简单介绍,并提出一些客户终端无法连接服务器端的解决思路,愿对广大网友与读者有一些帮助。 一、监听器(LISTENER) 监听器是Oracle基于服务器端的一种网络服务,主要用于监听客户端向数据库服务器端提出的连接请求。既然是基于服务器端的服务,那么它也只存在于数据库服务器端,进行监听器的设置也是在数据库服务器端完成的。 二、本地服务名(Tnsname) Oracle客户端与服务器端的连接是通过客户端发出连接请求,由服务器端监听器对客户端连接请求进行合法检查,如果连接请求有效,则进行连接,否则拒绝该连接。 本地服务名是Oracle客户端网络配置的一种,另外还有Oracle名字服务器(Oracle Names Server)等。Oracle常用的客户端配置就是采用的本地服务名,本文中介绍的也主要是基于本地服务名的配置。 三、Oracle网络连接配置方法 配置Oracle服务器端与客户端都可以在其自带的图形化Oracle网络管理器(Oracle Net Manager)里完成(强烈建议在这个图形化的工具下完成Oracle服务端或客户端的配置)。在Windows下,点击“开始/程序/Oracle - OraHome92/Configuration and Migration Tools/Net Manager”启动Oracle网络管理器工具,在Linux/Unix下,利用netmgr命令来启动图形化Oracle网络管理器,如: $ netmgr Windows下启动Net Manager图形窗口如下图示:

ORACLE数据库管理系统介绍

ORACLE 数据库管理系统介绍 的特点: 可移植性 ORACLE采用C语言开发而成,故产品与硬件和操作系统具有很强的独立性。从大型机到微机上都可运行ORACLE的产品。可在UNIX、DOS、Windows等操作系统上运行。可兼容性由于采用了国际标准的数据查询语言SQL,与IBM的SQL/DS、DB2等均兼容。并提供读取其它数据库文件的间接方法。 可联结性对于不同通信协议,不同机型及不同操作系统组成的网络也可以运行ORAˉCLE数据库产品。 的总体结构 (1)ORACLE的文件结构一个ORACLE数据库系统包括以下5类文件:ORACLE RDBMS的代码文件。 数据文件一个数据库可有一个或多个数据文件,每个数据文件可以存有一个或多个表、视图、索引等信息。 日志文件须有两个或两个以上,用来记录所有数据库的变化,用于数据库的恢复。控制文件可以有备份,采用多个备份控制文件是为了防止控制文件的损坏。参数文件含有数据库例程起时所需的配置参数。 (2)ORACLE的内存结构一个ORACLE例程拥有一个系统全程区(SGA)和一组程序全程区(PGA)。 SGA(System Global Area)包括数据库缓冲区、日志缓冲区及

共享区域。 PGA(Program Global Area)是每一个Server进程有一个。一个Server进程起动时,就为其分配一个PGA区,以存放数据及控制信息。 (3)ORACLE的进程结构ORACLE包括三类进程: ①用户进程用来执行用户应用程序的。 ②服务进程处理与之相连的一组用户进程的请求。 ③后台进程 ORACLE为每一个数据库例程创建一组后台进程,它为所有的用户进程服务,其中包括: DBWR(Database Writer)进程,负责把已修改的数据块从数据库缓冲区写到数据库中。LGWR(Log Writer)进程,负责把日志从SGA中的缓冲区中写到日志文件中。 SMON(System Moniter)进程,该进程有规律地扫描SAG进程信息,注销失败的数据库例程,回收不再使用的内存空间。PMON(Process Moniter)进程,当一用户进程异常结束时,该进程负责恢复未完成的事务,注销失败的用户进程,释放用户进程占用的资源。 ARCH(ARCHIVER)进程。每当联机日志文件写满时,该进程将其拷贝到归档存储设备上。另外还包括分布式DB中事务恢复进程RECO 和对服务进程与用户进程进行匹配的Dnnn进程等。 的逻辑结构 构成ORACLE的数据库的逻辑结构包括: (1)表空间

相关文档
最新文档