Oracle 11g 基础教程
目录
-
第一部分:Oracle 11g 简介
(图片来源网络,侵删)- 1 什么是 Oracle 数据库?
- 2 什么是 Oracle 11g?
- 3 为什么学习 Oracle 11g?
- 4 Oracle 11g 的主要组件
-
第二部分:环境准备与安装
- 1 硬件与软件要求
- 2 下载 Oracle 11g 安装包
- 3 安装步骤概览 (以 Windows 为例)
-
第三部分:数据库基本概念
- 1 数据库、实例、表空间
- 2 数据文件、控制文件、重做日志文件
- 3 用户、表、数据行、数据列
- 4 SQL 语言简介
-
第四部分:SQL 基础操作 (PL/SQL Developer 工具)
- 1 连接到 Oracle 数据库
- 2 数据查询语言
- 3 数据操纵语言
- 4 数据定义语言
-
第五部分:数据库管理基础
(图片来源网络,侵删)- 1 启动和关闭数据库
- 2 用户与权限管理
- 3 备份与恢复简介
-
第六部分:进阶学习与资源
第一部分:Oracle 11g 简介
1 什么是 Oracle 数据库?
Oracle 数据库是由 Oracle Corporation(甲骨文公司)开发的一款关系型数据库管理系统,它是一个高度可靠、安全、可扩展的软件,用于存储、管理和检索数据,你可以把它想象成一个高度智能化的、电子化的超级文件柜,不仅能存放数据,还能保证数据不丢失、不被非法访问,并能高效地找到你需要的数据。
2 什么是 Oracle 11g?
"Oracle 11g" 是 Oracle 数据库的一个主要版本号。
- 11 是主版本号,代表第 11 代产品。
- g 是 "Grid Computing"(网格计算)的缩写,这是该版本的一个核心特性,旨在通过集群技术提供更高的可伸缩性和可用性。
3 为什么学习 Oracle 11g?
- 市场占有率高:在金融、电信、政府、大型企业等核心业务领域,Oracle 仍然占据主导地位。
- 功能强大且成熟:11g 版本非常稳定,功能全面,是许多企业仍在使用的生产环境版本。
- 学习曲线平滑:对于初学者来说,11g 的概念和操作相对经典,打好基础后,学习更新的版本(如 12c, 19c)会更容易。
- 职业发展需要:掌握 Oracle 数据库是数据库管理员、数据分析师、后端开发工程师等岗位的重要技能。
4 Oracle 11g 的主要组件
- Oracle Server (服务器):数据库管理的核心,包括数据库和实例。
- 数据库:物理存储,指硬盘上的数据文件、控制文件、日志文件等。
- 实例:内存结构和后台进程的总和,是 Oracle 数据库“活”的部分,负责管理物理数据库。
- *SQLPlus**:Oracle 提供的命令行工具,用于直接与数据库交互,执行 SQL 语句。
- PL/SQL:Oracle 对 SQL 语言的扩展,增加了过程化编程语言的特点(如变量、循环、条件判断),用于编写存储过程、函数和触发器。
- Oracle Enterprise Manager (OEM):基于 Web 的图形化管理控制台,提供强大的数据库监控、管理和调优功能。
第二部分:环境准备与安装
1 硬件与软件要求
- 操作系统:Windows Server 2003/2008 或 Red Hat Enterprise Linux 5/6,建议使用虚拟机(如 VMware, VirtualBox)进行安装,避免影响宿主机系统。
- 内存:至少 1GB,推荐 2GB 或以上。
- 硬盘空间:至少 5GB 的可用空间。
- CPU:1GHz 或以上。
2 下载 Oracle 11g 安装包
由于 Oracle 官网不再提供旧版本的下载,你可以通过以下途径获取:

