oracle10g教程从入门到精通
- 格式:doc
- 大小:989.50 KB
- 文档页数:83
1.2.2安装Oracle Database 10g1.2.2安装Oracle Database 10g安装前需要做以下准备工作:1)仔细阅读联机文档,确保当前安装环境能够满足安装需求。
2)明确是服务器端还是客户机端的安装。
两者的安装内容是不同的。
3)以管理员的身份登录到要安装Oracle Database的计算机。
如果要在主域控制器(PDC)或备份域控制器(BDC)安装,则需要以域管理员组成员的身份登录。
4)如果系统曾安装过Oracle,则卸载Oracle_Home环境变量。
具体卸载方法参见本章“卸载Oracle”。
5)若当前已经安装了一个Oracle并想重新安装Oracle,则要停止所有的Oracle服务。
操作步骤是:打开Windows系统的“控制面板”→“管理工具”→“服务”,停止以“Oracle”开头的所有服务。
否则,在安装Oracle过程中将出现错误信息。
6)为了保证系统安装顺利完成,建议将Oracle Database 10g的安装光盘全部复制到硬盘的一个目录下。
如:D:\source_code\10201_database_win32\database。
单击F:\source_code\10201_database_win32\database\setup.exe即可开始安装。
注意Oracle Database 10g在启动时会自动检测系统的环境是否满足安装要求,如果不满足,则拒绝安装;如果满足条件,则创建安装文件并继续安装。
安装步骤如下:1)单击setup.exe启动安装程序后,系统默认是“基本安装”,并可根据实际确定是否创建启动数据库,如图1-1所示。
集”选项来改变。
注意在字符集的选择上要特别注意,应选择适合应用环境的字符集。
在实际应用中,有时会由于Oracle数据库选择的字符集与相关系统的字符集不一致,或前端应用程序开发工具选择的字符集与后台Oracle数据库服务器的字符集不同,造成数据通信或显示时出现乱码现象。
Oracle 10g 培训课程:课程内容:一、Oracle体系结构1、内存结构●理解系统全局区(SGA)●数据库高速缓存区●共享池●重做日志缓存区●大缓存池●Java池2、文件结构●数据文件(DBF)●重做日志文件●归档日志文件●控制文件●初始化参数文件●口令文件3、进程结构●Database Writer(DBWR)●Log Writer(LGWR)●System Monitor(SMON)●Process Monitor(PMON)●Checkpoint(CKPT)●Archiver(ARC0)4、安装Oracle二、SQL1、SQL语句的方式2、基本的SQL Select语句3、过滤和排序4、单行函数5、多表查询●内部连接●左外连接、右外连接和全外连接●两张以上表的连接●交叉连接●自连接6、组函数7、子查询8、利用变量交互查询●数据操纵●插入记录●更改数据●删除记录●合并记录9、创建和管理表10、约束介绍11、创建和管理视图12、创建和管理序列13、创建和管理索引14、创建和管理同义词15、控制用户访问●创建用户●系统权限●对象权限●角色●创建和管理数据库链接三、Oracle Database 10g 管理I1、安装Oracle Database 10G软件●确定系统要求●使用最佳的灵活的体系结构●使用Oracle Universal Installer 安装软件2、创建Oracle 数据库●描述Oracle 数据库体系结构●了解例程体系结构●使用管理框架●使用Database Creation Assistant3、数据库接口●使用结构化查询语言(SQL)●使用过程语言/结构化查询语言(PL/SQL)●使用Java●使用Oracle C++ 调用接口(OCCI)4、控制数据库●启动和停止代理●启动和停止Enterprise Manager 数据库控制台●启动和停止监听程序●启动和关闭数据库5、存储结构●定义表空间和数据文件的用途●创建表空间\ 管理表空间●获取表空间信息●使用Oracle Managed Files (OMF) 创建和管理表空间6、管理用户●创建和管理数据库用户账户●创建和管理职责●授予权限和撤消权限●控制用户对资源的使用7、管理模式对象●创建和修改表●定义约束条件●查看表属性\表内容●创建索引和视图8、管理数据●通过SQL 处理数据●使用导入\使用导出●使用SQL Loader9、PL/SQL●确定PL/SQL 对象●了解触发器和触发事件●确定影响PL/SQL 性能的配置选项10、Oracle 数据库安全性●应用最少权限原则●管理默认用户账户●实施标准口令保护功能●跟踪数据库活动11、Oracle Net Services●了解Oracle Net 概念●使用Oracle Net Manager 创建和配置监听程序●使用监听程序控制实用程序来控制Oracle Net Listener ●使用Oracle Net Manager 配置客户端和中间层连接●使用TNSPING 测试Oracle Net 的连接性12、Oracle 共享服务器●了解何时使用Oracle 共享服务器●配置Oracle 共享服务器●监控Oracle 共享服务器13、性能监控●排除无效和不可用的对象中的故障●收集优化程序统计数据●查看性能指标●对性能问题做出反应14、积极维护:目标●设置警告和重要预警阈值●收集和使用基准指标●使用优化和诊断Advisor●使用自动数据库诊断监控程序(ADDM)●管理自动工作量资料档案库15、监控和管理撤消●配置撤消保留\ 保障撤消保留●使用撤消Advisor16、监控和解决锁冲突●检测和解决锁冲突●管理死锁17、备份和恢复的概念●描述数据库备份、还原和恢复的基本概念●列出Oracle 数据库中可能出现的错误类型●描述优化例程恢复的方法●确定检查点、重做日志文件和归档日志文件的重要性●配置ARCHIVELOG 模式18、数据库备份●数据库备份●在不关闭数据库的情况下进行备份●创建增量备份●自动数据库备份●监控快速恢复区19、数据库恢复●从控制文件丢失中恢复●从重做日志文件丢失中恢复●从数据文件丢失中恢复四、Oracle Database 10g 管理II1、使用全球化支持●编码方案●数据库字符集和国家字符集,以及客户端与服务器字符集之间的转换●带有时区的日期时间●指定基于语言的行为●区分大小写和重音的排序●语言比较、排序和索引支持●Oracle Locale Builder●确定和更改默认的NLS 设置,并在SQL 函数中使用NLS 参数2、确保Oracle 监听程序的安全性●使用Net Manager 和lsnrctl 实用程序设置监听程序口令●控制数据库访问●Oracle Net Services 外部过程●EXTPROC 代理概览●PL/SQL 调用C 语言外部过程●修改外部过程调用的配置●删除默认的EXTPROC 条目和监听程序服务●为外部过程调用配置专用监听程序3、启用分布式事务处理●Oracle Net Services 复习●连接到Oracle 服务器●客户端应用程序与Oracle 服务器的可连接性●服务器之间的可连接性●数据库链接●分布式查询和远程查询●分布式事务处理和远程事务处理●未决事务处理4、配置Recovery Manager●Recovery Manager 的功能及其组件●介质管理●使用RMAN 的快速恢复区●RMAN 的连接类型和其它RMAN 命令行参数●使用EM 配置RMAN 的设置●通道分配和控制选项●在默认的NOCATALOG 模式下使用Recovery Manager 与目标数据库连接●显示当前的RMAN 配置设置,并为RMAN 配置永久性设置5、使用Recovery Manager●RMAN 命令概览●BACKUP 命令●备份约束和选项●并行备份集\ 压缩备份●备份和映像副本的标记●备份归档的重做日志文件●复制整个数据库6、诊断来源●诊断文件●查看近期预警日志条目●预警模型结构●使用EM 和预警日志监控配置来查看预警●编辑阈值●指定跟踪文件的位置,并控制跟踪文件大小和写入操作●使用EM 启用和查看SQL 跟踪●设置并监控服务器生成的预警7、从非关键性数据丢失中恢复●非关键性文件恢复●创建新的临时表空间\新的控制文件●控制文件自动备份●重新创建重做日志文件●恢复索引表空间●用户管理的恢复和服务器管理的恢复:RESTORE 和RECOVER●恢复丢失的联机重做日志成员8、不完全恢复●不完全恢复:概念、类型和最佳方案●使用RECOVER 进行不完全恢复●UNTIL TIME、UNTIL SEQUENCE 和基于取消的恢复●使用RMAN 进行不完全恢复并记录预警日志●使用EM 进行不完全恢复●从用户失败中进行传统恢复●使用RMAN 进行时间点恢复●使用数据库控制台恢复数据库9、闪回数据库●闪回数据库概览和注意事项●闪回技术的优点●闪回数据库结构●配置并监控闪回数据库和快速恢复区●备份快速恢复区●从闪回数据库中排除表空间●使用闪回数据库SQL 接口和EM 数据库控制台●用于管理和监控闪回数据库的字典视图10、从用户错误中恢复●闪回时间导航●回收站- 还原对象、回收空间和回避●查询已被删除的表●闪回版本查询EM 接口和语法●查询DBA_TRANSACTION_QUERY●回退闪回表操作●保障撤消保留●SCN 和时间映射增强11、处理数据库损坏●块损坏症状●DBVERIFY 实用程序●初始化参数DB_BLOCK_CHECKING●DBMS_REPAIR 程序包●ANALYZE 和BLOCKRECOVER 命令●RMAN BMR 接口●检测并处理数据库损坏情况●使用RMAN 修复受损块12、优化Oracle 数据库●指导框架概览●人工调用ADDM●SQL 优化、SQL 访问、内存、段和撤消Advisor●访问ASM 例程●DBCA 和存储选项●将数据库迁移至ASM●使用ADDM 积极优化数据库●设置ASM 例程13、实施物化图●物化图\ 物化图日志\ 主键物化图\ 创建物化图●可更新的物化图、监控物化图刷新●刷新作业错误、其它分布式数据技术14、管理资源●数据库资源管理器概念和配置●使用子计划限制CPU 利用率●活动会话池机制●自动切换用户组和自适应用户组映射●创建新的资源计划并使用EM 接口与资源管理器连接●资源计划的资源分配方法●创建资源用户组并为其分配用户和资源分配方法●为例程设置资源计划并分配资源管理器权限15、使用计划程序自动执行任务●创建计划程序作业并为计划程序组件设置权限●日历表达式●使用EM 创建程序●高级计划程序概念●创建作业类和窗口,并确定作业在窗口中的优先级●查看作业执行详细资料并管理作业日志●创建可运行数据库之外的程序的作业●创建和更改使用程序和计划的作业,并观察作业行为的更改情况16、高级工具和技术●使用SQL 生成脚本\ PL/SQL 过程●使用本地动态SQL●EXECUTE IMMEDIATE 语句●外部表●检索用户上下文属性●可恢复的语句\ 恢复可恢复的语句。
Oracle10g数据库培训Oracle10g数据库培训 (1)第一章数据库的安装与卸载 (4)1.1数据库的数据模型 (4)1.1.1数据结构 (4)1.1.2 数据操作 (4)1.1.3数据完整性约束 (4)1.2 Oracle数据库简介 (4)1.2.1Oracle10g的产品构成 (4)1.2.2Oracle 10g数据库的新特性 (5)1.2.3Oracle 10g for Windows XP的安装 (6)1.3配置网络 (6)1.3.1监听程序配置 (6)1.3.2网络服务名配置 (8)第二章体系结构 (9)2.1物理存储结构 (9)2.1.1数据文件 (9)2.1.2控制文件 (9)2.1.3参数文件 (10)2.1.4日志文件 (10)2.1.5 其他文件 (10)2.2逻辑存储结构 (11)2.2.1表空间 (11)2.2.2段 (11)2.2.3区间 (11)2.2.4数据块 (11)2.3内存结构 (12)2.3.1SGA (12)2.3.2PGA (12)2.4后台进程 (12)2.5Oracle实例 (13)第三章管理数据库 (15)3.1创建数据库 (15)3.1.1使用DBCA创建数据库 (15)3.1.2使用命令方式创建数据库 (15)3.2启动和关闭数据库 (15)3.2.1启动数据库 (15)3.2.2关闭数据库 (16)3.3删除数据库 (17)3.3.1使用DBCA删除数据库 (17)3.3.2使用命令方式删除数据库 (17)3.4数据字典 (17)3.4.1数据字典表 (17)3.4.2动态性能视图 (18)第四章管理数据 (19)4.1SQL*Plus (19)4.1.1启动和退出SQL*Plus (19)4.1.2交互式命令 (19)4.1.3编辑命令 (20)4.1.4报表命令(格式化输出) (21)4.2SQL语言基础 (21)4.2.1SQL概述 (21)4.2.2SQL语句使用详解 (22)4.2.3事务控制命令 (22)第五章存储管理 (24)5.1表空间 (24)5.1.1创建表空间 (24)5.1.2管理表空间 (25)5.1.3表空间的联机和脱机 (26)5.2数据文件 (26)5.2.1添加数据文件 (27)5.2.2 编辑数据文件的属性 (27)5.2.3数据文件的联机和脱机 (27)5.3临时表空间 (28)5.4日志文件 (28)5.4.1日志切换 (29)5.4.2设置数据库为归档模式 (30)第六章对象管理 (32)6.1表管理 (32)6.1.1表简介 (32)6.1.2创建表 (32)6.1.3将普通表转变为分区表 (33)6.2视图管理 (34)6.2.1视图简介 (34)6.2.2创建视图 (35)6.3索引管理 (35)6.4同义词管理 (35)6.4.1同义词简介 (35)6.4.2创建同义词 (36)6.4.3通过私有同义词访问其他模式中的对象 (36)6.4.4删除同义词 (37)第七章Oracle安全管理 (38)7.1用户管理 (38)7.1.1创建用户 (38)7.1.2修改用户 (38)7.1.3删除用户 (38)7.2权限管理 (39)7.2.1系统权限 (39)7.2.2对象权限 (40)7.3角色管理 (40)7.3.1系统预定义角色 (40)7.3.2用户自定义角色 (41)7.3.3为角色授予和撤销权限 (41)7.4概要文件管理 (41)7.4.1创建概要文件 (42)7.4.2将概要文件分配给用户 (42)7.5审计管理 (42)第八章备份和恢复 (46)8.1备份与恢复概述 (46)8.1.1备份与恢复的内容 (46)8.1.2数据库备份的分类 (46)8.2脱机备份和恢复 (47)8.2.1脱机备份 (47)8.2.2脱机恢复 (47)8.3联机备份和恢复 (47)8.4逻辑备份(导出和导入) (47)8.4.1Exp命令实现导出 (47)8.4.2IMP命令实现导入 (48)8.5数据泵技术 (49)8.5.1用EXPDP命令实现导出 (50)8.5.2用IMPDP命令实现导入 (50)8.6恢复管理器(RMAN) (50)8.7闪回技术 (51)8.7.1闪回简介 (51)8.7.2闪回数据库 (51)8.7.3闪回删除 (54)第一章数据库的安装与卸载1.1数据库的数据模型数据在数据库系统中以数据模型的形式来表现。
一:Oracle认证,与其它数据库比较,安装Oracle安装会自动的生成sys用户和system用户:(1)sys用户是超级用户,具有最高权限,具有sysdba角色,有create database的权限,该用户默认的密码是change_on_install(2)system用户是管理操作员,权限也很大。
具有sysoper角色,没有create database的权限,默认的密码是manager(3)一般讲,对数据库维护,使用system用户登录就可以拉也就是说sys和system这两个用户最大的区别是在于有没有create database的权限。
权限管理添加用户(随着用户的创建,自动产生与用户同名的schema)CREATE USER "TESTER" PROFILE "DEFAULT" IDENTIFIED BY "TESTER" DEFAULT TABLESPACE "TESTDA TA" TEMPORARY TABLESPACE "TESTTEMP" ACCOUNT UNLOCK;赋权(说实话,这些权限是开发中使用的权限,如果用户生产环境,请自行对于用户创建相应的系统权限)据说生产环境下,只是connect resource这样的角色就可以了。
GRANT "CONNECT" TO "TESTER";GRANT "RESOURCE" TO "TESTER";GRANT "DBA" TO "TESTER";GRANT "EXP_FULL_DATABASE" TO "TESTER";GRANT "IMP_FULL_DATABASE" TO "TESTER";删除用户:例如创建了一个用户A,要删除它可以这样做connect sys/密码as sysdba;drop user A cascade;//就这样用户就被删除了用户修改密码,解锁ALTER USER "SCOTT" IDENTIFIED BY "*******"ALTER USER "SCOTT" ACCOUNT UNLOCK1.查看所有用户:select * from dba_user;select * from all_users;select * from user_users;2.查看用户系统权限:select * from dba_sys_privs;select * from all_sys_privs;select * from user_sys_privs;3.查看用户对象权限:select * from dba_tab_privs;select * from all_tab_privs;select * from user_tab_privs;4.查看所有角色:select * from dba_roles;5.查看用户所拥有的角色:select * from dba_role_privs;select * from user_role_privs;Oracle中新建用户名连接ORACLE数据库:1、在Oracle Database Assistant中建立自己的数据库;2、在Oracle Net8 Easy config中建立连接与自己的数据库的连接,取一个service名,IP:为本地IP 127.0.0.1,database sid为你所建立的数据库的SID,用户名为:system,密码:manager或是自己设的密码;3、在SQLPLUS中连接自己的数据库,用户名为:system,密码:manager或是自己设的密码,tom:你刚建立的service名.4、显示当前连接用户:show user;5、新建用户并授权:sql>create user tom identified by 密码;sql> grant connect,resource to tom;//授权注:授权还有:create any procedure,select any dictionary(登陆oem需要),select any table等.6、在sqlplus中用刚建立的用户:tom/密码,连接;7、建立表空间。
韩顺平—玩转oracle视频教程笔记一:Oracle认证,与其它数据库比较,安装Oracle安装会自动的生成sys用户和system用户:(1)sys用户是超级用户,具有最高权限,具有sysdba角色,有create database的权限,该用户默认的密码是change_on_install(2)system用户是管理操作员,权限也很大。
具有sysoper角色,没有create database的权限,默认的密码是manager(3)一般讲,对数据库维护,使用system用户登录就可以拉也就是说sys和system这两个用户最大的区别是在于有没有create database的权限。
二: Oracle的基本使用--基本命令sql*plus的常用命令连接命令1.conn[ect]用法:conn 用户名/密码@网络服务名[as sysdba/sysoper]当用特权用户身份连接时,必须带上as sysdba或是as sysoper2.disc[onnect]说明: 该命令用来断开与当前数据库的连接3.psssw[ord]说明: 该命令用于修改用户的密码,如果要想修改其它用户的密码,需要用sys/system登录。
4.show user说明: 显示当前用户名5.exit说明: 该命令会断开与数据库的连接,同时会退出sql*plus文件操作命令1.start和@说明: 运行sql脚本案例: sql>@ d:\a.sql或是sql>start d:\a.sql2.edit说明: 该命令可以编辑指定的sql脚本案例: sql>edit d:\a.sql,这样会把d:\a.sql这个文件打开3.spool说明: 该命令可以将sql*plus屏幕上的内容输出到指定文件中去。
案例: sql>spool d:\b.sql 并输入 sql>spool off交互式命令1.&说明:可以替代变量,而该变量在执行时,需要用户输入。
select * from emp where job='&job';2.edit说明:该命令可以编辑指定的sql脚本案例:SQL>edit d:\a.sql3.spool说明:该命令可以将sql*plus屏幕上的内容输出到指定文件中去。
spool d:\b.sql 并输入 spool off显示和设置环境变量概述:可以用来控制输出的各种格式,set show如果希望永久的保存相关的设置,可以去修改glogin.sql脚本1.linesize说明:设置显示行的宽度,默认是80个字符show linesizeset linesize 902.pagesize说明:设置每页显示的行数目,默认是14用法和linesize一样至于其它环境参数的使用也是大同小异三:oracle用户管理oracle用户的管理创建用户概述:在oracle中要创建一个新的用户使用create user语句,一般是具有dba(数据库管理员)的权限才能使用。
create user 用户名identified by 密码; (oracle有个毛病,密码必须以字母开头,如果以字母开头,它不会创建用户)给用户修改密码概述:如果给自己修改密码可以直接使用password 用户名如果给别人修改密码则需要具有dba的权限,或是拥有alter user的系统权限SQL> alter user 用户名identified by 新密码删除用户概述:一般以dba的身份去删除某个用户,如果用其它用户去删除用户则需要具有drop user 的权限。
比如drop user 用户名【cascade】在删除用户时,注意:如果要删除的用户,已经创建了表,那么就需要在删除的时候带一个参数cascade;用户管理的综合案例概述:创建的新用户是没有任何权限的,甚至连登陆的数据库的权限都没有,需要为其指定相应的权限。
给一个用户赋权限使用命令grant,回收权限使用命令revoke。
为了给讲清楚用户的管理,这里我给大家举一个案例。
SQL> conn xiaoming/m12;ERROR:ORA-01045: user XIAOMING lacks CREATE SESSION privilege; logon denied警告: 您不再连接到ORACLE。
SQL> show user;USER 为""SQL> conn system/p;已连接。
SQL> grant connect to xiaoming;授权成功。
SQL> conn xiaoming/m12; //后面的为密码分开来输入。
已连接。
SQL>注意:grant connect to xiaoming;在这里,准确的讲,connect不是权限,而是角色。
看图:现在说下对象权限,现在要做这么件事情:* 希望xiaoming用户可以去查询emp表* 希望xiaoming用户可以去查询scott的emp表grant select on emp to xiaoming* 希望xiaoming用户可以去修改scott的emp表grant update on emp to xiaoming* 希望xiaoming用户可以去修改/删除,查询,添加scott的emp表grant all on emp to xiaoming* scott希望收回xiaoming对emp表的查询权限revoke select on emp from xiaoming//对权限的维护。
* 希望xiaoming用户可以去查询scott的emp表/还希望xiaoming可以把这个权限继续给别人。
--如果是对象权限,就加入with grant optiongrant select on emp to xiaoming with grant option我的操作过程:SQL> conn scott/tiger;已连接。
SQL> grant select on scott.emp to xiaoming with grant option;授权成功。
SQL> conn system/p;已连接。
SQL> create user xiaohong identified by m123;用户已创建。
SQL> grant connect to xiaohong;授权成功。
SQL> conn xiaoming/m12;已连接。
SQL> grant select on scott.emp to xiaohong;授权成功。
--如果是系统权限。
system给xiaoming权限时:grant connect to xiaoming with admin option问题:如果scott把xiaoming对emp表的查询权限回收,那么xiaohong会怎样?答案:被回收。
下面是我的操作过程:SQL> conn scott/tiger;已连接。
SQL> revoke select on emp from xiaoming;撤销成功。
SQL> conn xiaohong/m123;已连接。
SQL> select * from scott.emp;select * from scott.emp第1 行出现错误:ORA-00942: 表或视图不存在结果显示:小红受到诛连了。
使用profile管理用户口令概述:profile是口令限制,资源限制的命令集合,当建立数据库的,oracle会自动建立名称为default的profile。
当建立用户没有指定profile选项,那么oracle就会将default分配给用户。
1.账户锁定概述:指定该账户(用户)登陆时最多可以输入密码的次数,也可以指定用户锁定的时间(天)一般用dba的身份去执行该命令。
例子:指定scott这个用户最多只能尝试3次登陆,锁定时间为2天,让我们看看怎么实现。
创建profile文件SQL> create profile lock_account limit failed_login_attempts 3 password_lock_time 2;SQL> alter user scott profile lock_account;2.给账户(用户)解锁SQL> alter user tea account unlock;3.终止口令为了让用户定期修改密码可以使用终止口令的指令来完成,同样这个命令也需要dba的身份来操作。
例子:给前面创建的用户tea创建一个profile文件,要求该用户每隔10天要修改自己的登陆密码,宽限期为2天。
看看怎么做。
SQL> create profile myprofile limit password_life_time 10 password_grace_time 2;SQL> alter user tea profile myprofile;口令历史概述:如果希望用户在修改密码时,不能使用以前使用过的密码,可使用口令历史,这样oracle就会将口令修改的信息存放到数据字典中,这样当用户修改密码时,oracle就会对新旧密码进行比较,当发现新旧密码一样时,就提示用户重新输入密码。
例子:1)建立profileSQL>create profile password_history limit password_life_time 10 password_grace_time 2 password_reuse_time 10password_reuse_time //指定口令可重用时间即10天后就可以重用2)分配给某个用户删除profile概述:当不需要某个profile文件时,可以删除该文件。
SQL> drop profile password_history 【casade】注意:文件删除后,用这个文件去约束的那些用户通通也都被释放了。
加了casade,就会把级联的相关东西也给删除掉四:oracle表的管理(数据类型,表创建删除,数据CRUD操作)oracle的表的管理表名和列的命名规则•必须以字母开头•长度不能超过30个字符•不能使用oracle的保留字•只能使用如下字符 A-Z,a-z,0-9,$,#等oracle支持的数据类型字符类char定长最大2000个字符。
例子:char(10) ‘小韩’前四个字符放‘小韩’,后添6个空格补全如‘小韩’varchar2(20)变长最大4000个字符。