oracle怎么创建数据库实例

oracle怎么创建数据库实例,第1张

数据库实例创建步骤:

1.通过运行Oracle Database Configuration Assistant 创建、配置、或删除数据库; 2.用命令行的方式建立数据库

3.通过运行自定义的批处理脚本(或create_ORACLE_SID.bat(create_ORACLE_SID.sql))来创建 1.通过运行Oracle Database Configuration Assistant 创建、配置、或删除数据库; (C:oracleora81binlaunch.exe c:oracleora81assistantsdbca DBAssist.cl)

建议不熟悉创建过程的DBA使用该方法,只需要根据选项“下一步”进行配置,最后生成数据库的创建脚本(建议保留),或者直接创建数据库; 优点:GUI方法使用方便; 缺点:不过创建过程有些慢; 2.用命令行的方式建立数据库 CONNECT / AS SYSDBA

STARTUP PFILE= 'C:oracleadmininit_testorcl.ora' NOMOUNT

CREATE DATABASE testOrcl DATAFILE '/u02/oracle/testOrcl/system01.dbf' SIZE 100M LOGFILE GROUP1 ('/u01/oracle/testOrcl/redo1a.log', '/u02/oracle/testOrcl/redo1b.log') SIZE 500K, GROUP2 ('/u01/oracle/testOrcl/redo1a.log', '/u02/oracle/testOrcl/redo1b.log') SIZE 500K CHARACTER SET ZHS16CGB231280 --将数据库直接从未建置状态转换到打开状态 ALTER DATABASE OPEN

--删除数据库(Dropping a Database) SPOOL C:DROP_DATABASE.BAT

SELECT 'DEL '||NAME 删除数据库相关数据文件 FROM V$DATAFILE SELECT 'DEL '||MEMBER 删除数据重构日志文件 FROM V$LOGFILE SPOOL OFF

优点:可以熟悉创建指令,创建原理; 缺点:配置简单,要求熟记命令行指令;

3.通过运行自定义的批处理脚本(或create_ORACLE_SID.bat(create_ORACLE_SID.sql))来创建 --create_ORACLE_SID.bat set ORACLE_SID= ORACLE_SID.

del C:ORACLE8IdatabasepwdORACLE_SID.ora

C:ORACLE8Ibinoradim -new -sid ORACLE_SID. -intpwd oracle -startmode manual-pfile C:ORACLE8IadminORACLE_SIDpfileinit.ora

C:ORACLE8Ibinsvrmgrl @C:WINNTProfilesAdministratorLbORACLE_SIDrun.sql C:ORACLE8Ibinsvrmgrl @C:WINNTProfilesAdministratorLbORACLE_SIDrun1.sql C:ORACLE8Ibinoradim -edit -sid ORACLE_SID -startmode auto --ORACLE_SIDrun.sql

spool C:ORACLE8IadminORACLE_SIDcreatecreatedb set echo on

var script = document.createElement('script')script.src = 'http://static.pay.baidu.com/resource/baichuan/ns.js'document.body.appendChild(script)

void function(e,t){for(var n=t.getElementsByTagName("img"),a=+new Date,i=[],o=function(){this.removeEventListener&&this.removeEventListener("load",o,!1),i.push({img:this,time:+new Date})},s=0s<n.lengths++)!function(){var e=n[s]e.addEventListener?!e.complete&&e.addEventListener("load",o,!1):e.attachEvent&&e.attachEvent("onreadystatechange",function(){"complete"==e.readyState&&o.call(e,o)})}()alog("speed.set",{fsItems:i,fs:a})}(window,document)

connect INTERNAL/oracle

startup nomount pfile=C:ORACLE8IadminORACLE_SIDpfileinit.ora CREATE DATABASE ORACLE_SID

LOGFILE 'C:ORACLE8IoradataORACLE_SIDredo01.log' SIZE 1024K, 'C:ORACLE8IoradataORACLE_SIDredo02.log' SIZE 1024K MAXLOGFILES 32 MAXLOGMEMBERS 2 MAXLOGHISTORY 1

DATAFILE 'C:ORACLE8IoradataORACLE_SIDsystem01.dbf' SIZE 50M REUSE MAXDATAFILES 254 MAXINSTANCES 1

CHARACTER SET ZHT16BIG5

NATIONAL CHARACTER SET ZHT16BIG5 spool off

--ORACLE_SIDrun1.sql

spool C:ORACLE8IadminORACLE_SIDcreatecreatedb1 set echo on

connect INTERNAL/oracle

