Oracle11g数据库管理基础.docx_第1页
Oracle11g数据库管理基础.docx_第2页
Oracle11g数据库管理基础.docx_第3页
Oracle11g数据库管理基础.docx_第4页
Oracle11g数据库管理基础.docx_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Oracle11g 数据库管理基础一北极熊 2013年32周Oracle11g 数据库管理基础一Oracle 官方文档翻译眺望 1 / 2Oracle11g 数据库管理基础一绪言11开始数据库管理21.1各种Oracle数据库用户21.1.1数据库管理员21.1.2安全人员21.1.3网络管理员31.1.4应用开发者31.1.5应用管理者31.1.6数据库用户31.2数据库管理员的任务31.2.1评估数据库服务器硬件31.2.2安装数据库软件41.2.3规划数据库41.2.4建立并打开数据库41.2.5备份数据库41.2.6登记系统用户41.2.7实现数据库设计51.2.8备份完整功能的数据库51.2.9调优数据库性能51.2.10下载并安装补丁51.2.11滚动安装到附加主机51.3在数据库中运行命令和SQL61.3.1关于SQL*Plus61.3.2使用SQL连接到数据库61.4标识你的数据库发行版本91.4.1检查当前版本号91.5关于数据管理员安全与权限101.5.1数据库管理员的操作系统账号:101.5.2管理员账号:101.6数据库管理员认证101.6.1管理员权限101.6.2SYSDBA和SYSOPER111.6.3作为SYSDBA连接的例子111.6.4选择数据库管理员认证方法121.7建立和维护密码文件131.7.1建立密码文件131.7.2密码文件参数描述141.7.3共享和禁用密码文件141.7.4保持管理员密码和数据字典同步151.7.5管理密码文件151.8数据工具151.8.1SQL*Loader151.8.2Export和Import 工具16IIOracle11g 数据库管理基础一绪言本章真正的很基础,很基础。说实话翻译时就感觉是练习练习英文,有点基础都跳过或是有选择的看一点吧。基础小故事:纪昌者,又学射于飞卫。飞卫说:尔先学不瞬,而后可以言射矣。纪昌归,偃卧其妻之机下,以目承牵挺。二年之后,虽锥末倒眦而不瞬也。以告飞卫。飞卫曰:未也,必学视而后可,视小如大,视微如著,而后告我。昌以秏悬虱于牖,南面而望之。旬日之间,浸大也;三年之后,如车轮焉。以睹余物,皆丘山也。以告飞卫。”飞卫高蹈拊膺曰:“汝得之矣!飞卫收了一个叫纪昌的人作徒弟。飞卫对纪昌说:“你先要学会盯住一个目标不眨眼,然后才谈得上学射箭。”纪昌回去后就躺在他妻子的织布机下边,用眼睛盯着织布机密排的锥刺。就这样坚持了两年以后,就算锥子碰到纪昌的睫毛了,他的眼睛也不会眨一下。于是纪昌又去找飞卫。飞卫说:“这样还不够,你还要学会用眼睛去看东西的技巧。要练得能把小的东西看成大的东西,能把细微的东西看得清清楚楚,然后再来告诉我。”纪昌回去后,就在自己家的南窗下马尾毛挂一只虱子,自己每天都注视着这只虱子,在十天里,纪昌看见虱子慢慢变大了。这样过了三年以后,在纪昌眼里虱子已经变得像车轮那么大了。再看其他的东西,就好像山丘一样大。于是,纪昌就用箭向那只虱子射去,箭穿过了虱子的中心,悬挂虱子的马尾毛却没有断。纪昌赶快去告诉飞卫。飞卫高兴得跳了起来,拍着胸口说:“你已经把射箭的功夫学会了!”学习射箭必须先练眼力,基础的练习总是枯燥的,但基础的动作扎实了,应用就可以千变万化;Oracle的学习和应用也是一样。1 开始数据库管理1.1 各种Oracle数据库用户各种用户的角色和职责与数据库站点相关,对于小型的数据库站点可能就一个数据库管理员做了所有工作,对于大型站点可能需要几个人分配不同的职责和区域对数据库进行管理1.1.1 数据库管理员每个数据库至少必须有一个数据库管理员(DBA)。一个大型的数据库系统可能很大并且拥有许多的用户。数据库管理员有时不是一个人工作,但是对于一个数据库管理员团队他们拥有共同的职责。数据库管理员职责包括以下任务: 安装和升级数据库服务器和应用工具; 为数据库系统分配存储和规划未来所需存储; 在应用开发者设计完成应用之后建立主要数据库存储结构(表空间); 一旦应用开发者设计完成应用,为其建立主要数据库对象(表、视图,索引); 从应用开发者处获得信息,需要时修改数据库结构; 注册用户并维护系统安全; 确保遵守Oracle许可协议; 控制和监视用户访问数据库; 规划数据库的备份和恢复; 维护归档数据; 备份并还原数据库; 联系Oracle技术支持。1.1.2 安全人员在一些案例中,一个站点可能为数据库分配一个或多个安全人员。安全人员负责注册用户,控制和监视用户访问到数据库,并且维护系统安全。那么作为DBA,可能就不需要再承担这些职责。1.1.3 网络管理员有些站点可能还具备一个或多个网络管理员。如:管理Oracle网络产品。1.1.4 应用开发者应用开发者设计和实现数据库应用,他们的职责包括以下任务: 设计和开发数据库应用; 为应用设计数据库结构; 为应用评估存储需求; 指定修改数据库结构; 传递这些信息给数据库管理员; 在开发期间调优应用; 在开发期间为应用建立安全机制。应用开发者可能和DBA合作完成上述任务。1.1.5 应用管理者一个Oracle数据库站点可能有一个或多个应用管理者管理一个特地应用,一个应用可能会有自己的应用管理者。1.1.6 数据库用户数据库用户指使用应用或工具与数据库交互的人员,典型的用户职责包括以下任务: 在许可条件下,录入,改变和删除数据; 从数据中生成报告;1.2 数据库管理员的任务1.2.1 评估数据库服务器硬件评估Oralce数据库和应用如何能最好的使用计算机资源,评估应该包括以下信息: 有多少的磁盘可供数据库产品使用; 如果有磁带,有多少磁带可供数据库产品使用; 有多少内存可供将要运行的数据库实例使用。1.2.2 安装数据库软件作为数据库管理员,需要能够安装数据库服务器软件和其他任何访问数据库的前端工具和数据库应用。在一些分布式处理环境中,数据库可能位于中心服务器,而数据库工具和应用在远程计算机(客户端)执行,你必须能够为需要的远程计算机安装所需的Oracle Net组件。1.2.3 规划数据库作为数据库管理员你必须规划: 数据库的逻辑存储结构; 数据库设计所包含的所有内容; 数据库的备份策略;数据库的逻辑存储结构规划是重要的,它将影响系统的性能和各种数据库管理操作。例如:在建立表空间之前需要明确表空间需要多少个数据文件,表空间存储哪些类型的数据等。逻辑结构设计应该考虑下列影响: 数据库运行时计算机的性能; 数据库访问操作时数据库的性能; 数据库备份和恢复的影响;1.2.4 建立并打开数据库在完成数据库设计后,建立并打开数据库。1.2.5 备份数据库在建立数据库之后,应该计划数据库的备份策略,建立附加的重做日志文件。首先做一个全库备份,然后安排一个规律的数据库备份计划。1.2.6 登记系统用户完成数据库结构备份之后,可能需要注册数据库用户以符合Oracle许可协议,并授权相应的权限给这些用户。1.2.7 实现数据库设计在建立和开始数据库并注册了用户后,可以开始实现规划的数据库逻辑结构创建所有的表空间。完成创建表空间之后,创建数据库对象。1.2.8 备份完整功能的数据库在完全实现数据库功能之后,再次备份数据库。在数据库结构改变后总是立刻备份数据库。1.2.9 调优数据库性能优化数据库的性能将是DBA不间断的任务。Oracle提供了数据库资源管理帮助DBA在各种用户组之中控制可分配资源。1.2.10 下载并安装补丁在安装了基本版本之后,你可能需要安装新的补丁发行版,例如:安装了后,你可能需要安装。有些时候你可能由于某些BUG需要安装独立的临时补丁。1.2.11 滚动安装到附加主机在你对一个数据库进行了安装,配置,调优和测试之后,你可能想滚动安装到其它主机。基于以下原因: 你有多个产品数据库系统; 你需要建立一个独立于你产品数据库的开发和测试系统;相对于在其它主机进行安装,调优和补丁,你可以使用克隆的方式在其它主机上安装你的数据库,以节约时间及消除不一致性。你将处理两种类型的克隆操作: 克隆ORACLE_HOME:将配置和补丁好的Oracle Home目录和子目录拷贝到目标数据库并且恢复配置在新的环境; 克隆数据库:一个已经调优的数据库,将数据文件,初始化参数文件等拷贝到克隆的Oracle Home。1.3 在数据库中运行命令和SQL通过提交SQL语句和数据库进行交互。Oracle数据库支持SQL的超集,它包括启动和关闭数据库命令,改变数据库配置等。可以通过以下三种方式提交SQL语句和命令到数据库: 直接,使用SQL*Plus命令行接口; 间接,使用企业管理器图形接口; 直接,使用SQL Developer1.3.1 关于SQL*PlusSQL*Plus是数据库主要的命令行接口。使用SQL*Plus启动和关闭数据库,设置数据库初始化参数,建立和管理用户,建立和改变数据库对象(如表和索引),插入和更新数据,运行SQL查询以及更多其它语句。在提交SQL语句和命令之前必须先连接到数据库。SQL*Plus可以通过本地或远程方式连接。连接本地的意思是在Oracle数据库的同一台计算机运行SQL*Plus,连接远程的意思是在远程计算机通过网络连接到Oracle数据库。1.3.2 使用SQL连接到数据库Oracle数据库包括以下组件: Oracle实例,由一组进程和内存组成; 一套包含用户和系统数据的磁盘文件。当使用SQL*Plus连接时,你是连接到Oracle实例,每个实例有一个instance ID,又名system ID(SID)。因为一台计算机可能有一个或多个Oracle实例,每个都有自己的数据文件,你必须标识出你想连接的实例。对于本机连接,通过设置操作系统环境变量标识实例。对于远程连接,通过指定网络地址和数据库服务名标识实例。使用SQL*Plus步骤如下:1. 打开命令行窗口;2. 设置操作系统环境变量;开始SQL*Plus的环境变量设置与平台相关;在UNIX平台上你必须通过命令设置操作系统环境。在Windows平台上,Oracle Univerval Installer(OUI)在自动Windows注册表中分配ORACLE_HOME和ORACLE_SID的值。例:UNIX平台(bash)export ORACLE_SID=orclexport ORACLE_HOME=/oracle/app/oracle/product/10.2.0/db_1export PATH=$ORACLE_HOME/bin:$PATH例:Windows平台set ORACLE_SID=orcl3. 开始SQL*Plussqlplus /nolog4. 提交连接语句能够使用CONNECT语句在任何时候使用不同用户连接或重新连接到数据库实例。CONNECT语句如下:CONNECT logon AS SYSOPER | SYSDBA其中logon语法如下:username | /connect_identifier edition=edition_name | DATABASE_DEFAULT语法描述/连接请求调用外部过程。在这种认证类型中不使用数据库密码,多数情况下使用操作系统外部认证。数据库用户被认证为一个已经登录到操作系统上的确定的用户账号。AS SYSOPER | SYSDBA指出连接的数据库用户使用SYSOPER or SYSDBA系统权限。仅用一个确定的预定义的管理员用户或是被添加到密码文件中的用户能够使用这些权限。username一个有效的数据库用户名。此数据库认证连接请求通过匹配数据字典中的用户名,并提示使用用户密码。connect_identifier (1)一个Oracle Net连接标识。对于远程连接,使用Oracle Net配置。如果忽略,SQL*Plus 试图连接本地实例。此连接串通常为一个网络服务名,这是一个别名,对应Oralce Net连接描述(网络地址,端口,数据库服务名)。此别名通常由本地计算机的tnsnames.ora文件解析,但也可能通过其它方式解析。connect_identifier (2)可选的,连接描述符可以直接使用连接语法,而不使用客户(本地)计算机的Oracle Net服务。连接语法使用以下标识(必须使用双引号包含):host:port/service_name:server/instance_namel host 是远程计算机的主机名或IP地址l port为要连接的数据库上Oracle Net 监听器的TCP端口,如果忽略,假定为1521l service_name 要连接的数据库服务名。如果在远程主机上Net 服务监听器指定为默认服务,可以忽略。其它情况必须配置。典型情况下标准的服务名等于全局数据库名,由 DB_NAME and DB_DOMAIN 初始化参数组成:DB_NAME.DB_DOMAINedition=edition_name | DATABASE_DEFAULT指定开始新的数据库会话的编辑器。忽略使用数据库默认编辑器.例一:使用system用户连接到本地数据库实例,SQL*Plus将提示输入用户密码:connect system例二:使用用户sys和sysdba权限连接本地数据库,SQL*Plus将提示输入用户密码:connect sys as sysdba例三:连接到本地,通过操作系统认证(注:一般配置下本地操作系统为sysdba权限,因此这样连接将失败)connect /例四:使用sysdba权限连接到本地,通过操作系统认证:conn / as sysdba例五:使用连接语法连接,用户salesadm连接到在主机上运行的远程数据库。Oracle Net 监听器使用默认端口(1521). 数据库服务是。SQL*Plus提示输入salesadm用户密码:connect /例六:与例五相同,增加服务连接类型connect /:dedicated例七:与例五相同,除了使用非默认监听端口1522connect :1522/例八:与例五相同,处理使用IP地址指代主机名connect salesadm0/例九:使用网络服务名连接,SQL*Plus将提示输入用户密码:connect 1.4 标识你的数据库发行版本 Major Database Release Number:第一个数字是最普通的标识,它指出软件的主版本号,包含重大的新功能。 atabase Maintenance Release Number:第二个数字指出维护发布等级,也可能包含一些新特性。 Fusion Middleware Release Number:第三个数字指出Oracle融合中间件版本号,对于数据库产品一般都是0。 Component-Specific Release Number:第四个数字指出指定组件的发布等级。不同组件有着不同的数字,在这个例子中是组件补丁集或临时发布。 Platform-Specific Release Number:第五个数字是平台指定发布。通常这是一个补丁集,当不同平台必须相同的补丁集时,这个数字对于影响的平台是相同的。1.4.1 检查当前版本号COL PRODUCT FORMAT A40COL VERSION FORMAT A15COL STATUS FORMAT A15 SELECT * FROM PRODUCT_COMPONENT_VERSION;PRODUCT VERSION STATUS- - -NLSRTL .1 ProductionOracle Database 11g Enterprise Edition .1 ProductionPL/SQL .1 Production1.5 关于数据管理员安全与权限1.5.1 数据库管理员的操作系统账号:在管理数据库是,有时必须在数据库运行的操作系统上执行命令。因此需要相应的操作账号和权限访问操作系统。1.5.2 管理员账号:有两个管理员用户在数据库安装时被自动建立: SYS(默认密码:change_on_install):当建立数据库时,SYS自动建立并授予DBA角色。数据库数据字典的基本表和视图都存于schema sys中。这些基本表对数据库是关键的,管理员从不需要改变它们。并且不应该使用sys用户建立任何表。确保大多数用户从不使用sys账号连接; SYSTEM(默认密码:manager):当建立数据库时,SYS自动建立并授予DBA角色。SYSTEM用户建立显示管理信息的附加表和视图,以及各种数据库选项和工具使用的内部表和视图。不要使用SYSTEM用户存储其它非管理用户的表。从10g开始在使用OUI的DBCA创建数据库是会提示你修改SYS和SYSTEM的密码,你可以分别设置这两个密码。建立至少一个管理员用户并授予相应的权限以执行管理任务,不要使用sys和system管理DBA角色:每个数据库安装时,自动建立一个预定义的DBA角色。这个角色包含大多数系统权限。因此DBA角色应该仅被授权给管理员。1.6 数据库管理员认证作为数据库管理员需要执行一些特殊的操作,如:启动和关闭数据库。仅数据库管理员能够执行这些操作,因此数据库管理员用户必须有安全的认证机制。1.6.1 管理员权限基本的数据库管理操作必须通过授权两种指定的权限SYSDBA和SYSOPER。SYSDBA和SYSOPER系统权限允许在数据库未打开的状态下访问数据库实例,因此SYSDBA和SYSOPER不属于数据库控制。如果你拥有SYSDBA权限你可以通过connect as sysdba方式连接到数据库1.6.2 SYSDBA和SYSOPER系统权限授权的操作SYSDBA STARTUP ,SHUTDOWN ALTER DATABASE: open, mount, back up, or change character set CREATE DATABASE DROP DATABASE CREATE SPFILE ALTER DATABASE ARCHIVELOG ALTER DATABASE RECOVER RESTRICTED SESSION privilege Effectively, this system privilege allows a user to connect as user SYS.SYSOPER STARTUP ,SHUTDOWN CREATE SPFILE ALTER DATABASE OPEN/MOUNT/BACKUP ALTER DATABASE ARCHIVELOG ALTER DATABASE RECOVER (Complete recovery only. Any form of incomplete recovery, such as UNTIL TIME| CHANGE| CANCEL| CONTROLFILE requires connecting as SYSDBA.) RESTRICTED SESSION privilege This privilege allows a user to perform basic operational tasks, but without the ability to look at user data.当使用SYSDBA和SYSOPER连接时,通过默认的schema连接。对于SYSDBA连接作为sys,对于SYSOPER连接作为public1.6.3 作为SYSDBA连接的例子这个例子授权OE用户sysdba权限,执行下列命令:CONNECT oeCREATE TABLE admin_test(name VARCHAR2(20);然后执行CONNECT oe AS SYSDBASELECT * FROM admin_test;此时用户将收到如下错误提示ORA-00942: 表或视图不存在出现这个提示的原因是:当作为sysdba连接时,OE用户参照sys schema,但是表是在oe schema下建立的。1.6.4 选择数据库管理员认证方法数据库管理员可以和其它用户一样通过数据库字典的方式认证(使用一个账号和密码)。从11g开始数据库的密码是大小写敏感的(可以通过设置初始化参数SEC_CASE_SENSITIVE_LOGON来启用,禁用这个功能)。除了数据库字典认证外,Oracle可以通过下述方式认证SYSDBA和SYSOPER权限: 操作系统认证; 密码文件; 网络认证服务器,如:Oracle Internet Directory当数据库没有开始或其它原因不可用时,只能通过上述三种方式认证。下面着重描述了操作系统认证和密码文件: Nonsecure Remote Connections:通过不安全的连接使用特权用户连接到Oracle数据库时,必须使用密码文件。 Local Connections and Secure Remote Connections:在通过本地连接或安全的远程使用特权用户连接到Oracle数据库时。如果有一个密码文件并且已经被授予了SYSDBA 或 SYSOPER系统权限,那么可以通过密码文件认证连接;如果服务器没有使用密码文件或没有通过密码文件被授予SYSDBA 或 SYSOPER权限。能够使用操作系统认证,在大多数操作系统上通过特定OSDBA和OSOPER组来授权用户。操作系统组UNIX 用户组Windows 用户组OSDBAdbaORA_DBAOSOPERoperORA_OPER作为OSDBA组的成员拥有sysdba的系统权限,OSOPER组的成员拥用sysoper的系统权限。Oracle Universal Installer使用默认的名称,但是他们能够被改变。这种情况发生在同一台主机有多个数据库,并且需要有不同的DBA管理不同的实例时。使用操作系统认证: 建立操作系统账号; 添加账号到OSDBA或OSOPER组; CONNECT AS SYSDBA 或 CONNECT AS SYSOPER使用密码文件认证: 建立密码文件 orapwd file=filename password=pwd entries=max_users 设置REMOTE_LOGIN_PASSWORDFILE初始化参数REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE CONNECT AS SYSDBA 或 CONNECT AS SYSOPER 如果需要授权数据库已经存在的用户grant sysdba|sysoper to username1.7 建立和维护密码文件1.7.1 建立密码文件ORAPWD FILE=filename ENTRIES=numusers FORCE=Y|N IGNORECASE=Y|N参数描述FILE参数文件名。指定完整的路径, 仅指定文件名则建立在当前路径ENTRIES可选。指定文件允许的最大用户数FORCE可选。是否覆盖已存在的密码文件IGNORECASE可选。指定密码是否大小敏感例:orapwd FILE=orapworcl ENTRIES=301.7.2 密码文件参数描述FILE:设置建立的密码文件名。你必须为文件指定全路径。这个文件的内容是加密的,并且这个文件不能直接被读取。这个参数是必须的。对于部分操作系统此密码文件的的文件名和路径都是特定格式的,其它操作系统可以通过环境变量指定密码文件的位置和名字。平台必须名称必须位置UNIX and LinuxorapwORACLE_SIDORACLE_HOME/dbsWindowsPWDORACLE_SID.oraORACLE_HOMEdatabase例如:如果有一个实例SID是orcl,那么在Unix和Linux平台上必须是orapworcl,在Windows平台上必须是PWDorcl.oraENTIES:这个参数指定密码文件运行的用户数。这个用户数可能比你设置的更高,因为orapwd工具会持续分配密码知道操作系统块被填满。例如:如果操作系统块是512字节,那么分配的密码数总是4的整倍数。如果分配的密码数超过了ENTIES的配置,只能通过重建密码文件来获得更大的值。FORCE:设置为Y,这个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论