- Oracle 官方旧版软件库:需要登录 Oracle 账户。
- 第三方镜像站点:如一些大学的开源软件镜像站。
- 注意:请确保从可信来源下载,避免文件损坏或被篡改。
安装包通常包含两个文件:
winx64_11gR2_database_1of2.zipwinx64_11gR2_database_2of2.zip
下载后,将它们解压到同一个文件夹中。
3 安装步骤概览 (以 Windows 为例)
- 以管理员身份运行:找到解压后的
setup.exe文件,右键选择“以管理员身份运行”。 - 配置安全更新:取消勾选 "我希望通过 My Oracle Support 接收安全更新...",点击“下一步”。
- 选择安装选项:选择“创建和配置数据库”,点击“下一步”。
- 系统类:选择“桌面类”,点击“下一步”。(简化安装,适合学习)
- 典型安装:
- Oracle 基目录:选择一个安装路径。
- Oracle 基础:自动生成。
- 软件位置:数据库软件的安装路径。
- 数据库标识符:全局数据库名,如
orcl。 - 管理口令:为
SYS,SYSTEM,SYSMAN等用户设置一个强密码。请务必记住! - 存储选项:选择“文件系统”。
- 数据库文件位置:选择数据库文件的存放路径。
- 恢复配置:取消勾选。
- 初始化参数:使用默认值。
- 数据库组件:使用默认值。
- 创建数据库:点击“下一步”。
- 先决条件检查:系统会检查环境,如果出现警告(如内存不足),可以忽略,点击“下一步”。
- 概要:确认安装信息无误后,点击“完成”。
- 安装:等待安装完成,这个过程可能需要 20-30 分钟。
- 配置:安装完成后,会自动进行配置。
- 完成:最后会弹出一个网页,显示数据库的配置信息,包括企业管理器的链接和登录信息。
第三部分:数据库基本概念
在开始操作前,理解这些核心概念至关重要。
- 数据库:物理上,是一系列操作系统文件(数据文件、日志文件等)的集合,逻辑上,是一个存放数据的仓库。
- 实例:一个 Oracle 实例由系统全局区和后台进程组成,当数据库启动时,Oracle 会在内存中分配 SGA,并启动一系列后台进程,这个组合就是实例,一个实例只能操作一个数据库,但一个数据库可以被多个实例打开(RAC 环境)。
- 表空间:数据库的逻辑存储单元,用于存储数据对象(如表、索引),一个数据库可以包含多个表空间,最常用的表空间是
SYSTEM(系统表空间)和USERS(用户表空间)。 - 数据文件:物理文件,对应一个表空间,存储表空间内的所有数据。
- 用户:数据库的访问者,拥有自己的权限和表空间,安装时会自动创建
SYS,SYSTEM等超级用户。 - 表:数据库中最基本的数据存储结构,由行和列组成,类似于 Excel 表格。
第四部分:SQL 基础操作 (PL/SQL Developer 工具)
虽然可以使用 SQL*Plus,但推荐使用图形化工具 PL/SQL Developer,它能让学习过程更直观。
1 连接到 Oracle 数据库
- 打开 PL/SQL Developer。
- 在登录界面,填写信息:
- Username:
system(或其他你创建的用户) - Password: 你在安装时设置的密码
- Database:
orcl(你的数据库名) - Connection Type:
Normal
- Username:
2 数据查询语言
SELECT 语句用于从数据库中检索数据。
-- 1. 查询所有列的所有数据 SELECT * FROM 表名; -- 2. 查询指定列的数据 SELECT 列名1, 列名2 FROM 表名; -- 3. 使用别名 SELECT 列名 AS "新名字" FROM 表名; -- 4. 使用 WHERE 子句进行条件过滤 SELECT * FROM 表名 WHERE 列名 = '值'; SELECT * FROM 表名 WHERE 列名 > 100; -- 5. 使用 AND 和 OR 组合条件 SELECT * FROM 表名 WHERE 条件1 AND 条件2; SELECT * FROM 表名 WHERE 条件1 OR 条件2; -- 6. 使用 ORDER BY 排序 SELECT * FROM 表名 ORDER BY 列名 ASC; -- ASC 升序 (默认) SELECT * FROM 表名 ORDER BY 列名 DESC; -- DESC 降序
3 数据操纵语言
DML 用于操作表中的数据。
-- 1. 插入数据 INSERT INTO 表名 (列名1, 列名2) VALUES (值1, 值2); -- 2. 更新数据 UPDATE 表名 SET 列名1 = '新值' WHERE 条件; -- 注意:一定要加 WHERE,否则会更新所有行! -- 3. 删除数据 DELETE FROM 表名 WHERE 条件; -- 注意:一定要加 WHERE,否则会删除所有行!
4 数据定义语言
DDL 用于定义或修改数据库的结构。
-- 1. 创建表
CREATE TABLE 表名 (
列名1 数据类型,
列名2 数据类型,
...
);
-- 常见数据类型:
-- VARCHAR2(n): 可变长度字符串
-- NUMBER(p, s): 数字, p为总位数, s为小数位数
-- DATE: 日期
-- CLOB: 大文本
-- 示例: 创建一个员工表
CREATE TABLE employees (
employee_id NUMBER(6),
first_name VARCHAR2(20),
last_name VARCHAR2(25),
hire_date DATE,
salary NUMBER(8, 2)
);
-- 2. 修改表 (添加列)
ALTER TABLE 表名 ADD (新列名 数据类型);
-- 3. 删除表
DROP TABLE 表名;
第五部分:数据库管理基础
1 启动和关闭数据库
*使用 SQLPlus (命令行)**
-
打开
cmd命令行窗口。 -
连接到 SQL*Plus:
sqlplus /nolog
-
以
sys用户登录,并具有sysdba权限:CONNECT / AS SYSDBA
-
启动数据库:
-- 启动到 NOMOUNT 状态 (仅启动实例,未加载数据文件) STARTUP NOMOUNT; -- 启动到 MOUNT 状态 (加载控制文件) STARTUP MOUNT; -- 启动到 OPEN 状态 (默认,加载所有文件,允许访问) STARTUP;
-
关闭数据库:
-- 正常关闭 (等待所有用户断开连接) SHUTDOWN NORMAL; -- 立即关闭 (不等待,未提交的事务会回滚) SHUTDOWN TRANSACTIONAL; -- 中止关闭 (立即断开所有用户,未提交的事务会丢失) SHUTDOWN ABORT;
2 用户与权限管理
-- 1. 创建用户 CREATE USER 用户名 IDENTIFIED BY 密码; -- 2. 授权 -- GRANT 权限名 TO 用户名; GRANT CONNECT, RESOURCE TO 用户名; -- CONNECT: 连接数据库, RESOURCE: 创建表等对象 -- 3. 授予所有权限 (谨慎使用) GRANT ALL PRIVILEGES TO 用户名; -- 4. 查看用户权限 SELECT * FROM DBA_TAB_PRIVS WHERE GRANTEE = '用户名'; -- 5. 撤销权限 REVOKE 权限名 FROM 用户名;
3 备份与恢复简介
- 备份:将数据库的数据和结构复制到其他位置,以防数据丢失。
- RMAN (Recovery Manager):Oracle 官方推荐的物理备份工具,功能强大。
- 导出/导入:使用
expdp和impdp命令进行逻辑备份,适合数据迁移和逻辑备份。
- 恢复:当数据库出现故障时,利用备份文件将数据库恢复到故障前的某个时间点。
对于初学者,了解概念即可,实际操作较为复杂。
第六部分:进阶学习与资源
进阶学习方向
- PL/SQL 编程:深入学习存储过程、函数、包、触发器。
- 性能调优:学习执行计划分析、索引优化、等待事件分析。
- 高可用性:学习 Data Guard (灾备) 和 RAC (集群)。
- 网络配置:学习监听器配置、本地命名和网络服务名。
推荐资源
- 官方文档:Oracle Database Documentation Library 是最权威的资料。
- 书籍:
- 《Oracle 11g 宝典》
- 《Oracle Database 11g SQL Fundamentals》
- 在线教程:
- W3Schools 的 SQL 教程 (基础语法)
- 菜鸟教程
- B站、慕课网等视频平台上的免费/付费 Oracle 课程。
- 社区:
- ITPUB:国内最专业的 Oracle 技术社区。
- Oracle 官方社区
本教程为您勾勒了 Oracle 11g 的学习蓝图,从理解基本概念开始,到安装配置,再到核心的 SQL 操作和基础管理,这是一个循序渐进的过程,最重要的环节是动手实践,请务必亲自安装数据库,并尝试创建表、插入数据、编写查询语句,祝您学习愉快!