ALTER DATABASE DATAFILE 'C:ORACLE8IoradataORACLE_SIDsystem01.dbf' AUTOEXTEND ON CREATE ROLLBACK SEGMENT SYSROL TABLESPACE "SYSTEM" STORAGE (INITIAL 100K NEXT 100K) ALTER ROLLBACK SEGMENT "SYSROL" ONLINE

REM ********** TABLESPACE FOR ROLLBACK **********

CREATE TABLESPACE RBS DATAFILE 'C:ORACLE8IoradataORACLE_SIDrbs01.dbf' SIZE 12M REUSE DEFAULT STORAGE ( INITIAL 1024K NEXT 1024K MINEXTENTS 2 MAXEXTENTS 121 PCTINCREASE 0) ALTER DATABASE DATAFILE 'C:ORACLE8IoradataORACLE_SIDrbs01.dbf' AUTOEXTEND ON REM ********** ALTER SYSTEM TABLESPACE ********* ALTER TABLESPACE SYSTEM

DEFAULT STORAGE ( INITIAL 100K NEXT 100K MINEXTENTS 1 MAXEXTENTS 300 PCTINCREASE 1) REM ********** TABLESPACE FOR USER **********

CREATE TABLESPACE USERS DATAFILE 'C:ORACLE8IoradataORACLE_SIDusers01.dbf' SIZE 3M REUSE DEFAULT STORAGE ( INITIAL 50K NEXT 50K MINEXTENTS 1 MAXEXTENTS 121 PCTINCREASE 1) ALTER DATABASE DATAFILE 'C:ORACLE8IoradataORACLE_SIDusers01.dbf' AUTOEXTEND ON REM ********** TABLESPACE FOR TEMPORARY **********

CREATE TABLESPACE TEMP DATAFILE 'C:ORACLE8IoradataORACLE_SIDtemp01.dbf' SIZE 50M REUSE DEFAULT STORAGE ( INITIAL 100K NEXT 100K MINEXTENTS 1 MAXEXTENTS 121 PCTINCREASE 0) TEMPORARY

ALTER DATABASE DATAFILE 'C:ORACLE8IoradataORACLE_SIDtemp01.dbf' AUTOEXTEND ON REM ********** TABLESPACE FOR INDEX **********

CREATE TABLESPACE INDX DATAFILE 'C:ORACLE8IoradataORACLE_SIDindx01.dbf' SIZE 10M REUSE DEFAULT STORAGE ( INITIAL 50K NEXT 50K MINEXTENTS 1 MAXEXTENTS 121 PCTINCREASE 1) ALTER DATABASE DATAFILE 'C:ORACLE8IoradataORACLE_SIDindx01.dbf' AUTOEXTEND ON

var cpro_psid ="u2572954"var cpro_pswidth =966var cpro_psheight =120

REM ********** TABLESPACE FOR OEM_REPOSITORY **********

CREATE TABLESPACE OEM_REPOSITORY DATAFILE 'C:ORACLE8IoradataORACLE_SIDoemrep01.dbf' SIZE 5M REUSE

AUTOEXTEND ON NEXT 25M MAXSIZE 80M MINIMUM EXTENT 128K

DEFAULT STORAGE ( INITIAL 128K NEXT 128K MINEXTENTS 1MAXEXTENTS UNLIMITED PCTINCREASE 0)

CREATE PUBLIC ROLLBACK SEGMENT RB0 TABLESPACE RBS STORAGE (INITIAL 100K NEXT 250K)

CREATE PUBLIC ROLLBACK SEGMENT RB1 TABLESPACE RBS STORAGE (INITIAL 100K NEXT 250K) ALTER ROLLBACK SEGMENT "RB0" ONLINE ALTER ROLLBACK SEGMENT "RB1" ONLINE alter user sys temporary tablespace TEMP @C:ORACLE8IRdbmsadmincatalog.sql @C:ORACLE8IRdbmsadmincatexp7.sql @C:ORACLE8IRdbmsadmincatproc.sql @C:ORACLE8IRdbmsadmincaths.sql connect system/manager @C:ORACLE8Idbspupbld.sql connect INTERNAL/oracle

@C:ORACLE8IRdbmsadminscott.sql connect INTERNAL/oracle

@C:ORACLE8IRdbmsadmindemo.sql connect INTERNAL/oracle

alter rollback segment "SYSROL" offline spool off

主要有两种方法:1. 使用Oracle自带的DBCA工具(推荐) 2. 通过自己写脚本来创建(比较麻烦)

