Oracle整理第一篇
Oracle发展历史
1977年6月,Larry Ellison与Bob Miner和Ed Oates在硅谷共同创办了一家名为软件开发实验室(Software Development Laboratories,SDL)的计算机公司(ORACLE公司的前身)。那个时候,32岁的Larry Ellison,这个读了三家大学都没能毕业的辍学生,还只是一个普通的软件工程师。公司创立之初,Miner是总裁,Oates为副总裁,而Ellison,因为一个合同的事情,还在另一家公司上班。没多久,第一位员工Bruce Scott(用过ORACLE数据库软件的人都知道有个Scott用户的吧?没错,就是这个Scott,至于Scott用户的密码Tiger,那是Scott养的猫的名字, Oracle也一直没有忘记她的第一位程序员)加盟进来,在Miner和Oates有些厌倦了那种合同式的开发工作后,他们决定开发通用软件,不过们还不知道自己能开发出来什么样的产品。Oates最先看到了埃德加·考特的那篇著名的论文连同其他几篇相关的文章并推荐Ellison和Miner也阅读一下。Ellison和Miner预见到数据库软件的巨大潜力(跟着IBM走,没错),于是,SDL开始策划构建可商用的关系型数据库管理系统(RDBMS)。
根据Ellison和Miner他们在前一家公司从事的一个由中央情报局投资的项目代码,他们把这个产品命名为ORACLE。因为他们相信,ORACLE(字典里的解释有“神谕, 预言”之意)是一切智慧的源泉。1979年,SDL更名为关系软件有限公司(Relational Software,Inc.,RSI),毕竟“软件开发实验室”不太像一个大公司的名字。1983年,为了突出公司的核心产品,RSI再次更名为ORACLE。Oracle从此正式走入人们的视野。
RSI在1979年的夏季发布了可用于DEC公司的PDP-11计算机上的商用ORACLE产品,这个数据库产品整合了比较完整的SQL实现,其中包括子查询、连接及其他特性。出于市场策略,公司宣称这是该产品的第二版,但却是实际上的第一版。这就是Oracle这种“要命”的市场策略,事实上,这种策略有时候也是非常成功的。
1983年3月,RSI发布了ORACLE第三版。Miner和Scott历尽艰辛用C语言重新写就这一版本。同样是1983年,IBM发布了姗姗来迟的Database 2(DB2),但只可在MVS上使用。
在开发第三版还没有结束的时候,Scott离开了ORACLE。当时用C语言改写ORACLE的压力很大,无休止的软件调试终于让Scott不堪重负,选择了一走了之。把剩下的重担交给了Miner一个人。在出售了自己的%4的股票之后,Scott 后来创建了Gupta公司(现更名为Centura Software)和PointBase公司,都是开发和数据库相关的产品。多年后有人问到他的%4的ORACLE股票的时候,Scott,这个曾经给ORACLE写出第一行代码的技术高手,也只能报以一笑了。如果能坚持下来,那是一笔几亿美金的财富。不过当时的Scott没有那么多的想法,他只是太累了。
很长一段时间里,公司研发由Miner独力承担。Miner视金钱如无物,为人低调,和Ellison的锋芒必露形成鲜明的对比。在公司里,大家一致认为他是老好人,他也深受员工爱戴。Ellison是公司的大脑,Miner则当之无愧的成为公司的心脏。他是个沉默的英雄,正如Steve Jobs背后的Steve Wozniak一样。
1984年10月,ORACLE发布了第4版产品。
1985年,ORACLE发布了5.0版。
那是在1985年,Ingres在加州大学伯克利分校诞生,主要的设计者是当时鼎鼎大名的Michael Stonebraker教授。可以说Ingres数据库软件是上个世纪80年代技术上最好的数据库,Ingres市场分额的快速增长已经给ORACLE早成了很大的压力。巧的是,这个时候,IBM公司再一次伸出“上帝之手”。
Ingres使用的是Stonebraker 发明的QUEL(Query Language))的查询技术,这和IBM的SQL大不相同。在某些地方QUEL甚至要优于SQL。IBM当时担心Ingres把QUEL变成标准会对自己不利。经过一番衡量,决定把自己的SQL提交给数据库标准委员会。而Stonebraker教授可不打算把QUEL提交给数据库标准委员会,学院派的他认为这麽做实际上是扼杀了创新精神。可以看出,学院派,大都会把事情搞杂。
ORACLE第6版于1988年发布。引入了行级锁(row-level locking)这个重要的特性,也就是说,执行写入的事务处理只锁定受影响的行,而不是整个表。这个版本引入了还算不上完善的PL/SQL(Procedural Language extension to SQL)语言。第6版还引入了联机热备份功能,使数据库能够在使用过程中创建联机的备份,这极大地增强了可用性。
ORACLE 第七版是ORACLE真正出色的产品,取得了巨大的成功。这个版本的出现真是好时机,当时Sybase公司的数据库已经占据了不少份额,ORACLE借助这一版本的成功,一具击退了咄咄逼人的Sybase。公司的销售人员这次算到了给用户兑现空头许诺的时候。公司经过两三年的治理,终于摆脱了种种麻烦,重新开始健康发展,销售额也从92年的15亿美元变为四年后的42亿美元。
1997年6月,ORACLE第八版发布。ORACLE8支持面向对象的开发及新的多媒体应用,这个版本也为支持Internet、网络计算等奠定了基础。同时这一版本开始具有同时处理大量用户和海量数据的特性。
1998年9月,ORACLE公司正式发布ORACLE 8i。“i”代表Internet,这一版本中添加了大量为支持Internet而设计的特性。这一版本为数据库用户提供了全方位的Java支持。ORACLE 8i成为第一个完全整合了本地Java运行时环境的数据库,用Java就可以编写ORACLE的存储过程。对,Java,只要是能够打击微软的武器,ORACLE都要派上用场。
在2001年6月的ORACLE OpenWorld大会中,ORACLE发布了ORACLE 9i。在ORACLE 9i的诸多新特性中,最重要的就是Real Application Clusters(RAC)了。说起ORACLE集群服务器,早在第五版的时候,ORACLE就开始开发ORACLE并行服务器(ORACLE Parallel Server ,OPS),并在以后的版本中逐渐的完善了其功能,不过,严格来说,尽管OPS算得上是个集群环境,但是并没有体现出集群技术应有的优点。
2003年9月8日,旧金山举办的ORACLE World大会上,Ellison宣布下一代数据库产品为“ORACLE 10g”。ORACLE应用服务器10g(ORACLE Application Server 10g)也将作为甲骨文公司下一代应用基础架构软件集成套件。“g”代表“grid ,网格”。这一版的最大的特性就是加入了网格计算的功能。(Oracle绝对是造概念的能手,只要是能引领出新的卖点,出些新概念,也是值得的)。
最近两年,Oracle先后又收购了People soft(103亿 ) , B E A ( 80 多 亿 ), BEA(80多亿 ),BEA(80多亿),还有Sibel之类的就不说了。通过收购,实力大增。
2007年11月,Oracle 11g正式发布,功能上大大加强。11g是甲骨文公司30年来发布的最重要的数据库版本,根据用户的需求实现了信息生命周期管理(Information Lifecycle Management)等多项创新。大幅提高了系统性能安全性,全新的Data Guard最大化了可用性,利用全新的高级数据压缩技术降低了数据存储的支出,明显缩短了应用程序测试环境部署及分析测试结果所花费的时间,增加了RFID Tag、DICOM医学图像、3D空间等重要数据类型的支持,加强了对Binary XML的支持和性能优化。
2013年6月26日,Oracle Database 12c版本正式发布,像之前10g, 11g里的g是代表grid,而12c里面的c是cloud,也就是代表云计算的意思.
Oracle系统服务
1.oracle安装完成后,系统中会增加几个和oracle相关的服务
2.OracleServiceXE服务不启动的话,就无法使用sqlplus登录到oracle数据库中
3.OracleXETNSListener服务不启动的话,就无法使用oracle自带管理系统登录到数据库中,之后也无法使用JDBC连接 到数据库中.
oracle自带管理系统登录地址: http://127.0.0.1:8080/apex/
前提: 1.正常成功安装了oracle 2.相关服务启动 3.8080端口没有被占用
登录用户名:system 登录密码:oracle(我的密码) 安装oracle软件的时候有一步让输入的密码
注1:使用其他用户名和密码也能登录,只不过是system用户的权利较大,可以做的操作多一些而已,例如可以创建新的用户 注2:你正常安装oracle之后可能会发现上面那个登录的地址无法访问(这种情况很少),这时候只能使用命令的方式来操作oracle了,上面那个管理系统只是提供了一个图形化界面的方式操作而已。
Oracle前言
一个认知
认知什么是oracle? oracle:商业运用第一的关系型数据库 实质:关系型数据库 了解oracle数据库发展历史(文档)
oracle8i 9i 10g 11g 12c不同字母代表的含义:
1998年9月,ORACLE公司正式发布ORACLE 8i。“i”代表Internet,这一版本中添加了大量为支持Internet而设计的特性;
2003年9月8日,ORACLE World大会上,“ORACLE 10g”发布,“g”代表“grid,网格”,这一版的最大的特性就是加入了网格计算的功能;
2013年6月26日,Oracle Database 12c版本正式发布, c是cloud,也就是代表云计算的意思。
二个概念
数据库:数据存储的仓库 60年代兴起,是计算机科学技术的一个重要分支。核心任务是管理数据,包括对数据分类、组织、编码、存储、检索和维护。 到现在经历了人工管理(1950之前)、文件系统(50年代后期到60年代中期)、数据库系统(60年代后期到现在)三个阶段。
关系型数据库(RDBMS):基于关系模型来组织数据的数据库,属于第二代数据库。
关系模型:用一个二维表,行(记录)和列(字段)的形式来保存数据;关系模型里面的关系 主要反映到以后学习的主外键。
例如:
表名 s_dept部门
列(字段) 部门编号id 部门名称name
行(记录) 1 研发部
2 市场部
3 人事部
员工表s_emp 记录所有员工信息
id name dept_id salary title
1 larry 1 15000 ceo
2 tom 1 13000 研发部经理
关系型数据库的简单理解是二维数据库,类似Excel表格,有行有列。这种数据库非高级,非性能最优,但应用最广泛,因为容易理解使用。
数据库系统发展历史:
第一代:层次和网状数据库
第二代:关系型数据库
第三代:对象型数据库(理论阶段,尚未大量应用)
具体信息可参阅 了解数据库发展历史(文档)。
关系型数据库优点:
容易理解,很贴近现实世界。
使用方便,SQL语句。(增删改查)
容易维护,丰富的完整性大大降低了数据冗余和数据不一致的概率。
关系完整性规则:
实体完整性 主键值唯一存在
参照完整性 外键值为空或取其他表中主键值
用户自定义完整性 符合应用场景中具体的约束条件
三个名词
sql: 结构化的查询语句,操作oracle数据库的语言 增删改查
select * from table_name;
sqlplus: oracle软件自带的可以输入sql,且将sql执行结果显示的终端的一个工具。 注意区分sql语句和sqlplus语句。
pl/sql: 程序化的sql语句,在sql语句的基础上加入一定的逻辑操作,如if for…,使之成为一个sql块,完成一定的功能。
四种对象
table:表格,由行和列组成,列又称字段,每一行内容为表格的一条完整的数据。 view: 视图,一张表或者多张表的部分或者完整的映射,好比表格照镜子,镜子里面的虚像就是view。
除去常见的table和view两种常用对象以外,oracle数据库还支持如下四种对象:
sequence: 序列
index: 索引,提高数据的访问效率
synonym: 同义词,方便对象的操作
program unit:程序单元,pl/sql操作的对象
五种分类
sql语句可以分为五大类:
DQL:数据查询 select
DML:数据操纵语言(行级操作语言) 操作的是表格当中一条一条的数据
insert, update, delete
DDL:数据定义语言(表级操作语言) 操作的内容为表格(对象)
create , alter, drop, truncate, rename
DTL:事务控制 commit, rollback, save point
DCL:权限控制语言 grant, revoke
Oracle整理第一篇相关推荐
- Oracle总结第一篇【基本SQL操作】
前言 在之前已经大概了解过Mysql数据库和学过相关的Oracle知识点,但是太久没用过Oracle了,就基本忘了-印象中就只有基本的SQL语句和相关一些概念-.写下本博文的原因就是记载着Oracle ...
- 《Oracle高性能SQL引擎剖析:SQL优化与调优机制详解》一第一篇 执行计划
第一篇 执行计划 执行计划是指示Oracle如何获取和过滤数据.产生最终结果集,是影响SQL语句执行性能的关键因素.我们在深入了解执行计划之前,首先需要知道执行计划是在什么时候产生的,以及如何让SQL ...
- oracle正整数集,Oracle 整理
[Oracle 整理]的更多相关文章 [Oracle整理]ORA-12705(字符集问题) 2017年5月11日 18:11 [Oracle整理]ORA-12705(字符集问题) 说明:本内容是工 ...
- Oracle总结第二篇【视图、索引、事务、用户权限、批量操作】
前言 在Oracle总结的第一篇中,我们已经总结了一些常用的SQL相关的知识点了-那么本篇主要总结关于Oralce视图.序列.事务的一些内容- 在数据库中,我们可以把各种的SQL语句分为四大类- (1 ...
- 研究生第一篇科研论文常犯问题总结
↑ 点击蓝字 关注视学算法 作者丨喻海良,中南大学教授,博士生导师 来源|http://blog.sciencenet.cn/blog-117889-1018759.html 极市导读 本文作者为中南 ...
- Webpack系列-第一篇基础杂记
系列文章 Webpack系列-第一篇基础杂记 Webpack系列-第二篇插件机制杂记 Webpack系列-第三篇流程杂记 前言 公司的前端项目基本都是用Webpack来做工程化的,而Webpack虽然 ...
- Spotify敏捷模式详解三部曲第一篇:研发团队
本文转自:Scrum中文网 引言 2018年4月,来自北欧瑞典的音乐流媒体公司.百亿美元独角兽Spotify创造了历史,它成为了当代上市公司当中,第一家通过"直接上市"的方式在美国 ...
- 深入浅出SQL Server Replication第一篇:走近Replication(上)
深入浅出SQL Server Replication第一篇:走近Replication(上) 对于很多的SQL Server DBA而言,Replication不是什么新鲜的事物了,也是大家常常说的& ...
- 国际化困境(第一篇)
(和我前一篇文章一样,这篇文章也需要读者动手写些程序,参与其中,实验过程可能需要反复重启电脑,另外最好准备一套英文Windows系统,哦,如果再有一套Windows Vista英文版,那再好不过,总之 ...
最新文章
- lvm讲解和磁盘故障案例
- python和c哪个适合入门-关于python和c语言学哪个好
- Redis 服务器管理相关命令
- ABAP从数据库中删除行
- 设置Tomcat字符编码UTF-8
- 数学 —— 巧用进制
- 【ROS问题】rqt_plot运行报错
- 火速拿来用!对比近 10,000 个 Python 开源项目发现最实用的 TOP34!
- JavaScript函数节流和函数防抖之间的区别
- 《高翔视觉slam十四讲》学习笔记 第七讲 视觉里程计
- 团队作业4——beta阶段冲刺4
- RCNN数字识别时训练数据集制作
- 【正点原子MP157连载】 第二十一章 DMA实验-摘自【正点原子】STM32MP1 M4裸机CubeIDE开发指南
- Windowsserver 2012R2 部署pxe启动安装windows系统
- 一个字由两个字节组成
- 请问苹果x是如何建文件夹_苹果手机怎么建文件夹
- 用Python实现一个商场管理系统(附源码)
- 基础通用版IPv6转换服务使用说明及设置示例
- 中国线上超市行业营销态势与投资盈利预测报告(2022-2027)
- Python爬知乎妹子都爱取啥名