oracle客户端需要安装哪个服务器
一、监听器(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。
四、客户端连接服务器端常见问题排除方法
要排除客户端与服务器端的连接问题,首先检查客户端配置是否正确(客户端配置必须与数据库服务器端监听配置一致),再根据错误提示解决。下面列出几种常见的连接问题:
1、 ORA-12541: TNS: 没有监听器:
显而易见,服务器端的监听器没有启动,另外检查客户端IP地址或端口填写是否正确。启动监听器:
$ lsnrctl start或C:\lsnrctl start。
2、 ORA-12500: TNS: 监听程序无法启动专用服务器进程:
对于Windows而言,没有启动Oracle实例服务。启动实例服务:C:\oradim –startup -sid myoracle。
3、 ORA-12535: TNS: 操作超时:
出现这个问题的原因很多,但主要跟网络有关。解决这个问题,首先检查客户端与服务端的网络是否畅通,如果网络连通,则检查两端的防火墙是否阻挡了连接。
4、 ORA-12154: TNS: 无法处理服务名:
检查输入的服务名与配置的服务名是否一致。另外注意生成的本地服务名文件(Windows下如D:\oracle\ora92\network\admin \tnsnamesora,Linux/Unix下$ORACLE_HOME/network/admin/tnsnamesora)里每项服务的首行服务名称前不能有空格。
5、 ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的 SERVICE_NAME打开Net Manager,选中服务名称,检查服务标识栏里的服务名输入是否正确。该服务名必须与服务器端监听器配置的全局数据库名一致。
6、 Windows下启动监听服务提示找不到路径:
用命令或在服务窗口中启动监听提示找不到路径,或监听服务启动异常。打开注册表,进入HKEY_LOCAL_MACHINE/SYSTEM/Current ControlSet/Services/OracleOraHome92TNSListener项,查看ImagePath字符串项是否存在,如果没有,设定值为D:\oracle\ora92\BIN\TNSLSNR,不同的安装路径设定值做相应的更改。这种方法同样适用于Oracle实例服务,同上,找到如同HKEY_LOCAL_MACHINE/SYSTEM/Current ControlSet/Services/Oracle ServiceMYORACLE项,查看ImagePath字符串项是否存在,如果没有,则新建,设定值为d:\oracle\ora92\ binORACLEEXE MYORACLE。
2甲骨文股份有限公司是全球最大的数据库软件公司,总部位于美国加州的红木滩。
公司类型 上市公司 (NASDAQ: ORCL)
口号 Oracle is the information company
成立于 加利福尼亚 (1977年)[1]
总部位于 美国加州红木滩市
重要人物 劳伦斯·埃里森 Lawrence (Larry) J Ellison, 首席执行官
产业 数据库软件
雇员数目 35000+
产品
数据库服务器
应用服务器
开发工具
中间件产品
BI
客户关系管理
供应链管理
JDE
收入 179亿美元 (2007财年)
主要产品
甲骨文公司主要的产品目前分为两大类:
服务器(服务器)及工具(主要竞争对手:国际商用机器、微软)
数据库服务器:2008年最新版本11G
应用服务器: Oracle Application Server
开发工具:Oracle JDeveloper,Oracle Designer,Oracle Developer,等等
应用软件(主要竞争对手:德国SAP公司。)
企业资源计划(ERP)软件。已有10年以上的历史。2005年,并购了开发企业软件的人科软件公司(PeopleSoft)以增强在这方面的竞争力。
客户关系管理(CRM)软件。自1998年开始研发这种软件。2005年,并购了开发客户关系管理软件的希柏软件公司(Siebel)。
Oracle公司是全球最大的信息管理软件及服务供应商,成立于1977年,总部位于美国加州 Redwood shore。2000财年(99年6月到2000年5月)营业额达101亿美元,再创Oracle公司销售额历史新高,比去年增长了13亿美元,盈利增长61%,达到21亿美元。Oracle公司现有员工超过三万六千人,服务遍及全球145个国家。Oracle公司拥有世界上唯一一个全面集成的电子商务套件Oracle Applications R11i,它能够自动化企业经营管理过程中的各个方面,深受用户的青睐,促使Oracle应用软件在2000财年第四季度的销售额达447亿美元,与SAP公司的同期应用软件销售额352亿美元相比,多出近1亿美元,这一事实表明,Oracle已经是世界最大的应用软件供应商。Oracle电子商务套件涵盖了企业经营管理过程中的方方面面,虽然它在不同的方面分别面对不同的竞争对手,而Oracle电子商务解决方案的核心优势就在于它的集成性和完整性,用户完全可以从Oracle公司获得任何所需要的应用功能,更重要的是,它们具有一致的基于Internet技术的应用体系结构,而如果用户想从其它厂商处获得Oracle电子商务所提供的完整功能,不仅需要从多家厂商分别购买不同的应用,而且需要另请咨询公司把这些不同的应用装配起来,还必须确保它们能够协同地工作。
先进的产品和高效率的企业运作,是Oracle公司利润得以继续增长的重要原因,一年前,Oracle公司确定了通过采用自身的Internet电子商务解决方案,实现每年节省10亿美元企业日常运作费用的目标,这一数据相当于将我们的年度利润率提高10%。
四年前电子商务在全球范围内还仅处于萌芽状态时,Oracle公司便前瞻性地作出了从领先的数据库厂商向以Internet计算为基础的完整的电子商务解决方案供应商转型的战略部署。这一前瞻性战略为Oracle带来了巨大的利益,今天,Oracle能够领先于竞争对手提供包括平台产品、应用产品和完善的服务在内的先进的、完整的、集成的电子商务解决方案,可以无缝集成供应链管理(SCM)、企业资源管理(ERP)、客户资源管理(CRM)和企业商业智能(BI)和电子商务应用IP(Internet Pocurement)、Exchange、Portal-to-go等产品。Oracle从低端到高端的所有方案100%基于Internet应用体系结构,都可以通过Web安全、直接地访问,使企业能够通过Web完成包括报价、定单、支付、执行、服务等在内的企业业务过程的所有环节,帮助企业将现有业务内容快速转移到电子商务,迅速获得来自电子商务的高效益。
Oracle应用产品包括财务、供应链、制造、项目管理、人力资源和市场与销售等150多个模块,荣获多项世界大奖,现已被全球近7600多家企业所采用。由于在电子商务方面的杰出表现,Oracle公司在美国Mongan Stanley公司最新公布的权威性全球企业1000强中,从去年的第122名一跃成为第13名,成为全球第二大独立软件公司和最大的电子商务解决方案供应商。目前, Amazon和Dell等全球十个最大的Internet电子商务网站、全球十个最大的B-to-B网站中的九个、93%的上市COM公司、65家“财富全球100强”企业均不约而同地采用Oracle电子商务解决方案。
Oracle中国公司
1989年Oracle公司正式进入中国市场,成为第一家进入中国的世界软件巨头,标志着刚刚起飞的中国国民经济信息化建设已经得到Oracle的积极响应,由Oracle首创的关系型数据库技术开始服务于中国用户。1991年7月,经过了近两年时间的努力开拓,为了更好地与迅速发展的业务相适应,Oracle在北京建立独资公司。今天的Oracle中国公司拥有超过3500名员工,并在全国十二个城市设立了分公司。
为了帮助中国用户及时、充分利用世界最先进的计算机软件技术与产品,Oracle中国公司在产品汉化方面投入了大量的资源,目前,Oracle的大部分产品均已实现了全面中文化,中文版产品的更新节奏与美国本土基本同步一致。与此同时,Oracle在中国得到了数以百计的国内计算机企业的合作与支持,除了惠普、Sun、康柏、Cisco、Intel等Oracle全球联盟合作伙伴和普华永道咨询有限公司、安达信企业咨询有限公司、安盛咨询、德勤企业管理咨询公司、凯捷安永咨询(亚太)有限公司等Oracle全球系统集成商外,Oracle公司在中国还建立起完整的合作伙伴体系,6家增值经销商、72家独立软件开发商、3家应用软件合作伙伴、180家授权分销商和4家授权培训中心,他们共同构成了基于Oracle技术产品基础的全国性市场开拓、系统集成、增值开发与技术服务体系,为Oracle在中国的业务发展提供了强有力的支持。由他们开发的数百个基于Oracle平台的商品化应用软件包,已经广泛应用于国内的政府部门、电信、邮政、公安、金融、保险、能源电力、交通、科教、石化、航空航天、民航等各行各业。
甲骨文公司主要产品简介
1 Oracle电子商务套件(Oracle E-Business Suite)
Oracle电子商务套件是行业中第一个集成的基于互联网的商务应用套件,它将前台与后台运营中的关键业务流程自动化。Oracle电子商务套件涵盖了营销、销售、服务、合同、定单管理、产品设计、采购、供应链、制造、财务、项目管理、人力资源与专业服务自动化在内的企业中每一个领域的业务。2001年全球共有1100多家企业实施了Oracle电子商务套件,目前全球已经有超过12000家用户正在获益于Oracle电子商务套件所带来的前所未有的好处。
自从Oracle电子商务套件首次面世以来,甲骨文公司已经推出了6种电子商务套件的增强版本,从而形成了一整套成熟的、功能齐全的应用套件。Oracle电子商务套件能够使用户在实施业务应用时拥有前所未有的可选择性与灵活性,它的开放式基础架构与单一数据模型使用户在部署套件中的应用软件时拥有多种选择,既可以单独使用,也可以组成业务流,还可以作为一个整体的集成套件来部署。Oracle电子商务套件既可以作为用CD ROM为载体的传统软件的形式,也可以作为一种在线服务的形式来提供给用户。
2 Oracle10g —— 新一代电子商务平台
Oracle10g是业界第一个完整的、智能化的新一代Internet基础架构,Oracle10g电子商务平台实际上是指Oracle数据库10g、Oracle应用服务器10g和Oracle开发工具套件10g的完整集成。
Oracle数据库10g是第一套具有无限可伸缩性与高可用性,并可在集群环境中运行商业软件的互联网数据库,具有400多个领先的数据库功能,在集群技术、高可用性、商业智能、安全性、系统管理等方面都实现了新的突破。作为甲骨文公司长达十年的软件技术研发成果,真正应用集群技术(Real Application Clusters)能够提供近乎无限的扩充能力与整体可用性,为用户带来透明的、高速增长的集群功能。
Oracle应用服务器10g是J2EE认证的、最轻、最快、最具伸缩性的应用服务器,提供了企业门户软件、无线支持、高速缓存、轻量级J2EE引擎、商务智能、快速应用开发、应用与业务集成、Web 服务等多种应用开发功能,形成完整的电子商务应用开发和部署环境。使用了Oracle应用服务器10g的用户可以通过升级软件来取代升级硬件,大大的节省了基础设施的成本花费。
Oracle开发工具套件10g是一套完整的集成开发工具,可用于快速开发使用Java和XML语言的互联网应用和Web服务,支持任何语言、任何操作系统、任何开发风格、开发生命周期的任何阶段以及所有最新的互联网标准。
9i之后的Oracle的硬件要求很高,(Windows版本)9i建议配512M内存,10g建议配1G内存。
Oracle数据库的体系结构
Oracle数据库包括Oracle数据库服务器和客户端。
Oracle数据库服务器:
Oracle Server是一个对象一关系数据库管理系统。它提供开放的、全面的、和集成的信息管理方法。每个Server由一个 Oracle DB和一个 Oracle Server实例组成。它具有场地自治性(Site Autonomy)和提供数据存储透明机制,以此可实现数据存储透明性。每个 Oracle数据库对应唯一的一个实例名SID,Oracle数据库服务器启动后,一般至少有以下几个用户:Internal,它不是一个真实的用户名,而是具有SYSDBA优先级的Sys用户的别名,它由DBA用户使用来完成数据库的管理任务,包括启动和关闭数据库;Sys,它是一个 DBA用户名,具有最大的数据库操作权限;System,它也是一个 DBA用户名,权限仅次于 Sys用户。
客户端:
为数据库用户操作端,由应用、工具、SQL NET组成,用户操作数据库时,必须连接到一服务器,该数据库称为本地数据库(Local DB)。在网络环境下其它服务器上的 DB称为远程数据库(Remote DB)。用户要存取远程 DB上的数据时,必须建立数据库链。
Oracle数据库的体系结构包括物理存储结构和逻辑存储结构。由于它们是相分离的,所以在管理数据的物理存储结构时并不会影响对逻辑存储结构的存取。
1逻辑存储结构
它由至少一个表空间和数据库模式对象组成。这里,模式是对象的集合,而模式对象是直接引用数据库数据的逻辑结构。模式对象包括这样一些结构:表、视图、序列、存储过程、同一词、索引、簇和数据库链等。逻辑存储结构包括表空间、段和范围,用于描述怎样使用数据库的物理空间。而其中的模式对象和关系形成了数据库的关系设计。
数据块(Block):是数据库进行UO操作的最小单位,它与操作系统的块不是一个概念。oracle数据库不是以操作系统的块为单位来请求数据,而是以多个Oracle数据库块为单位。
段(Segment):是表空间中一个指定类型的逻辑存储结构,它由一个或多个范围组成,段将占用并增长存储空间。
其中包括:
数据段:用来存放表数据;.
索引段:用来存放表索引;
临时段:用来存放中间结果;
回滚段:用于出现异常时,恢复事务。
范围(Extent):是数据库存储空间分配的逻辑单位,一个范围由许多连续的数据块组成,范围是由段依此分配的,分配的第一个范围称为初始范围,以后分配的范围称为增量范围。
年表
约70年代 一间名为Ampex的软件公司,正为中央情报局设计一套名叫Oracle的数据库,Ellison是程序员之一。
1977 年艾利森与女上司Robert Miner创立“软件开发实验室”(Software Development Labs),当时IBM发表“关联数据库”的论文,艾利森以此造出新数据库,名为甲骨文。
1978 年 公司迁往硅谷,更名为“关系式软件公司” (RSI),两年后,共有8名员工,年收入少于100万美金。最先提出“关联数据库”的IBM采用RSI的数据库。1982年再更名为甲骨文(Oracle)。
1984年 三年内,先后进军加、荷、英、奥地利、日、德、瑞士、瑞典、澳洲、芬兰、法、香港、挪威、西班牙。1986年上市时,年收入暴升至5500 万美元,同年3月招股,集资3150万美元。
1987年 年收入达到 131 亿美元,甲骨文一年后成为世界第四大软件公司。两年内再进军墨西哥、巴、中、塞浦路斯、马来西亚及新西兰。一年后,收入再升一倍至282亿美元。
1990年 甲骨文两年内挥军进入智利、希腊、韩、葡、土、委内瑞拉、台、比利是、阿根延、哥伦比亚、哥斯达黎加及菲等地,但市甲骨文首次录得亏蚀,市值急跌80%,艾利森首次安排资深管理人员参与经营。
1992年 旗鉴产品Oracle 7面世,该公司重拾升轨,年收入达到 1179 亿美元。曾被视为甲骨文接班人、但后来被踼出局的Raymond Lane担任营运总监。
1995年 艾利森宣布PC已死,把全数产品推向因特网发展,并另组“网络电脑公司”(Network Computer),销售“网络电脑”,最终被淘汰收场。
2000年 科网接近尾声时,推出E-Business Suite,抢占应用产品市场,与昔日的生意伙伴构成严重利益冲突。同期微软及IBM数据技术提升,此后Oracle新增订单数目的占有率,在两年内下跌66%,业务倒退10%。
2003年 敌意收购仁科软件公司(Peoplesoft),引起业界轰动。两公司的争嗌新闻层出不穷。同年美国司法部落案阻止甲骨文收购。
补充内容:
oracle11g
2007年7月12日,甲骨文公司在美国纽约宣布推出数据库Oracle 11g,这是Oracle数据库的最新版本。甲骨文介绍说,Oracle 11g有400多项功能,经过了1500万个小时的测试,开发工作量达到了36万人/月。
有意思的是,根据甲骨文以往几个版本的发行经验,发布新版Oracle数据库的频率在3年左右,以此类推,Oracle 11g应该在07年年底发布,选择在7月份发布,不知道是否和代号Katmai的SQL Server 2008有关,因为目前还处于测试阶段的SQL Server 2008将在08年2月发布,业内用Oracle 10g和SQL Server 2003做比较也曾一度惹恼了甲骨文。
XML显高温
当XML面世之时,也许没有哪个数据库厂商会对这种技术给以足够的关注,然而在今天,XML已经开始对数据存储产生巨大的影响。到现在,这种可扩展标记语言已是各种数据,特别是文档的首选格式,国际主流的数据库厂商们自然也随行就市,全都推出了兼容传统关系型数据与XML数据混合应用的新一代数据库产品。
XML在数据存储方面有一个明显的优点,那就是可以直接将逻辑关系编写在XML文件当中。一个时髦的XML数据库应该提供哪些功能呢归纳起来应该有四个基本功能:使用、存储、查询和产生XML的能力。
在Oracle 10g中,曾被人们津津乐道的最重要的改进是增加了对XML schema(XML语法)转换的支持,它允许用户通过将现有的数据映射为新的schema来实现XML schema转换。而不必把所有XML数据输出后再重新输入进去,其它事情将由数据库自动完成。
在Oracle 11g中, XML DB的性能又获得很大提高,XML DB是Oracle数据库的一个组件,客户可以以本机方式存储和操作XML数据。11g增加了对二进制XML数据的支持,现在客户可以选择适合自己特定应用及性能需求的XML存储选项。
当然,不仅仅是甲骨文看好XML,为吸引Oracle用户,IBM公司DB2 9打XML旗号直接把XML作为其新产品的最大卖点;微软和Sybase也宣称它们的产品也可以实现高性能XML存储与查询,使现有应用更好地与XML并存。
网格计算有点冷
新的Oracle 11g仍使用g(Grid)作为后缀,以代表这是一个包含了网格技术基础的数据库。甲骨文称,Oracle 11g能更方便地在低成本服务器和存储设备组成的网格上运行。不过,目前仅有IBM DB2数据库也支持网格计算技术。
网格计算将多个服务器和存储器当作一台大型电脑协调使用,使它们在高速网络上动态地共享计算机资源,以满足不断变化的计算需求。简而言之,即将多个服务器和存储器当作一台主机协调使用。网格计算被广泛视为未来的计算方式。
尽管微软对网格计算的兴趣也很浓厚,承诺要让Windows能够更好地适应高数据强度的计算网格。但微软除了在内部研究之外,似乎一直在这个话题上非常沉默。对于数据库中网格计算,微软和Sybase方面表示,网格应用在技术上还需解决一些问题(如:多节点性能问题) ,网格技术要成为商业应用的主流,还需要几年时间在应用和产品上进一步完善。
不容乐观的是,在咨询公司Quocirca发布的调查显示,我国网格实际采用率仍然偏低,总体网格指数在15个被调查国家中只排第9位,处于中下游,甲骨文表示,中国用户可能对网格的价值还没有真正接受。很多中国企业有一种观望的心态,觉得应用网格存在风险。
11g安全了吗
有业内人士曾表示,Oracle 10g只能算是一个过渡版本。因为06年,下一代安全软件机构NGSS对微软SQL Server和Oracle数据库做了一个弱点对比,结果表明Oracle的数据库产品存在更多的弱点。
NGSS的研究人员称,Oracle有233个缺陷点,而SQL Server只有59个。这些缺陷在SQL Server7、2000以及2005中,在Oracle8、9以及10g版本中被报道,并被修复。分析机构ESG也发布调查报告表示,在安全性方面微软击败了甲骨文,似乎甲骨文数据库“无懈可击”的安全神话已不复存在。
针对那些不断对甲骨文安全性能表示批评的专家,甲骨文终于开始猛烈还击。2006年底,甲骨文全球技术事业部的安全经理Eric Maurice在公司的博客上表示,甲骨文在开发和安全方面的技术水平居业界领先位置。与微软数据库的安全性能比较,不过是别有用心的人在玩数字游戏,甲骨文不会让外部的压力改变其既定的安全策略。
到现在,起码可以从资料上看到,Oracle的安全认证获得最高认证级别的ISO标准认证,而SQL Server并没有获得什么安全认证。从这方面证明了Oracle的安全性不应该被受到如此指责。
从甲骨文此次推出的11g可以看到,在安全方面除了10g已经存在的数据阀门和加密外,11g又增加了四项安全功能,即安全备份、非对称数据的授权安全检索、监控、管理和报警。
Oracle 11g数据库增强了Oracle透明数据加密功能,将这种功能扩展到了卷级加密之外。11g还增加了表空间加密功能,可用来加密整个表、索引和所存储的其它数据。存储在数据库中的大型对象也可以加密。
看来甲骨文很注重11g在安全上的表现,闪回交易技术可以撤销错误交易以及任何相关交易,并行备份和恢复功能。另外,一种新的顾问软件—数据恢复顾问,可自动调查问题,智能地确定恢复计划并处理多种故障情况。
Oracle 11g的Oracle Data Guard组件可用于对生产数据库的报告、备份、测试和“滚动”升级。通过将工作量从生产系统卸载到备用系统,并组成一个更经济的灾难恢复解决方案。
也许正是在安全性上的增强,才使得甲骨文公司数据库服务器技术高级副总裁Andy Mendelsohn自信地表示:“Oracle 11g真正克服了挑战并实现了真正的创新。”
一个疯狂的发烧友在自家的车库中改造了小型IDC,并利用Sun Enterprise 220R Server架设了Oracle 10g数据库
增强信息生命周期管理和存储管理能力:引入了更多的自助式管理和自动化功能;
◆透明的加密:Oracle将这种功能扩展到了卷级加密之外;
◆提高信息可用性:免受计划停机和意外宕机影响;
◆更快的XML:通过XML DB组件,客户可以本机方式存储和操作XML数据;
◆增强了自助式管理和自动化能力:增加了自动SQL和存储器微调等管理功能;
◆增强了应用开发能力:提供多种开发工具供开发人员选择,包括Java实时编译器。
开源数据库成熟时
以MySQL、PostgreSQL为代表的开源数据库系统,已成为取代闭源数据库的一种颇具吸引力的选择。
成熟的开源数据库,让Oracle这样的闭源厂商难以腾飞
知名的网络游戏The Matrix Online(骇客帝国Online),每天有数万名网上玩家同时在线,为了能够支撑庞大的在线游戏玩家同时进行游戏,Sony Online Entertainment(索尼在线娱乐公司,以下简称SOE)需要密集使用数据库。
以往SOE会使用大量的Oracle RAC集群提供服务,但是由于Oracle数据库的授权证十分昂贵及欠缺弹性,加上公司需要更多额外数据库。所以从2005年开始,该公司就开始寻求既具有较低总拥有成本,又具有较好灵活性的开源数据库以取代Oracle数据库。
踢开Oracle
SOE对数据库的需求相当可观,其数据库应用程序是关键任务应用程序的最恰当诠释:每天有数十万在线玩家在玩SOE的游戏,而每款游戏都是一个数据库及其密集的应用程序。
事实上,SOE在应用开放源代码的应用上有很长历史,曾经就使用过Linux、Tomcat、Apache、Hibernate架设系统,此次的开源抉择,SOE更注重寻觅能够利用其宝贵资产(内部能够熟练使用Oracle的数据库人才)的方法,在选择开源数据库时,列出了四项标准:
1、能够充分发挥其现有数据库管理员和开发人员的潜能;
2、易于将SOE现有的Oracle应用程序迁移到新的数据库;
3、能够提供商用级别质量可靠性,包括备份和恢复标准,以支持关键任务应用程序;
4、可扩展,具有高性能。
在选择开源数据库之前,SOE需要使用许多Oracle 9i RAC群集。另外,SOE在其后台运营中部署了数据库。与如今的很多企业一样,SOE希望开源软件能够提供应对这些业务挑战的解决方案。
根据SOE对不同开放源码数据库的评估,他们选择了兼容Oracle数据库的EnterpriseDB,因为SOE有八成以上的特定Oracle应用程式,可以在极少、甚至无需修改的情况下在EnterpriseDB执行,以现有开支比较,利用EnterpriseDB后,每款线上游戏的整体拥有成本可降低80%,每年节省总额过百万,在2007至2008年度,SOE将使用数百台EnterpriseDB数据库集群服务器。
开源更有前途
使用Oracle数据库的企业一般都会对开源数据库感兴趣,主要有三个方面原因:首先,通过部署开源数据库,这些企业可以显著降低数据库的总拥有成本(TCO),有时降幅甚至高达90%;其次,他们通常可以从其他厂商获得更大的许可灵活性以及业务便利;最后,这些企业会发现其他厂商更渴望为他们提供出色技术。
对于开源数据库,企业多少也会有些担心,因为许多企业仅限于将开源数据库用于一些简单的应用程序,如一些网站的支持应用。因为这些企业普遍认为开源数据库可能不够稳定,可靠性或者可扩展性不够高,因而无法满足他们的关键任务应用需求。另外,企业可能还觉得更改数据库的代价,例如,与应用程序重新编码,人员重新培训相关的成本,可能会超出预期的节省目标。
MySQL、FireBird、EnterpriseDB和Postgre(PostgreSQL的前身)都是非常健壮的开源数据库,而EnterpriseDB又是基于PostgreSQL进行开发的,不仅保留了PostgreSQL的稳定性,而且可实现50%的速度增长,系统可以自动监测是否有补丁程序存在,大大减轻管理员的工作。
近几年来,美国一些大企业纷纷采用开放源码数据库,它们往往在总部采用商业数据库,而在分支机构的Linux服务器上采用开源产品。这些数据库除了费用便宜,还各有独到之处。与商业化产品相比,开源数据库结构简单,但功能不简单,读取操作快捷,易管理,甚至不需要全职的管理员。由此吸引了像Cisco、Yahoo这样的大公司,以及众多的中小企业。而在国内,我们熟悉的新浪、网易等大型门户网站也是开源数据库的使用者。
该企业品牌在世界品牌实验室(World Brand Lab)编制的2006年度《世界品牌500强》排行榜中名列第三十六。
Oracle数据库服务器是整个系统的核心 它的性能高低直接影响整个系统的性能 为了调整Oracle数据库服务器的性能 主要从以下几个方面考虑
◆ 调整操作系统以适合Oracle数据库服务器运行 Oracle数据库服务器很大程度上依赖于运行服务器的操作系统 如果操作系统不能提供最好性能 那么无论如何调整 Oracle数据库服务器也无法发挥其应有的性能
为Oracle数据库服务器规划系统资源
据已有计算机可用资源 规划分配给Oracle服务器资源原则是 尽可能使Oracle服务器使用资源最大化 特别在Client/Server中尽量让服务器上所有资源都来运行Oracle服务
调整计算机系统中的内存配置
多数操作系统都用虚存来模拟计算机上更大的内存 它实际上是硬盘上的一定的磁盘空间 当实际的内存空间不能满足应用软件的要求时 操作系统就将用这部分的磁盘空间对内存中的信息进行页面替换 这将引起大量的磁盘I/O操作 使整个服务器的性能下降 为了避免过多地使用虚存 应加大计算机的内存
为Oracle数据库服务器设置操作系统进程优先级
不要在操作系统中调整Oracle进程的优先级 因为在Oracle数据库系统中 所有的后台和前台数据库服务器进程执行的是同等重要的工作 需要同等的优先级 所以在安装时 让所有的数据库服务器进程都使用缺省的优先级运行
◆ 调整内存分配
Oracle数据库服务器保留 个基本的内存高速缓存 分别对应 种不同类型的数据 库高速缓存 字典高速缓存和缓冲区高速缓存 库高速缓存和字典高速缓存一起构成共享池 共享池再加上缓冲区高速缓存便构成了系统全程区(SGA) SGA是对数据库数据进行快速访问的一个系统全程区 若SGA本身需要频繁地进行释放 分配 则不能达到快速访问数据的目的 因此应把SGA放在主存中 不要放在虚拟内存中 内存的调整主要是指调整组成SGA的内存结构的大小来提高系统性能 由于Oracle数据库服务器的内存结构需求与应用密切相关 所以内存结构的调整应在磁盘I/O调整之前进行
库缓冲区的调整
库缓冲区中包含私用和共享SQL和PL/SQL区 通过比较库缓冲区的命中率决定它的大小 要调整库缓冲区 必须首先了解该库缓冲区的活动情况 库缓冲区的活动统计信息保留在动态性能表v$librarycache数据字典中 可通过查询该表来了解其活动情况 以决定如何调整 Select sum(pins) sum(reloads) from v$librarycache; Pins列给出SQL语句 PL/SQL块及被访问对象定义的总次数 Reloads列给出SQL 和PL/SQL块的隐式分析或对象定义重装载时在库程序缓冲区中发生的错误 如果sum(pins)/sum(reloads) ≈ 则库缓冲区的命中率合适 若sum(pins)/sum(reloads)> 则需调整初始化参数 shared_pool_size来重新调整分配给共享池的内存量
数据字典缓冲区的调整
数据字典缓冲区包含了有关数据库的结构 用户 实体信息 数据字典的命中率 对系统性能影响极大 数据字典缓冲区的使用情况记录在动态性能表v$librarycache中 可通过查询该表来了解其活动情况 以决定如何调整 Select sum(gets) sum(getmisses) from v$rowcache; Gets列是对相应项请求次数的统计 Getmisses 列是引起缓冲区出错的数据的请求次数 对于频繁访问的数据字典缓冲区 sum(getmisses)/sum(gets)< %~ % 若大于此百分数 则应考虑增加数据字典缓冲区的容量 即需调整初始化参数shared_pool_size来重新调整分配给共享池的内存量
缓冲区高速缓存的调整
用户进程所存取的所有数据都是经过缓冲区高速缓存来存取 所以该部分的命中率 对性能至关重要 缓冲区高速缓存的使用情况记录在动态性能表v$sysstat中 可通过查询该表来了解其活动情况 以决定如何调整
Select name value from v$sysstat
where name in ( dbblock gets consistent gets physical reads );
dbblock gets和consistent gets的值是请求数据缓冲区中读的总次数 physical reads的值是请求数据时引起从盘中读文件的次数 从缓冲区高速缓存中读的可能性的高低称为缓冲区的命中率 计算公式
Hit Ratio= (physical reds/(dbblock gets+consistent gets))如果Hit Ratio< %~ % 则应增大db_block_buffers的参数值 db_block_buffers可以调整分配给缓冲区高速缓存的内存量 即db_block_buffers可设置分配缓冲区高速缓存的数据块的个数 缓冲区高速缓存的总字节数=db_block_buffers的值db_block_size的值 db_block_size 的值表示数据块大小的字节数 可查询 v$parameter 表 select name value from v$parameter where name= db_block_size ; 在修改了上述数据库的初始化参数以后 必须先关闭数据库 在重新启动数据库后才能使新的设置起作用
◆ 调整磁盘 I/O
磁盘的I/O速度对整个系统性能有重要影响 解决好磁盘I/O问题 可显著提高性能 影响磁盘I/O的性能的主要原因有磁盘竞争 I/O次数过多和数据块空间的分配管理
为Oracle数据库服务器创建新文件时 不论是表空间所用的数据文件还是数据事务登录所用的日志文件 都应仔细考虑数据库服务器上的可用磁盘资源 如果服务器上有多个磁盘 则可将文件分散存储到各个可用磁盘上 减少对数据库的数据文件及事务日志文件的竞争 从而有效地改善服务器的性能 对于不同的应用系统都有各自的数据集 应当创见不同的表空间分别存储各自应用系统的数据 并且尽可能的把表空间对应的数据文件存放在不同的磁盘上 这种从物理上把每个应用系统的表空间分散存放的方法 可以排除两个应用系统竞争磁盘的可能性 数据文件 事务日志文件分别存放在不同的磁盘上 这样事务处理执行的磁盘访问不妨碍对相应的事物日志登记的磁盘访问 如果有多个磁盘可用 将两个事物日志成员放在不同的磁盘驱动器上 就可以消除日志文件可能产生的磁盘竞争 应把一个应用的表数据和索引数据分散存放不同表空间上 并且尽量把不同类型的表空间存放在不同磁盘上 这样就消除了表数据和索引数据的磁盘竞争
◆ 调整数据库服务器的回滚段
回滚段是一个存储区域 数据库使用该存储区域存放曾经由一个事务更新或删除的行的原始数据值 如果用户要回滚一个事务所做的改变 那么数据库就从回滚段中读回改变前的数据并使该事务影响的行改变为它们的原状态 回滚段控制着数据库处理事务的能力 因而在数据库成功中起著关键性的作用 不管数据库的其它部分设计得多好 如果它设计得不合理 将会严重影响系统的性能 建立和调整回滚段的原则如下
分离回滚段
分离回滚段是指单独为回滚段创建一个以上的表空间 使回滚段与数据字典 用户数据 索引等分离开来 由于回滚段的写入与数据和索引的写入是并行进行的 因此将它分离出来可以减少I/O争用 如果回滚段与数据不分离 倘若要某个表空间脱机或撤消 那么在该表空间中的各个回滚段没有全部脱机之前 不能将这个表空间脱机或撤消 而一旦该表空间不可用 则该表空间中的所有回滚段也不能使用 这将浪费所有分配的磁盘空间 所以 独立回滚段可使数据库管理变得容易 回滚段的经常性收缩 使得表空间的自由块更容易形成碎片 分离回滚段可以减少数据库表空间的碎片产生
创建不同大小的回滚段群
lishixinzhi/Article/program/Oracle/201311/18922
oracle客户端与服务端有什么区别:
1、oracle服务端是指装在数据库服务器上的oracle主服务,数据库的核心,用于数据库的管理,数据的与存储、查询、数据库资源的监控、监听等服务。
oracle客户端只是指与服务端交互的工具,要登录使用oracle数据库服务就需要安装客户端(例如PLSQL),利用PLSQL连接到数据库,来执行oralce服务的一些增删改查等操作。
2、服务器端不一定在本地(client一定在本地),所以需要在客户端配置TNSNAMESORA文件。在文件中添加服务名和IP。
3、oracle数据库服务都会有一个全局数据库名例如:orcl,这是在安装数据库时指定的。如果要安装多个数据库,那么这个全局数据库名必须不一样。服务器端的listener文件里配置有监听程序,可以配置多个监听IP。
而oracle客户端连接服务端是就要配置oracle的实例名来确认数据库信息。
4、服务器端的客户工具是通过服务器端tnsnamesora和listenerora进行验证并建立连接;
远程客户端是通过客户端的tnsnamesora和服务器端的listenerora执行验证和建立连接。
着信息技术的飞速发展,数据处理不仅在数量上要求越来越大,而且在质量上也要求越来越高。Oracle数据库在大多数企业中受到广泛使用,而SQL Server数据库也因为和Windows的联系,在企业中的使用也是非常广泛。 \x0d\\x0d\操作系统的稳定对数据库来说是十分紧要的,在数据库可操作平台上,Oracle可在所有主流平台上运行,Oracle数据库采用开放的策略目标,它使得客户可以选择一种最适合他们特定需要的解决方案。客户可以利用很多种第三方应用程序、工具。对开发商来说是很大的支持。而SQL Server却只能在Windows上运行了,这个就显得比较单调了,但SQL Sever在Window平台上的表现,和Windows操作系统的整体结合程度,使用方便性,和Microsoft开发平台的整合性都比Oracle强的很多。但Windows操作系统的稳定性及可靠性大家是有目共睹的,再说Microsoft公司的策略目标是将客户都锁定到Windows平台的环境当中,只有随着Windows性能的改善,SQL Server才能进一步提高。从操作平台这点上Oracle是完全优胜于SQL Server的了。 \x0d\\x0d\从资料上可以看到,Oracle的安全认证获得最高认证级别的ISO标准认证,而SQL Server并没有获得什么安全认证。这方面证明了Oracle的安全性是高于SQL Server的。 \x0d\\x0d\购买一个产品,首先考虑的当然是产品的性能了,当考虑性能的同时当然少不了究竟要花多少钱在这产品也是个很关键的问题。要建立并运行一个数据库系统。不仅仅包含最初购置软件、硬件的费用,还包含了培训及以后维护的费用。Orcale数据库的价格是远比SQL Server数据库要高,为什么Oracle数据库比SQL Server数据库价格上要高出那么多,一方面Oracle的初始花费相对较高,特别是在考虑工具软件的时候,Oracle很多工具软件需要另外购买,与Microsoft提供免费的SQL Server工具软件相比,Oracle更显价格的不菲。但由于SQL Server只能在Windows下运行的原因,普遍认为SQL Server数据库的可靠性是比较差的。Oracle的性能优势体现在他的多用户上,而SQL Server的性能优势在多用户上就显得力不从心了。 \x0d\\x0d\操作上SQL Server明显要比Orcale简单,如果你用过Java和DOTNET的开发平台,区别的基本就是Oracle和SQL Server不同,Oracle的界面基本是基于Java的,大部分的工具是Dos界面的,甚至SQLPlus也是, SQL Server是跟VB一样,全图形界面,很少见到DOS窗口。SQL Server中的企业管理器给用户提供一个全图形界面的集成管理控制台来集中管理多个服务器。Oracle也有自己的企业管理器,而且它的性能在某些方面甚至超过了SQL Server的企业管理器,但它安装较为困难。 \x0d\\x0d\Orcale数据库和SQL Server数据库那个更快?其实是一个很难答的问题,因为存在许多不定因素,包括处理类型、数据分布以及硬件基础设施等。 \x0d\\x0d\SQL Server 2000是一个具备完全Web支持的数据库产品,提供了可扩展标记语言核心支持以及Internet上和防火墙外进行查询的能力,具有可伸缩性、灵活性、扩充性好,而且价格便宜等特点,而Oracle则有着可靠安全性,速度比SQL Server快上百倍,但其价格在实施中却比SQL Server它高出了几百倍。 \x0d\\x0d\其实各行业考虑选择那种数据库,是由数据库的特点以及根据自己的业务需求和基础设施综合考虑来决定的。 \x0d\\x0d\oracle中有复合数据类型 sql server中没有 \x0d\声明方式:变量名 对象名%type \x0d\这里的变量类型可以是所有以存在的数据类型,具有依赖性 ,存储过程中用这种变量比较灵活,但效率应该会低些 \x0d\\x0d\oracle存储过程中借助cursor类型变量返回并访问记录集 sql server中我没用过类似功能 \x0d\\x0d\oracle里这么用:存储过程中边查询边给变量赋值 \x0d\select 某一列名 into 变量名 from table where ; \x0d\相当于oracle中的select 变量名=列
0条评论