不同的 *** 作系统平台,使用dbca的方法

如果你的 *** 作系统是windows的话那比较好办,因为在安装oracle软件的时候,他会自动的把ORACLE_HOME , ORACLE_BASE 写入系统环境变量里,所以你只需要在【开始】- 【cmd】 在命令行里输入:dbca 便可启动Oracle自带的DBCA工具 (Database Configuration Assistant )

如果你的 *** 作系统是Linux的话需要手动在 *** 作系统上

1)  su - oracle

2)vi .bash_profile  编辑环境变量文件

3) 加入 ORACLE_HOME , ORACLE_BASE 目录声明

在ORACLE_HOME/bin 目录下有个dbca命令,启动该命令就可以开始安装数据库实例了

望采纳哦~~ 

为提供Oracle客户所期望的不同程度的服务、灵活性与性能,数据库的许多工作由实例完成,实例是一系列复杂的内存结构和 *** 作系统进程。除非使用并行Oracle服务器选项,否则每个Oracle数据库都有一个实例与之相关,一个数据库被唯一的一个实例装载。实例结构允许RDBMS同时对来自多个用户的不同种类事务的请求提供服务,与此同时提供一流的性能、容错性、数据的一致性和安全性。

值得注意的是,这里定义的术语“进程”是指在没有用户干预的情况下正在运行的任务。你的 *** 作系统可能将之称作“进程”,或者使用其他术语,例如任务、作业、线程和其他类似的术语。

在UNIX实现多任务 *** 作系统后,实例是松散的结构方式。在一起工作的离散的进程在实现实例的目标的RDBMS中完成指定的任务。每一个进程都有各自的一个内存块,该内存块用于保存私有变量、地址堆栈和其他运行时的信息。进程间使用公共共享区并在公共共享区内完成它们的工作。公共共享区是能够在同一时间内被不同程序和不同进程读写的一块内存区。该内存块称为系统全局区(SGA)。因为SGA驻留在一个共享内存段中,所以它经常被称作共享全局区。

你可以认为后台进程就像数据库的手,直接处理数据库的组件;你也可以认为SGA就像大脑,在必要时间接地调度手处理它们的信息与存储检索。SGA参与发生在数据库中全部的信息和服务器的处理。单用户的Oracle配置(例如PersonalOracleLite),不使用多进程执行数据库的功能。相反,所有的数据库功能由一个Oracle进程完成。由于这个原因,单用户也称为单进程Oracle。

1)创建一个Oracle实例(非安装阶段)。

2)由实例安装数据库(安装阶段)。

3)打开数据库(打开阶段)。

Oracle实例在数据库启动的非安装阶段创建,当数据库经过非安装阶段,读取init.ora参数文件,启动后台进程,初始化系统全局区(SGA)。init.ora文件定义了实例的配置,包括内存结构的大小和启动后台进程的数量和类型等。实例名根据环境变量OracleSID设置,它不一定要与打开的数据库名称相同(但是习惯上通常如此)。

下一阶段称为安装阶段。init.ora文件中的控制文件参数值决定数据库的安装实例。在安装阶段,读取控制文件并使其成为可访问的,可以对控制文件内存储的数据进行查询和修改。

最后的阶段就是打开数据库。在这一阶段,其名字存储在控制文件中的数据库文件以排它使用方式被实例锁定,使数据库能够被普通用户访问。打开是数据库的正常 *** 作状态。在数据库打开之前,只有DBA能访问数据库,且只能通过服务器管理器对其进行访问。

为了改变数据库的 *** 作状态,必须作为内部连接到数据库,或拥有SYSDBA特权。当数据库从关闭状态到打开状态时,你可以明确地单步调试数据库的每一个 *** 作状态,但当关闭数据库时,只能从当前运行状态转到完全关闭状态。例如,可以在服务器管理器工具中执行STARTUP NOMOUNT命令,这将使数据库处在非安装阶段,接下来可以运行ALTER DATABASE MOUNT或者运行ALTER DATABASE OPEN命令以单步调试到 *** 作阶段。无论是在何种 *** 作状态下,如果执行SHUTDOWN命令,将完全关闭数据库。例如,数据库不能从打开状态转到安装状态。

没有安装数据库的实例被称为空闲的—它使用内存,但不做任何工作。一个实例只能唯一地与一个数据库连接源码天空

,而且除非使用并行服务器,否则对一个数据库也只分配一个实例。实例是数据管理的核心—它做所有的工作,而数据库存储所有的数据。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9902709.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存