《Oracle数据库及其管理.ppt》由会员分享,可在线阅读,更多相关《Oracle数据库及其管理.ppt(38页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第4 4章章 Oracle Oracle 数据库及其管理数据库及其管理4.1 4.1 空间管理空间管理4.2 4.2 用户管理用户管理4.3 4.3 日志管理日志管理 4.1 4.1 创建和管理表空间创建和管理表空间.1.1 在在OEMOEM中创建表空间中创建表空间.2.2 在在OEMOEM中管理表空间和数据文件中管理表空间和数据文件.3.3 使用使用SQLSQL命令创建和管理表空间命令创建和管理表空间4.1.1 4.1.1 在在OEMOEM中创建表空间中创建表空间表表空空间间就就像像一一个个文文件件夹夹,是是存存储储数数据据库库对对象象的的容容器器。表表空空间间由由数数据据文文件件组组成成
2、,这这些些数数据据文文件件是是数数据据库库实实际际存存放放数数据据的的地地方方,数数据据库库的的所所有有系系统统数数据据和和用用户户数数据据都都必必须须存存放放在在数数据据文文件件中中。每每一一个个数数据据库库创创建建的的时时候候,系系统统都都会会默默认认地地为为它它创创建建一一个个“SYSTEM”“SYSTEM”表表空空间间,以以存存储储系系统统信信息息。一一个个数数据据库库可可以以有有多多个个表表空空间间,也也可可以以只只有有一一个个“SYSTEM”“SYSTEM”表表空空间间。一一般般地地,用用户户数数据据应应该该存存放放在在单单独的表空间中,所以必须创建和使用自己的表空间。独的表空间中
3、,所以必须创建和使用自己的表空间。4.1.1 4.1.1 在在OEMOEM中创建表空间中创建表空间在在数数据据库库中中创创建建用用户户表表空空间间,可可以以使使用用工工具具箱箱中中的的“创创建建”按按钮钮或或使使用用快快捷捷菜菜单单,这这两两种种方方法法的的创创建过程完全相同。建过程完全相同。用用鼠鼠标标右右键键单单击击“表表空空间间”文文件件夹夹,从从快快捷捷菜菜单单中中选选择择“创创建建”功功能能,激激活活创创建建表表空空间间对对话话框框。对对话话框框包包括括两两个个标标签签页页,一一般般信信息息标标签签页页和和存存储储标标签签页页。通通过过回回答答对对话话框框的的各各种种配配置置需需求求
4、即即可可创创建建所所需需的表空间。的表空间。4.1.2 4.1.2 在在OEMOEM中管理表空间和数据文件中管理表空间和数据文件 在在OEMOEM中中,选选择择需需要要管管理理的的表表空空间间或或数数据据文文件件,单单击击鼠鼠标标右右键键,从从快快捷捷菜菜单单中中选选择择“查查看看/编编辑辑详详细细资资料料”选选项项,打打开开相相应应的的对对话话框框。要要想想修修改改各各个个参参数数,只只需需双双击击相相应应的的单单元元格格,然后输入新的参数,按然后输入新的参数,按“应用应用”按钮即可。按钮即可。修改表空间和数据文件的参数或状态修改表空间和数据文件的参数或状态 添加数据文件和设置数据文件的存储
5、增量及最大容量添加数据文件和设置数据文件的存储增量及最大容量 删除表空间或数据文件删除表空间或数据文件4.1.2 4.1.2 在在OEMOEM中管理表空间和数据文件中管理表空间和数据文件 在在OEMOEM中中,单单击击“存存储储”容容器器前前面面的的“+”“+”号号可可以以展展开开显显示示存存储储管管理理所所包包括括的的内内容容;再再单单击击“表表空空间间”容容器器前前面面的的“+”“+”号号,可可以以展展开开显显示示该该数数据据库库中中所所有有表表空空间间;如如果果用用鼠鼠标标左左键键单单击击“表表空空间间”,将将在在右右面面的的显显示示栏栏中中列列出出所所有有表表空空间的名称、类型、大小以
6、及使用情况。间的名称、类型、大小以及使用情况。4.1.3 4.1.3 使用使用SQLSQL命令创建和管理表空间命令创建和管理表空间1.1.创建表空间创建表空间使用使用CREATE TABLESPACECREATE TABLESPACE可以生成表空间,表空间生成时可以可以生成表空间,表空间生成时可以指定扩展区,如果没有扩展区,指定扩展区,如果没有扩展区,OracleOracle自动生成一个字典管理自动生成一个字典管理表空间表空间(Dictionary-Manager Tablespaces)(Dictionary-Manager Tablespaces)。要使数据库具有更多的功能,就需要为用户创
7、建另外的数据文要使数据库具有更多的功能,就需要为用户创建另外的数据文件和表空间,按照应用系统实际需求而定。件和表空间,按照应用系统实际需求而定。利用利用SQLSQL命令创建和管理表空间命令创建和管理表空间 例:例:CREATE TABLESPACE userCREATE TABLESPACE user DATAFILE/m01/oradata/BIBDB/userdata.dbf DATAFILE/m01/oradata/BIBDB/userdata.dbf SIZE 1000M SIZE 1000M MINIMUM EXTENT 25M MINIMUM EXTENT 25M DEFAULT
8、STORAGE(INITIAL 50M DEFAULT STORAGE(INITIAL 50M NEXT 50M NEXT 50M MINEXTENTS 1 MINEXTENTS 1 MAXEXTENTS UNLIMITED MAXEXTENTS UNLIMITED PCTINCREASE 0);PCTINCREASE 0);4.1.3 4.1.3 使用使用SQLSQL命令创建和管理表空间命令创建和管理表空间2.2.为表空间添加存储空间为表空间添加存储空间 ALTER TABLESPACE user ALTER TABLESPACE userADD DATAFILE D:/m02/oradat
9、a/BIBDB/userdata2.dbf ADD DATAFILE D:/m02/oradata/BIBDB/userdata2.dbf SIZE 1000M;SIZE 1000M;4.1.3 4.1.3 使用使用SQLSQL命令创建和管理表空间命令创建和管理表空间4.4.为数据文件添加存储空间为数据文件添加存储空间 ALTER DATABASE DATAFILE d:/m02/oradata/BIBDB/userdata2.dbf RESIZE 1500m;4.1.3 4.1.3 使用使用SQLSQL命令创建和管理表空间命令创建和管理表空间4 4修改表空间可用性修改表空间可用性 可以使一个
10、联机的表空间脱机,以便数据库的这部分对于一般的使用暂时不可用。使表空间脱机ALTER TABLESPACE users OFFLINE;使表空间联机ALTER TABLESPACE users ONLINE;使数据文件脱机ALTER DATABASE DATAFILE E:ORACLEORADATAOR80DR01.DBF OFFLINE;使数据文件联机ALTER DATABASE DATAFILE E:ORACLEORADATAOR80DR01.DBF ONLINE;&UndoUndo空间管理空间管理 在在Oracle9iOracle9i中可以使用传统的回退段,也可以使用中可以使用传统的回退
11、段,也可以使用Oracle9iOracle9i的自动空间管理,使的自动空间管理,使OracleOracle自动管理自动管理UndoUndo数据。数据。在参数文件中设置在参数文件中设置 UNDO_MANAGEMENT其取值如下:其取值如下:AUTO 表示使用自动表示使用自动UNDOUNDO空间管理空间管理 MANUAL 表示使用手动表示使用手动UNDOUNDO空间管理空间管理 UNDO_TABLESPACE=undotbs Oracle9iOracle9i数据库数据库UndoUndo表空间参数表空间参数4.24.2创建用户创建用户 利用利用OEMOEM创建用户创建用户 4.2.14.2.1创建用
12、户创建用户n 一般信息选项卡一般信息选项卡 名称 概要文件 验证 输入口令和验证口令 口令即刻失效 表空间-默认值 表空间-临时 状态-锁定 n角色选项卡角色选项卡 系统权限选项卡系统权限选项卡 对象权限选项卡对象权限选项卡 使用者组选项卡使用者组选项卡 限额选项卡限额选项卡 代理用户选项卡代理用户选项卡 4.2.14.2.1创建用户创建用户利用利用SQLSQL语句创建用户语句创建用户语法格式:语法格式:CREATE USER user_name /*将要创建的用户名*/IDENTIFIED BY password|EXTERNALLLY|GLOBALLY AS external_name /
13、*表明Oracle如何验证用户*/DEFAULT TABLESPACE tablespace_nameTEMPORARY TABLESPACE tablespace_nameQUOTA integer K|integer M|UNLIMTED ON tablespace_namePROFILE profile_name /*将指定的概要文件分配给用户*/DEFAULT ROLE role,nALLEXCEPT role,n NONEPASSWORD EXPIRE /*口令即刻失效*/ACCOUNT LOCK|NULOCK /*帐户是否锁定*/4.2.14.2.1创建用户创建用户【例】【例】创建
14、一个名称为AAA的用户,口令为AAA,缺省表空间为USERS,临时表空间为TEMP。没有定额,使用缺省概要文件。CREATE USER AAA IDENTIFIED BY AAADEFAULT TABLESPACE USERSTEMPORARY TABLESPACE TEMP;给用户授予权限可以使用GRANT语句来实现。语法格式:语法格式:GRANT system_priv|role TO user WITH ADMIN OPTIN【例【例4.44.4】授予用户AAA以DBA的角色。GRANT DBA TO AAA;该用户可以向其他用户授权。GRANT CREATE ANY TABLE,CRE
15、ATE ANY VIEW TO AAAWITH ADMIN OPTION;4.2.24.2.2管理用户管理用户 利用利用OEMOEM管理用户管理用户 4.2.24.2.2管理用户管理用户除上述的方法,还可以通过以下方式对用户权限进行管理 单击鼠标右键,从快捷菜单中选择“为用户添加权限”,进入为用户添加权限窗口。4.2.24.2.2管理用户管理用户利用利用SQLSQL语句管理用户语句管理用户 语法格式:语法格式:ALTER USER user_nameIDENTIFIED BY passwordEXTERNALLYGLOBALLY AS external_nameDEFAULT TABLESPA
16、CE tablespace_nameTEMPORARY TABLESPACE tablespace_nameQUOTA integer K|integer M|UNLIMTED ON tablespace_namePROFILE profile_nameDEFAULT ROLE roleALLEXCEPT role NONEPASSWORD EXPIREACCOUNT LOCK|UNLOCK 4.2.24.2.2管理用户管理用户回收权限REVOKE命令 语法格式:语法格式:回收用户AAA的DBA的角色。REVOKE DBA FROM AAA;4.2.24.2.2管理用户管理用户删除用户删除用户
17、 在用户文件夹下选择要删除的用户,单击右键,在弹出的快捷菜单中选择“移去”,即可删除所选择的用户。DROP USER命令:4.2.34.2.3角色角色 角色机制角色机制角色可以被授予一组系统权限和对象权限。角色被授予其他角色。任何角色可以被授予任何数据库对象。授予用户的角色,在给定的时间里,要么启用,要么禁用。预定义角色预定义角色 CONNECT RESOURCE DBA EXP_FULL_DATABASE IMP_FULL_DATABASE 4.2.34.2.3创建角色创建角色 利用利用OEMOEM创建角色创建角色 4.2.34.2.3创建角色创建角色一般信息选项卡角色选项卡 系统权限选项卡
18、 4.2.34.2.3创建角色创建角色利用利用SQLSQL命令创建角色命令创建角色 创建角色:创建角色:CREATE ROLE role_name NOT IDENTIFIED IDENTIFIED BY passwordEXTERNALLYGLOBALLY 给角色授权:给角色授权:GRANT system_priv|role TO roleWITH ADMIN OPTIN 4.2.34.2.3创建角色创建角色【例】【例】创建一个新的角色ACCOUNT_CREATE,它只能创建用户,而不能执行其他DBA级命令。CREATE ROLE ACCOUNT_CREATE;CREATE ROLE ACC
19、OUNT_CREATE;GRANT CREATE SESSION,CREATE USER,ALTER USER GRANT CREATE SESSION,CREATE USER,ALTER USER TO ACCOUNT_CREATE;TO ACCOUNT_CREATE;4.2.4 4.2.4 概要文件概要文件 概要概要文件文件是一个命名的资源限制的集合。它的主要功能是限制用户的行为。可以给每个用户分配一个概要概要文件,并且给所有没有专门的概要概要文件的用户分配一个默认概要概要文件。4.2.4 4.2.4 概要文件概要文件4.2.4 4.2.4 概要文件概要文件 口令选项卡 4.3 4.3 日
20、志管理日志管理Oracle有两种类型的日志文件:联机日志文件联机日志文件归档日志文件归档日志文件归档日志文件有时指的是脱机日志文件。所有的Oracle数据库都使用联机日志文件。仅当数据库在归档(archivelog)模式下运行,在发生数据库介质错误时利用归档日志文件使数据库恢复到当前状态。4.3 4.3 日志管理日志管理日志文件内容:日志文件内容:日志文件包括一个数据库变化的连续记录。任何时日志文件包括一个数据库变化的连续记录。任何时候在执行一条候在执行一条SQLSQL语句改变数据库中的数据时,语句改变数据库中的数据时,OracleOracle便便产生一条或多条日志记录来记录这个变化。产生一条
21、或多条日志记录来记录这个变化。联机的日志文件组联机的日志文件组 每个每个OracleOracle数据库都包括至少两个数据库都包括至少两个redoredo日志文件,日志文件,经常是更多。我们称这些日志文件为联机的日志文件组。经常是更多。我们称这些日志文件为联机的日志文件组。OracleOracle以循环方式写这些文件,如图所示。以循环方式写这些文件,如图所示。日志日志文件文件1日志日志文件文件2日志日志文件文件34.3 4.3 日志管理日志管理归档日志文件归档日志文件 由于由于OracleOracle以循环方式写日志文件,而以循环方式写日志文件,而OracleOracle是多用户是多用户的事务处
22、理,这些日志很快就写满,这样一些日志就会丢失。的事务处理,这些日志很快就写满,这样一些日志就会丢失。为了保持数据最近的一次全备份后被建立的全部日志,应采为了保持数据最近的一次全备份后被建立的全部日志,应采用归档方式。每一个日志文件写满后用归档方式。每一个日志文件写满后OracleOracle将它们拷贝到一将它们拷贝到一个安全的,可长期保存的地方。这个过程被称为归档一个日个安全的,可长期保存的地方。这个过程被称为归档一个日志文件。志文件。Oracle Oracle 通过下列通过下列3 3步操作从灾难性事件中恢复原状:步操作从灾难性事件中恢复原状:1 1、用一个新的运行的磁盘替换原有磁盘。、用一个
23、新的运行的磁盘替换原有磁盘。2 2、从最近的备份中还原丢失的文件。、从最近的备份中还原丢失的文件。3 3、使用日志文件把还原的文件重新进行变化,恢复到当前状、使用日志文件把还原的文件重新进行变化,恢复到当前状态。态。4.3 4.3 日志管理日志管理日志文件镜像日志文件镜像 为了保证数据库的安全,防止联机的日志文件故障,为了保证数据库的安全,防止联机的日志文件故障,可以建立日志文件镜像。如图:可以建立日志文件镜像。如图:GROUP3GROUP2 GROUP1Redo01Redo02Redo03Redo13Redo12Redo114.3 4.3 日志管理日志管理有关日志的操作有关日志的操作1 1、
24、增加一日志文件组、增加一日志文件组用用SQL*PLUSSQL*PLUS方式:方式:ALTER DATABASE ADD LOGFILE GROUP 4(D:ORACLEORADATAOR80log4.ora)SIZE 1024K;用用DBA studioDBA studio方式:方式:1.1.以以DBADBA的身份连接到数据库的身份连接到数据库2.2.选选 存储存储 在在 重做日志组重做日志组 上按鼠标右键上按鼠标右键3.3.执行创建执行创建4.3 4.3 日志管理日志管理取消一日志文件组取消一日志文件组用用SQL*PLUSSQL*PLUS方式:方式:ALTER DATABASE DROP L
25、OGFILE GROUP 4;用用DBA studioDBA studio方式:方式:选定选定 某组某组 按右键执行按右键执行 移去移去 4.3 4.3 日志管理日志管理向日志文件组中追加成员向日志文件组中追加成员用用SQL*PLUSSQL*PLUS方式:方式:ALTER DATABASE ADD LOGFILE MEMBER D:ORACLEORADATAOR80redo11 TO GROUP 1用用DBA studioDBA studio方式:方式:1.1.打开打开 某组某组 2.2.在右边在在右边在 一般信息一般信息 卡中,卡中,重做日志成员重做日志成员 下面的文件栏中下面的文件栏中输入
26、一新文件;输入一新文件;4.3 4.3 日志管理日志管理取消日志文件组中的成员取消日志文件组中的成员用用SQL*PLUSSQL*PLUS方式:方式:ALTER DATABASE DROP LOGFILE MEMBER D:ORACLEORADATAOR80REDO03.LOG;用用DBA studioDBA studio方式:方式:1.打开某组2.在右边在一般信息卡中,重做日志成员下面的文件栏中选一文件3.按下面的垃圾桶图标作业1、重做日志组是如何工作的?2、为什么要将重做日志组归档?3、Oracle 9i默认的用户及口令是什么?4、试通过实验熟悉创建用户、删除和修改用户的方法。5、角色有什么作用?6、试通过实验熟悉创建角色、删除和修改角色的方法。7、概要文件有什么作用?8、试通过实验熟悉创建概要文件、删除和修改概要文件的方法。