《oracle第3章创建数据库.ppt》由会员分享,可在线阅读,更多相关《oracle第3章创建数据库.ppt(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Oracle 数据库基础教程2007第第3章创建数据库章创建数据库Oracle 数据库基础教程2007本章内容本章内容p数据库创建方法介绍p利用DBCA创建数据库p手动创建数据库p使用服务器端初始化参数文件Oracle 数据库基础教程2007本章要求本章要求p掌握使用数据库配置助手创建数据库方法p了解手动创建数据库的方法p掌握数据库初始化参数文件的使用Oracle 数据库基础教程20073.1创建数据库前的准备创建数据库前的准备p规划数据库p检查系统资源和配置p确定数据库创建方式Oracle 数据库基础教程2007规划数据库规划数据库p对数据库中可能包含的表、索引等对象的大小和数量进行规划,以
2、便估计数据库所需空间的大小;p对组成数据库的操作系统文件(如数据文件、控制文件、日志文件等)进行规划,结合数据库运行时的特点考虑它们在硬盘中的存放位置,以便适当地均衡磁盘I/O操作,改善数据库性能;p为新建数据库选择全局数据库名;p熟悉与数据库相关的初始化参数,包括初始化参数文件。p对系统中存在数据库进行备份。Oracle 数据库基础教程2007检查系统资源和配置检查系统资源和配置p已经安装了Oracle9i数据库服务器软件,并设置了各种必要的环境参数;p当前操作系统用户应该是系统管理员或是安装Oracle9i数据库服务器软件时的系统用户,具有足够的操作系统权限;p系统必须具有足够的物理内存,
3、保证Oracle数据库实例能被启动;p系统必须具有足够的硬盘空间,保证各种数据文件能够被成功创建。Oracle 数据库基础教程2007决定数据库创建方式决定数据库创建方式 p使用DBCA创建数据库p运行脚本手工创建数据库 Oracle 数据库基础教程20073.2使用使用DBCA创建数据库创建数据库p选择数据库模版 p设置数据库标识p设置数据库操作模式p设置初始化参数p设置数据存储p创建数据库 Oracle 数据库基础教程2007Oracle 数据库基础教程2007Oracle 数据库基础教程2007Oracle 数据库基础教程2007Oracle 数据库基础教程2007Oracle 数据库基
4、础教程2007 Oracle 数据库基础教程2007Oracle 数据库基础教程2007Oracle 数据库基础教程2007Oracle 数据库基础教程2007Oracle 数据库基础教程2007Oracle 数据库基础教程2007Oracle 数据库基础教程20073.3手动创建数据库手动创建数据库p确定新建数据库名称与实例名称;p确数据库管理员的认证方式;p创建初始化参数文件;p创建实例;p连接并启动实例;p使用CREATE DATABASE语句创建数据库;p创建附加的表空间;p运行脚本创建数据字典视图;p创建服务器初始化参数文件 Oracle 数据库基础教程2007p确定数据库名称与实例
5、名称 n在在“命令提示符命令提示符”界面中执行下列命令设置操作系统环境变量界面中执行下列命令设置操作系统环境变量ORACLE_SID:C:SET ORACLE_SID=MYNEWDB p确定数据库管理员的认证方式 n采用操作系统认证方式。保证当前操作系统用户必须是采用操作系统认证方式。保证当前操作系统用户必须是ORA_DBA操操作系统用户组的成员作系统用户组的成员 p创建初始化参数文件 n将将Oracle提供的文本初始化参数文件的样本复制一份,然后在此基础提供的文本初始化参数文件的样本复制一份,然后在此基础上进行修改,以创建自己的文本初始化参数文件。上进行修改,以创建自己的文本初始化参数文件。
6、nOracle 9i提供的文本初始化参数样本文件是位于提供的文本初始化参数样本文件是位于adminsamplepfile目录中的目录中的initsmpl.ora文件。文件。Oracle 数据库基础教程2007p连接Oracle实例 nC:SQLPLUS/NOLOGnSQLCONNECT sys/mynewdb AS SYSDBA p启动实例 nSQLSTARTUP NOMOUNTp使用CREATE DATABASE语句创建数据库 p创建附加的表空间n用用CREATE DATABASE语句创建的数据库中,只有语句创建的数据库中,只有SYSTEM,UNDOTBS,和,和TEMP这这3个表空间,还个
7、表空间,还需要创建其他一些额外的表空间。应该根据实际应用需要创建其他一些额外的表空间。应该根据实际应用需要,为数据库创建附加表空间。需要,为数据库创建附加表空间。Oracle 数据库基础教程2007p运行脚本创建数据字典视图 nSQLD:oracleora92rdbmsadmincatalog.sql;nSQLD:oracleora92rdbmsadmincatproc.sql;p创建服务器初始化参数文件 nSQLCREATE SPFILE FROM PFILE;p备份数据库 n将新建的数据库进行一次完全备份将新建的数据库进行一次完全备份Oracle 数据库基础教程20073.4数据库服务器初
8、始化参数文件数据库服务器初始化参数文件p数据库服务器参数文件概述 p创建数据库服务器初始化参数文件 p修改数据库服务器参数文件中的参数 p导出数据库服务器初始化参数文件 p查看数据库服务器初始化参数设置 Oracle 数据库基础教程20073.4.1 服务器参数文件概述服务器参数文件概述p文本初始化参数文件n缺点缺点 本地化本地化;修改不能被写入修改不能被写入.n默认存储位置与命名方式默认存储位置与命名方式nOra_homedatabase;init.orap服务器初始化参数文件n优点优点:只存在于服务器中只存在于服务器中;二进制文件二进制文件;确保同一个数据库确保同一个数据库多个实例都具有相
9、同的初始化参数设置多个实例都具有相同的初始化参数设置.n默认存储位置与命名方式默认存储位置与命名方式nORA_HOMEdatabase;spfile.oranCreate spfile=path from pfile=path;p启动数据库时,寻找初始化参数文件顺序nPFILE参数、默认的服务器初始化参数文件、默认的文参数、默认的服务器初始化参数文件、默认的文本初始化参数文件本初始化参数文件Oracle 数据库基础教程20073.4.2 创建服务器初始化参数文件创建服务器初始化参数文件p创建一个文本初始化参数文件,文件中包含所有参数设置;p连接到Oracle数据库;p利用文本初始化参数文件创建
10、服务器端初始化参数文件。nCREATE SPFILE=pathfilename FROM PFILE=pathfilename;Oracle 数据库基础教程2007修改服务器参数文件中的参数修改服务器参数文件中的参数pALTER SYSTEM SET parameter_name=value SCOPE=SPFILE|MEMORY|BOTH;SCOPE 子句说 明SCOPE=SPFILE对参数的修改仅记录在服务器初始化参数文件中,对动态参数和静态参数都适用,修改后的参数在下一次数据库启动时生效SCOPE=MEMORY对参数的修改仅记录在内存中,只适合动态参数的修改,修改后立即生效。由于修改结果
11、并不会保存到服务器初始化参数文件中,因此下一次启动数据库实例时仍然采用修改前的参数设置SCOPE=BOTH对参数的修改同时保存到服务器初始化参数文件和内存中,只适合对动态参数的修改,更改后立即生效,并且下一次启动数据库实例时将使用修改后的参数设置。当执行ALTER SYSTEM语句时,如果没有指定SCOPE子句,那么Oracle默认将SCOPE设置为BOTHOracle 数据库基础教程2007p注意:n动态参数是指在数据库运行过程中可以进行修改并能动态参数是指在数据库运行过程中可以进行修改并能立即生效的参数,静态参数是指修改后只能在数据库立即生效的参数,静态参数是指修改后只能在数据库实例下一次
12、启动时才能生效的参数。实例下一次启动时才能生效的参数。n如果当前数据库实例使用的是服务器初始化参数文件,如果当前数据库实例使用的是服务器初始化参数文件,那么对静态参数修改时,那么对静态参数修改时,SCOPE子句只能设置为子句只能设置为SPFILE。n如果当前数据库实例使用的是文本初始化参数文件,如果当前数据库实例使用的是文本初始化参数文件,那么那么SCOPE子句的设置只能为子句的设置只能为MEMORY。Oracle 数据库基础教程2007p例如,修改动态参数JOB_QUERY_PROCESSES,可以根据修改后立即生效、下一次启动数据库实例时生效,以及当前立即生效且下一次数据库实例启动也生效这
13、3种情况进行SCOPE子句的设置。nSQLALTER SYSTEM SET JOB_QUERY_PROCESSES=50 SCOPE=MEMORY;nSQLALTER SYSTEM SET JOB_QUERY_PROCESSES=50 SCOPE=SPFILE;nSQLALTER SYSTEM SET JOB_QUERY_PROCESSES=50 SCOPE=BOTH;Oracle 数据库基础教程20073.4.4 导出服务器初始化参数文件导出服务器初始化参数文件p原因n创建服务器初始化参数文件的备份;创建服务器初始化参数文件的备份;n为了便于查找系统故障原因等,需要获取当前数为了便于查找系统
14、故障原因等,需要获取当前数据库实例所使用的所有初始化参数值;据库实例所使用的所有初始化参数值;n为了修改服务器初始化参数文件中参数值,先将为了修改服务器初始化参数文件中参数值,先将服务器初始化参数文件导出为文本初始化参数文服务器初始化参数文件导出为文本初始化参数文件,然后对文本初始化参数文件中的参数进行修件,然后对文本初始化参数文件中的参数进行修改,最后根据修改后的文本初始化参数文件创建改,最后根据修改后的文本初始化参数文件创建新的服务器初始化参数文件。新的服务器初始化参数文件。p语法nCREATE PFILE=path FROM SPFILE=pathOracle 数据库基础教程2007查看
15、初始化参数设置查看初始化参数设置p1、SHOW PARAMETERS命令命令psql.show parameterspSqlshow parameters db_files p、V$PARAMETER或或V$PARAMETER2 pSqlselect name,value from V$PARAMETER where name=db_files;p、CREATE PFILE p、V$SPPARAMETERpSqlSqlselect name,value from V$SPPARAMETERpwhere name=instance_name;p p、利用企业管理器,查看数据库参数设置、利用企业管
16、理器,查看数据库参数设置 p例程中的配置下所有初始化参数Oracle 数据库基础教程2007总结总结p数据库创建的准备p利用DBCA创建数据库p手动创建数据库p数据库服务器参数文件Oracle 数据库基础教程2007数据库的创建数据库的创建 在Windows下可以使用DBCA向导创建数据库,也可以使用手工创建数据库。手工创建数据库必须先确定实例名、初始化参数文件、创建数据库实例,启动实例,然后使用CREATE DATABASE语句创建数据库、运行脚本以创建数据字典视图。Oracle 数据库基础教程20071 确定数据库名、实例名、服务名和确定数据库名、实例名、服务名和DBA认证方式认证方式 d
17、b_name、instance_name、service_name和db_domain分别表示数据库名、实例名、服务名和域名。DBA认证方式可以使用操作系统认证方式或口令文件认证方式。例如:db_name=exampleinstance_name=example Oracle 数据库基础教程20072 创建初始化参数文件 在安装完毕Oracle服务器软件后,可以在oracle_homeadminsamplepfile目录中找到一个名为initsample.ora的文件,该文件是Oracle所提供的一个初始化参数样本文件。首先拷贝一个参数文件到d:oracleadminexamplepfile目
18、录,并且文件名为init.ora。然后修改其中的参数。有些必要的参数必须在创建数据库之前确定,因为这些参数在数据库创建之后将不能修改。需要修改的参数有:db_name、instance_name、db_domain、service_name、control_files、db_block_size、user_dump_dest和background_dump_dest。Oracle 数据库基础教程2007按下面的方法修改参数,创建example数据库。其他的参数可以在创建完数据库后再修改。db_name=exampleinstance_name=examplecontrol_files=(c:o
19、racleoradataexamplecontrol01.ctl,d:oracleoradataexample control02.ctl,e:oracleoradataexample control03.ctl)db_block_size=4096user_dump_dest=d:oracleadminexampleudumpbackground_dump_dest=d:oracleadminexamplebdump Oracle 数据库基础教程20073 创建数据库实例创建数据库实例在Windows下,用oradim命令创建数据库实例example,启动方式为手工。c:oradim-new
20、-sid example-startmode manual -pfile d:oracleadminexamplepfileinit.ora4 启动实例、创建数据库启动实例、创建数据库使用oradim启动服务 c:oradim-startup-sid example-starttype srvc 连接到实例,并用startup启动实例。c:set oracle_sid=example c:sqlplus/nologsqlconnect/as sysdbasqlstartup nomount Oracle 数据库基础教程2007使用create database命令创建数据库example。cr
21、eate database example maxinstance 1 maxloghistory 1000 maxlogfiles 32 maxlogmembers 5 maxdatafiles 100logfile group l(d:oracleoradataexampleredo1a.log,d:oracleoradataexampleredo1b.log)size lM,group 2(d:oracleoradataexampleredo2a.log,d:oracleoradataexampleredo2b.log)size lMdatafile d:oracleoradataexa
22、mplesystem01.dbf size l00Mcharcter set ZHSl6GBKnational charcter set ZHSl6GBK;Oracle 数据库基础教程2007创建附加的表空间创建附加的表空间 一般至少创建两个附加表空间用于存放用户数据的用户表空间和存放索引的索引表空间。Create tablespace users loggingDatafile d:ora01users01.dbfSize 25m reuseAutoextend on next 1m maxsize unlimitedExent management local;Create tablesp
23、ace index loggingDatafile d:ora01index01.dbfSize 25m reuseAutoextend on next 1m maxsize unlimitedExent management local;Oracle 数据库基础教程20075 创建数据字典视图 当执行CREATE DATABASE命令建立数据库时,Oracle会依据sql.bsq文件自动建立数据字典基表。数据字典基表存放着Oracle数据库的系统信息,其内容只能由特权用户访问,而普通用户则无法访问其信息。为了使得普通用户将来可以访问Oracle系统信息,必须要执行catlog.sql,cat
24、proc.sql安装数据字典视图和PL/SOL包,这两个SOL脚本文件存放在oracle_homerdbmsadmin目录中。Oracle 数据库基础教程20071.安装数据字典视图数据字典视图用于解码数据字典基表所存放的信息,运行catalog.sql脚本可以安装大多数数据字典视图。但需注意,必须要以sys用户运行该脚本,如下所示:sqlconnect/as sysdbasql%oracle_home%rdbmsadmincatalog.sql 2安装PL/SQL包 包用于封装相关的PL/SQL过程和函数,Oracle提供了许多系统包。运行catproc.sql脚本会安装所有PL/SQL系统
25、包,同时也会安装部分数据字典视图,必须以sys用户运行。sqlconnect/as sysdbasql%oracle_home%rdbmsadmincatproc.sql Oracle 数据库基础教程20073安装Java程序包(可选)Oracle 8i/9i的最主要扩展就是增强了对Internet以及数据仓库的支持。通过在Oracle 8i/9i数据库中集成JServer,使得开发人员可以直接在Oracle数据库中开发Java存储过程、分布式组件CORBA和EJB、Java Server Page等。另外,从Oracle817版本开始,Oracle数据库产品还集成了Apache Web Se
26、rver和WebDB,这使得Oracle不仅具有传统关系数据库的功能而且也完全集成了应用服务器和Web服务器的所有功能。这样,在安装了817以上版本的Oracle数据库产品之后,你就可以直接开发各种类型的Web应用了。如果你要使用这些新特性,必须要安装JServer,这是通过运行SQL脚本initjvm.sql来完成的,必须要以sys用户运行该脚本,如下所示:sqlconnect/as sysdbasql%oracle_home%javaminstallinitjvm.sql Oracle 数据库基础教程20074安装PROFILE 当运行SQL*Plus或SQL*Worksheet访问Ora
27、cle数据库时,这两个应用工具会访问同义词PRODUCT_USER_PROFILE取得用户信息。如果未安装PROFILE,则在登录时会显示如下警告错误:Error accessing PRODUCT_USER_PROFILE Warning:Product user profile not loaded!You may need to run PUPBLD.SQL as SYSTEM 安装PROFILE是通过运行SQL脚本pupbld.sql来完成的。需要注意的是,你必须要以system用户运行该脚本,如下所示:sqlconnect system/managersql%oracle_homeo%sqlplusadminpupbld.sql