Oracle培训教程 上海群雁信息技术有限公司
Oracle培训教程 Oracle教程结构 这个教程分两个部分讲解 1、数据库的概念 2、oracle数据库 下面开始我们的课程……
Oracle培训教程 数据库的概念 数据处理 数据处理是对各种类型的数据进行收集、整理、存储、分类、加工、检索、维护、统计和传播等一系列活动的总称。数据处理的目的是为了从大量的、原始的数据中抽取对人们有价值的信息,并以此作为行为和决策的依据。 数据库技术作为一种数据处理技术,就是研究在计算机环境下如何合理组织数据,有效管理数据和高效处理数据。 数据处理的核心问题是数据管理。随着计算机软、硬件技术的不断发展和计算机应用范围的不断拓宽,数据管理技术得到很大发展,经历了人工管理、文件系统和数据管理三个阶段。
数据管理技术的三个发展阶段 发展阶段 主要特征 人工管理阶段 1953 年- 1965 年 ①数据与程序彼此依赖,一组数据分别对应一组程序 Oracle培训教程 数据管理技术的三个发展阶段 发展阶段 主要特征 人工管理阶段 1953 年- 1965 年 ①数据与程序彼此依赖,一组数据分别对应一组程序 ②不同的应用程序之间不能共享数据,数据冗余量大 文件系统阶段 1965 年- 1970 年 ①数据与程序分开存储,相关数据组织成一种文件,由一个专门的文件管理系统实施统一管理。应用程序通过文件管理系统对数据文件中的数据进行加工处理。 ②数据与数据之间没有有机的联系,数据的通用性较差,冗余量大。 ③数据文件仍高度信赖于对应的程序,同一数据文件很难被不同的应用程序共享。 数据库管理阶段 1970 年至今 ①对所有的数据实行统一管理,供不同用户共享 ②数据文件之间可以建立关联关系,数据的冗余大减少 ③数据与应用程序之间完全独立,减少了应用程序的开发和维护代价
Oracle培训教程 数据库的概念 数据库系统 数据库( DataBase )是指以一定的组织方式存储在计算机存储设备上,能为多个用户所共享的与应用程序彼此独立的相关数据的集合。它不仅包括描述事物的数据本身,而且包括相关事物之间的联系。对数据库中数据的增加、删除、修改和检索等操作,由数据库管理系统进行统一的控制。 数据库管理系统( DataBase Management System, 简称 DBMS ) 是为数据库的建立、使用和维护而配置的软件,它提供了安全性和完整性等统一控制机制,方便用户管理和存取大量的数据资源。 在数据库管理系统的支持下,数据完全独立于应用程序,并且能被多个用户或程序共享,其关系如下图。
Oracle培训教程
常用数据库 1. DB2 作为关系数据库领域的开拓者和领航人, IBM在1983年推出DB2。 2. Oracle Oracle公司是最早开发关系数据库的厂商之一,目前Oracle关系数据库产品的市场占有率名列前茅。 3. Sybase Sybase首先提出Client/Server 数据库体系结构的思想,并率先在Sybase SQLServer 中实现。主要应用在电信和银行。 4. SQL Server 微软使用Sybase的技术开发的关系型数据库。 5. mySQL mySQL是一个小型关系型数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。 6. Access 数据库 美国Microsoft公司于1994年推出的典型的新一代桌面数据库管理系统。
Oracle培训教程 Oracle介绍 oracle是殷墟(Yin Xu)出土的甲骨文(oracle bone inscriptions)的英文翻译的第一个单词,在英语里是“神谕”的意思。Oracle是世界领先的信息管理软件开发商,因其复杂的关系数据库产品而闻名。 Oracle数据库产品为财富排行榜上的前1000家公司所采用,许多大型网站也选用了Oracle系统。 1989年Oracle公司正式进入中国市场,成为第一家进入中国的世界软件巨头。
Oracle 与 SQL Server比较 1.Oracle的稳定性要比Sql server好。 2.Oracle数据导入/导出工具Data Pump Export(数据泵),功能比Sqlserver的Bcp功能强大。 3.Oracle的安全机制比Sql server好。 4.Sql server的易用性和友好性方面要比Oracle好。 5.在处理大数据方面Oracle会更稳定一些。 6.处理速度方面比Oracle快一些
Oracle培训目录 1、SQL语句 2、oracle基本概念 3、oracle的存储结构 4、数据库的启动与关闭
Oracle培训教程 SQL语句 SQL分类: DDL—数据定义语言(Create,Alter,Drop) DML—数据操纵语言(Select,Delete,Update,Insert) DCL—数据控制语言(COMMIT,ROLLBACK) 简要介绍基础语句: 创建新表 create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..) 删除新表drop table tabname 增加一个列 Alter table tabname add column col type
Oracle培训教程 SQL语句 几个简单的基本的sql语句 选择:select * from table1 where 范围 插入:insert into table1(field1,field2) values(value1,value2) 删除:delete from table1 where 范围 更新:update table1 set field1=value1 where 范围 查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料! 排序:select * from table1 order by field1,field2 [desc] 总数:select count as totalcount from table1 求和:select sum(field1) as sumvalue from table1 平均:select avg(field1) as avgvalue from table1 最大:select max(field1) as maxvalue from table1 最小:select min(field1) as minvalue from table1
SQL事例语句 创建表 create table oratest (id1 int, id2 int, id3 char(20)); Oracle培训教程 SQL事例语句 创建表 create table oratest (id1 int, id2 int, id3 char(20)); 插入数据 Insert into oratest(id1,id2,id3) values (1,2,3); 查询数据 Select * from oratest 删除数据 delete from oratest where id3=3;
oracle基本概念 1、oracle实例(oracle instance) 2、数据字典(Data Dictionary)
Oracle实例 ORACLE 实例:包括内存结构(System Global Area(SGA)) 与后台进程(Background Process)称为数据库的实例。 ORACLE 数据库——物理操作系统文件的集合。一系列物理 文件的集合(数据文件,控制文件,联机日志,参数文件等) 可以一个或者多 个实例对应一个 数据库。(这里 主要是集群应用) 实例一 数据库 实例二 实例三
2、数据字典(Data Dictionary) Oracle培训教程 2、数据字典(Data Dictionary) 数据字典是oracle数据库的核心组成部分之一,它由一系列 的表和视图组成,这些表和视图与平常我们使用的表和视图 没有什么区别,唯一的区别是这些表和视图是创建数据库时 由oracle自动创建,自动维护,我们只能以只读的方式访问 数据字典。
数据字典的查询 数据字典的查询事例 查看用户下所有的表 查看某表的创建时间 查看某表的大小 Oracle培训教程 数据字典的查询 数据字典的查询事例 查看用户下所有的表 SQL>select * from user_tables; 查看某表的创建时间 SQL>select object_name,created from user_objects Where object_name=upper('&table_name'); 查看某表的大小 SQL>select sum(bytes)/(1024*1024) as "size(M)" from user_segments where segment_name=upper('&table_name');
Oracle存储结构 Oracle存储结构分物理结构和逻辑结构 ·物理结构: 一个数据库的物理结构由数据文件(Datafiles)、联机日志文 件(Online Redo Logs)、控制文件(Control Files) ·数据文件: 数据库中的表、索引等数据,物理上存放在数据文件中;一个数据文件由多个操作系统块(OS Block)组成; Datafiles OS Block OS Block OS Block OS Block OS Block
Oracle培训教程 Oracle存储结构 ·联机日志文件: 它用于记录用户对数据库的改变,即用户的每一个更改操作的记录。如果数据库意外(如:突然断电)导致内存中的数据没有及时写到数据文件中,下次数据库启动时,oracle会从联机日志文件中读取丢失的数据,然后把这些数据写到数据文件中。 LGWR(日志书写进程):负责把日志条目写入联机日志文件中。 要更改数据库的操作 LGWR 日志组 日志组 日志组 日志轮询写入
Oracle存储结构 ·控制文件: 控制文件存放数据库的物理结构信息,这些信息包括: 数据库的名字、数据文件和联机日志文件的名称及位置等。 ·控制文件的应用: 启动数据库的时候,oracle会先找到控制文件,然后打开控 制文件,根据控制文件中的数据文件和联机日志文件的信息 打开数据库。
Oracle存储结构 ·参数文件 用于存放实例和数据库的参数,这些参数用于指定控制文件 的位置、联机日志的位置及控制内存的分配等。 ·归档日志文件 ·警报文件 ·跟踪文件 ·备份文件
Oracle存储结构 ·逻辑结构 Oracle存储的逻辑结构由数据块(Data Block)、区(Extent)、 段(Segment)、表空间(Tablespace) ·块是最基本的单元,块组成区,区组成段,段组成表空间, 表空间组成数据库。 数据库(DB) 表空间1 表空间2 段1 段2 段3 区1 区2 区3 块1 块2 块3
Oracle培训教程 数据库的启动与关闭 了解ORACLE的启动过程很关键,对数据库维护尤其重要,oracle服务一定要先开启动,不然的话,在SQLPLUS下怎么操作基本都没有用。 1、启动实例 startup nomount:读取参数文件,分配SGA, 启动后台进程。 2、安装数据库 startup mount 实例与数据库对应,数据库仍 关闭,依据参数文件中的control_files,读取并打开控制文件. 3、打开数据库 startup 根据控制文件,找到数据文件和日志 文件,数据库被打开,此时用户可以操作数据库. 所以基本上是四个状态:shutdown->nomount->mount->open
启动和关闭Oracle数据库过程图。 mount nomount open shutdown 关机 开机 读所有文件 读控制文件 连上数据库,但未打开 (仅sys用户可以使用) open 关机 mount 读所有文件 nomount 未连上数据库 读控制文件 读参数文件init.ora shutdown 开机
数据库的启动与关闭命令 启动命令 startup[nomount|mount|open][force][pfile=filename] Oracle培训教程 数据库的启动与关闭命令 启动命令 startup[nomount|mount|open][force][pfile=filename] 参数说明: nomount:只启动实例 mount:启动实例,并装载数据库 open:启动实例,装载并打开数据库。 force:终止实例,并重新启动数据库。(默认选项) pfile:指定非默认参数文件名。
数据库的启动与关闭命令 关闭命令 shutdown [normal|transactional|immediate|abort] 参数说明: Oracle培训教程 数据库的启动与关闭命令 关闭命令 shutdown [normal|transactional|immediate|abort] 参数说明: normal:等待用户断开已存在连接,系统发出检查点,然后 在同步数据文件、控制文件和重做日志文件之后关闭(默认选 项) transactional:等待客户端结束事务之后,自动断开用户连 接,然后再执行normal。 immediate:取消当前所有sql语句,回退所有未完成事务, 然后自动断开,再执行normal。 abort:终止所有sql语句,立即终止实例。不会发出检查 点,所以也就不会去同步数据文件、控制文件和重做日志文 件。 可能会有数据丢失。
数据库的启动与关闭命令 启动步骤命令:(注意$代表shell命令提示符) $ su - oracle $ sqlplus “as sysdba” 输入用户名,密码 sql> startup (一般不需要加参数,只要设置好环境变量) sql> quit (退出sql模式) $ lsnrctl start (启动监听器) 关闭oracle $ lsnrctl stop(关闭监听器,在这之前,应该先关闭应用程序) sql>shutdown
oracle网络体系结构 在oracle的网络体系结构中,有3钟类型的网络结构: 单层网络结构、两层网络结构、多层网络结构 目前,多层网络结构已经主导整个软件的开发市场,其优点: 1、客户端无需安装额外的软件; 2、应用服务器分担了数据库服务器的负载; 3、客户端不在直接访问数据库,加强了数据库安全性。 客户端 应用服务器 数据库服务器
oracle网络体系结构 Oracle Net是oracle的网络组件它能够建立客户端或中间服 务器到数据库服务器的连接,一旦建立好网络连接, Oracle Net就可以在客户端和服务器之间传输数据。 在服务器端,Oracle Net包括一个活动的进程叫监视器(listener) 客户端相应的Oracle Net配置叫连接描述符(connect identifier) 又叫网络服务名 客户端 Oracle Net 数据库服务器 Oracle Net
oracle网络体系结构 监视器(listener) 监听器负责同步外部进程与数据库服务器之间的连接,如果 没有监听器,客户端将无法连接到数据库。注意:监听器只 负责建立客户端与服务器的连接,不负责传输数据。 监听器 客户端 数据库服务器 2 1 3
oracle网络体系结构 监听器启动的时候会读取一个listener.ora文件,这个文件指 定监听器所在的主机、监听器监听的实例名,监听端口号、 监听的协议等。 客户端网络服务名存储在 $ORACLE_HOME/network/admin/tnsnames.ora中,配置如下 test = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.1)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (oracle_sid = orcl) ) ) 数据库服务器IP 数据库服务器端口
oracle客户端工具的使用 在开启数据库、监听器并配置好tnsnames.ora后,我们就可 以使用工具连接数据库了!(如果之间的都没有报错,运行 到这一步有点小兴奋吧) Oracle自带的是SQL*Plus 我们常用的是PL/SQL Developer 一会我们会安排大家实际连接数据库操作,加深大家的印象。
oracle的备份与恢复 数据库最重要的是数据,而备份是必不可少,做好备份才能 应对各种异常情况的发生。 备份分类: (1)逻辑备份 用Export/Import 实用工具 (2)物理备份 操作系统下的备份 归档方式 不关闭database状态 不归档方式 关闭database后,把 物理文件进行备份 (通过cp、tar命令)
Oracle其他应用 ·OEM(oracle 企业管理器):是通过网页形式管理oracle数 据库,方便初学者的使用。 打开浏览器输入http://hostname:5500/em 服务器端该服务的启动命令: Emctl start console · RAC (real application clusters 真正应用集群)是Oracle数据 库支持网格计算环境的核心技术。它的出现解决了传统数据 库应用中面临的一个重要问题:高性能、高可伸缩性与低价 格之间的矛盾!
Oracle培训教程 END