您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > 第04章Oracle数据库创建与表空间维护
第4章Oracle数据库创建与表空间维护哈尔滨华德学院任课教师:翟霞第4章Oracle数据库创建与表空间维护4.1创建Oracle数据库4.2管理表空间必须完整地建立一个数据库的物理结构、逻辑结构、内存结构和进程结构4.1创建Oracle数据库创建数据库的方法手工——使用命令工具——DBCA创建数据库的先决条件安装需要的Oracle软件设置操作系统环境变量在磁盘建立目录结构获得相应的操作系统权限和Oracle的SYSDBA系统特权充足的磁盘存储空间规划数据库的文件存储位置考虑数据生存期、数据管理特性分散存储:I/O争用、系统安全文件的命名要合理、规范1.创建Oracle数据库概述创建数据库之前的准备工作规划数据库的表和索引,估计所需的空间大小规划数据库包含的底层操作系统文件的布局考虑用OMF特性管理重做日志文件、控制文件选择全局数据库名称设置初始化参数和初始化参数文件选择数据库字符集选择标准的数据库块尺寸等最佳灵活体系结构(OFA)是指Oracle软件和数据库文件及目录的命名约定和存储位置规则,它使用户可以很容易地找到与Oracle数据库相关的文件集合2-1.OFAOFA将整个数据库系统分为Oracle软件产品、数据库例程的进程日志文件、数据库物理文件三部分,并分别放在不同的目录下。通过合理地规划目录结构,可以很方便地管理和维护Oracle数据库系统ORACLE_BASE:Oracle数据库根目录ORACLE_BASE下有两个子目录。(1)ORACLE_HOMEOracle数据库软件所在目录,称为Oracle主目录(2)ORACLE_BASE/admin数据库例程的进程日志文件所在目录。在该目录下为每个例程建立一个专用目录以管理它的进程日志文件2-1.OFAoradata:数据库物理文件所在目录该目录可位于ORACLE_BASE下,也可以放到别的磁盘上oracle_base//product/release_number-------发行版本号,这个目录一般作为ORACLE_BASE/admin------------内核进程跟踪文件目录/inst_name----每个例程有专门的对应目录,以例程名命名/adump/bdump/pfile……/client_1---------客户端第1次安装建立的客户端工具目录/bin----------客户端工具的可执行程序目录……/db_1----第1次安装Oracle建立的主目录,该目录一般作为ORACLE_HOME/bin----------可执行程序目录/dbs-----初始化参数、口令文件所在目录,Windows有database目录/NETWORK------监听进程等OracleNet相关配置文件所在目录/RDBMS--------RDBMS脚本文件所在目录/sqlplus------SQL*Plus工具所在目录2-1.OFA在oradata目录下,每个数据库有一个对应物理文件目录2-1.OFAoradata/orcl/--------------------数据库orcl物理文件目录SYSTEM01.DBFCONTROL01.CTLREDO01.LOG……CEMERP/------------------数据库CEMERP物理文件目录SYSTEM01.DBFCONTROL01.CTLREDO01.LOG……Oracle管理的文件(OMF)通过初始化参数,可以为特定类型的文件指定文件系统目录,并通过指定文件名规则,Oracle可以确保为其创建唯一的Oracle管理的文件,并在不需要的时候将该文件删除。2-2.OMF与OMF相关的初始化参数(1)DB_CREATE_FILE_DEST设置所创建的数据文件、控制文件和联机日志的默认位置(2)DB_CREATE_ONLINE_LOG_DEST_n设置所创建的联机日志和控制文件的默认位置(3)OMF使用例程名、进程号、表空间名、重做日志组号等格式字符串自动命名相关文件通过如下两步创建Oracle管理的文件2-2.OMF(1)在初始化参数文件中设置DB_CREATE_FILE_DEST和DB_CREATE_ONLINE_LOG_DEST_n参数(2)在CREATEDATABASE命令中只给出文件名(不给出文件路径),Oracle会自动将其创建在指定的目录并自动管理该文件3.使用DBCA创建数据库Oracle数据库配置助手(简称DBCA),是一个图形用户界面(GUI)工具,它可与Oracle通用安装程序进行交互,也可以单独使用,它的主要作用是简化数据库的创建过程。DBCA能完成的操作创建数据库配置数据库选项删除数据库数据库创建模板管理配置自动存储管理(ASM)DBCA为不同应用环境提供的模板一般用途事务处理定制数据库数据仓库3.使用DBCA创建数据库【开始】/【程序】/【Oracle-OraDb10g_home1】/【配置和移植工具】/【DatabaseConfigurationAssistant】创建数据库过程中注意如下几个方面全局数据库名称不同数据库类型模板的参数比较选择“安装示例方案”查看ORACLE_BASE、ORACLE_HOME、DB_NAME和SID值选中“生成数据库创建脚本”,查看脚本代码tnsnames.ora文件内容变化控制面板中“服务”的变化在SQL*Plus中进行测试在磁盘上建立相应的目录结构设置操作系统环境变量4.手工创建Oracle数据库其他主要步骤如下:(1)决定例程标识符(InstanceIDentifier,SID)(2)建立数据库管理员验证方法(3)创建初始化参数文件(4)在SQL*Plus中连接到例程(5)启动例程(6)发布CREATEDATABASE语句创建数据库(7)创建其他表空间(8)运行脚本来构建数据字典视图(9)运行脚本来安装其他的选项数据库创建实例(RedHat5企业版)04-第4章.txt(1)在磁盘建立相应的目录结构(2)设置操作系统环境变量(3)创建初始化参数文件(4)创建口令文件(5)启动例程创建数据库(6)建立数据字典和PL/SQL相关包(7)创建USERS表空间(8)OracleNet配置(9)Linux环境中多数据库例程的自动启动与关闭4.手工创建Oracle数据库Windows环境下手工创建数据库(1)创建Oracle数据库服务例程的命令为oradim(2)一般情况下,应在创建口令文件之后、执行CREATEDATABASE命令之前运行oradim创建例程的服务。oradim-NEW-SID数据库例程名-INTPWD口令字-STARTMODEauto-PFILE数据库参数文件名及路径4.手工创建Oracle数据库数据库创建失败后的处理删除数据库主要是手工操作参阅附录执行相应删除操作表空间是Oracle数据库内部数据的逻辑组织结构4.2管理表空间对应于磁盘上的一个或多个物理数据文件表空间将用户视图、数据库的逻辑结构和物理结构有机结合起来深入理解表空间的类型、管理方式、特性和状态,掌握表空间与数据文件之间的关系,合理为数据文件安排磁盘空间,对于设计与实现一个Oracle数据库应用系统是至关重要的1.表空间管理概述表空间的特性(1)一个数据库可以有多个表空间(2)一个表空间只能属于一个数据库(3)一个表空间至少要有一个数据文件(4)一个数据文件只能属于一个表空间(5)一个表空间的大小由其数据文件大小决定(6)除系统表空间外的表空间可以被联机或脱机(7)方案对象可以跨表空间的数据文件存储,但不能跨表空间存储(8)可以为用户指定默认数据表空间。但该用户的方案对象可以存储到不同表空间中。(9)可以指定用户在各表空间上的空间配额1.表空间管理概述表空间应用原则遵循分散(Separate)存储原则,避免磁盘I/O冲突(1)在系统性能要求较高的应用环境中,创建表空间时使用裸设备存储数据文件(2)将表、索引分开存放在不同的表空间中(3)将访问频度高的表、索引分开存放在不同的表空间。(4)对于数据量特别大,并发访问频繁的表、索引应考虑单独存放在一个表空间中。进一步,考虑将表、索引进行分区存储到不同表空间中(5)将日志和数据放置在不同的磁盘上1.表空间管理概述表空间管理方法Oracle10g采用本地管理需要通过估算表、索引等方案对象的大小及数据块空间分配比例来估算表空间的大小表占用空间大小=最大行长×初始行数×(1+PCTFREE/100)×记录复合增长率记录复合增长率指的是在系统的估计使用期内记录增长率的乘积实际创建的表空间一般应比计算数要再大一点2.表空间的创建与删除建立数据库时,Oracle会自动建立系统表空间SYSTEM和SYSAUX临时表空间TEMP撤销表空间UNDOTBS1一般情况下,建立表空间由特权用户或DBA完成表空间分类按构成文件分大文件表空间:只能包含1个大文件小文件表空间:可包含多个数据文件按表空间用途分系统表空间、撤销表空间、临时表空间数据表空间、索引表空间等按数据特性:永久表空间、临时表空间、撤销表空间2.表空间的创建与删除CREATE[SMALLFILE|BIGFILE][PERMANENT|TEMPORARY|UNDO]TABLESPACEtablespace[DATAFILE|TEMPFILE]datafile_tempfile_spec[,datafile_tempfile_spec...][{MINIMUMEXTENTinteger[K|M]|BLOCKSIZEinteger[K|M]|EXTENTMANAGEMENTLOCAL[AUTOALLOCATE|UNIFORM[SIZEinteger[K|M]]]|SEGMENTSPACEMANAGEMENT{MANUAL|AUTO}|{ONLINE|OFFLINE}|{LOGGING|NOLOGGING}}];创建表空间命令语法2.表空间的创建与删除'path_filename'[SIZEinteger[K|M]][REUSE][AUTOEXTEND{OFF|ON[NEXTinteger[K|M]][MAXSIZE{UNLIMITED|integer[K|M]}]}]datafile_tempfile_spec语法path_filename为包含路径的数据文件名。在路径中可用ORACLE_HOME和ORACLE_BASE这样的Oracle环境变量一般选择NOLOGGING以免影响系统性能SEGMENTSPACEMANAGEMENT一般采用自动(AUTO)管理使用BLOCKSIZE可以定义使用非标准大小块的表空间2.表空间的创建与删除例4.1建立名称为data_ts1的数据表空间,大小为50M,区间统一为128KB大小。EXA_04_01.SQL例4.2建立名称为temp_ts1的临时表空间,使用temp_ts1.dbf文件存放临时数据。EXA_04_02.SQL例4.3创建10号部门经理用户EMP_MGR10,指定该用户的数据表空间为data_ts1,临时表空间为temp_ts1。授权该用户可以查看SCOTT用户下雇员表中的记录。EXA_04_03.SQL例4.4创建和应用撤销表空间。EXA_04_04.SQL例4.5创建大文件表空间,并指定为SCOTT用户的默认数据表空间。EXA_04_05.SQL3.表空间维护CONNsystem/systempwd@orclSETPAGESIZE30COLtablespace_nameFORMATA12SELECTtablespace_name,block_size,segment_space_management,status,contents,allocation_type,bigfileFROMdba_tablespaces;表空间信息查询为表空间增加数据文件ALTERTABLESPACEtablespaceADDDATAFILEfilespec[autoextend_clause][,filespec[autoextend_clause]]…;3.表
本文标题:第04章Oracle数据库创建与表空间维护
链接地址:https://www.777doc.com/doc-14264 .html