搜档网
当前位置:搜档网 › Oracle数据库DBCA删除数据库实例

Oracle数据库DBCA删除数据库实例

Oracle数据库DBCA删除数据库实例
Oracle数据库DBCA删除数据库实例

Oracle数据库DBCA删除数据库实例

五、使用DBCA删除数据库

(1)选择“开始”—>“程序”—>Oracle-Oracle10g_home1—>配置和移植工具—>Database Configuration Assistant命令,启动DBCA,出现“欢迎使用”窗口,如图1:

(2)单击“下一步”按钮,出现“操作”窗口,并选择“删除数据库”,如图19:

图19

(3)单击“下一步”按钮,出现“数据库”窗口,在数据库列表中选择一个要删除的数据库,本例选择student,如图20:

图20

(4)单击“完成”按钮,出现确认是否继续窗口,如图21:

图21

(5)单击“是”按钮,出现自动删除数据库的过程窗口,如图22:

图22

(6)最后自动出现数据库删除完毕窗口,单击“是”按钮,数据库删除完毕

ORACLE数据库与实例的关系

ORACLE数据库与实例的关系 1 数据库名 1.1 数据库名的概念 数据库名(db_name)就是一个数据库的标识,就像人的身份证号一样。如果一台机 器上装了多个数据库,那么每一个数据库都有一个数据库名。在数据库安装或创建完成之后,参数DB_NAME被写入参数文件之中。 数据库名在$Oracle_HOME/admin/db_name/pfile/init.ora(或 $ORACLE_BASE/admin/db_name/pfile/init.ora或$ORACLE_HOME/dbs/SPFILE<实 例名>.ORA)文件中 ########################################### # Database Identification ########################################### db_domain="" db_name=orcl 在创建数据库时就应考虑好数据库名,并且在创建完数据库之后,数据库名不宜修改,即使要修改也会很麻烦。因为,数据库名还被写入控制文件中,控制文件是 以二进制型式存储的,用户无法修改控制文件的内容。假设用户修改了参数文件中的数据库名,即修改DB_NAME的值。但是在Oracle启动时,由于参数文件中的DB_NAME与控制文件中的数据库名不一致,导致数据库启动失败,将返回ORA-01103错误。 1.2 数据库名的作用 数据库名是在安装数据库、创建新的数据库、创建数据库控制文件、修改数据结构、备份与恢复数据库时都需要使用到的(注意这些时候不能使用sid,还有alter database时都是使用数据库名)。 有很多Oracle安装文件目录是与数据库名相关的,如: winnt: F:\oracle\product\10.2.0\oradata\DB_NAME\...

Oracle数据库实例及其相关概念

Oracle数据库实例及其相关概念2010-11-24 00:00 出处:中国IT实验室作者:佚名 完整的Oracle数据库通常由两部分组成:Oracle数据库实例和数据库。 用数据库安全策略防止权限升级攻击 C++虚函数的显式声明 完整的Oracle数据库通常由两部分组成:Oracle数据库实例和数据库。 1)数据库是一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等); 2)Oracle数据库实例则是一组Oracle后台进程/线程以及在服务器分配的共享内存区。 在启动Oracle数据库服务器时,实际上是在服务器的内存中创建一个Oracle实例(即在服务器内存中分配共享内存并创建相关的后台内存),然后由这个Oracle数据库实例来访问和控制磁盘中的数据文件。Oracle有一个很大的内存快,成为全局区(SGA)。 一、数据库、表空间、数据文件 1.数据库 数据库是数据集合。Oracle是一种数据库管理系统,是一种关系型的数据库管理系统。 通常情况了我们称的“数据库”,并不仅指物理的数据集合,他包含物理数据、数据库管理系统。也即物理数据、内存、操作系统进程的组合体。 数据库的数据存储在表中。数据的关系由列来定义,即通常我们讲的字段,每个列都有一个列名。数据以行(我们通常称为记录)的方式存储在表中。表之间可以相互关联。以上就是关系模型数据库的一个最简单的描述。

当然,Oracle也是提供对面象对象型的结构数据库的最强大支持,对象既可以与其它对象建立关系,也可以包含其它对象。关于OO型数据库,以后利用专门的篇幅来讨论。一般情况下我们的讨论都基于关系模型。 2.表空间、文件 无论关系结构还是OO结构,Oracle数据库都将其数据存储在文件中。数据库结构提供对数据文件的逻辑映射,允许不同类型的数据分开存储。这些逻辑划分称作表空间。 表空间(tablespace)是数据库的逻辑划分,每个数据库至少有一个表空间(称作SYSTEM表空间)。为了便于管理和提高运行效率,可以使用一些附加表空间来划分用户和应用程序。例如:USER表空间供一般用户使用,RBS表空间供回滚段使用。一个表空间只能属于一个数据库。 每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件(datafile)。一个数据文件只能属于一个表空间。在Oracle7.2以后,数据文件创建可以改变大小。创建新的表空间需要创建新的数据文件。数据文件一旦加入到表空间中,就不能从这个表空间中移走,也不能与其它表空间发生联系。 如果数据库存储在多个表空间中,可以将它们各自的数据文件存放在不同磁盘上来对其进行物理分割。在规划和协调数据库I/O请求的方法中,上述的数据分割是一种很重要的方法。 3.Oracle数据库的存储结构分为逻辑存储结构和物理存储结构: 1)逻辑存储结构:用于描述Oracle内部组织和管理数据的方式; 2)物理存储结构:用于描述Oracle外部即操作系统中组织和管理数据的方式。 二、Oracle数据库实例

Oracle经典案例代码

ORACLE经典案例 ORACLE--E-001)员工信息综合查询 (ORACLE 定义 ORACLE-F-001——ORACLE-F-005的综合练习: 1.用sqlplus连接数据库时,为什么会出Oracle not available错误? 2.找出员工的姓中(last_name)第三个字母是a的员工名字 3.找出员工名字中含有a和e的 4.找出所有有提成的员工,列出名字、工资、提出,显示结果按工资从小到大,提成从小 到大 5.42部门有哪些职位 6.哪些部门不是Sales部 7.显示工资不在1000到1550之间的员工信息:名字、工资,按工资从大到小排序。 8.显示职位为Stock Clerk和Sales Representative,年薪在14400和17400之间的员工 的信息:名字、职位、年薪。 9.解释select id ,commission_pct from s_emp where commission_pct is null和select id , commission_pct from s_emp where commission_pct = null的输出结果。 10.select语句的输出结果为 select * from s_dept; select * from s_emp; select * from s_region; select * from s_customer; …… 当前用户有多少张表,结果集有多少条记录。 11.判断select first_name , dept_id from s_emp where salary > '1450'是否抱错,为 什么?

ORACLE创建实例

ORACLE创建实例是我们最常用的操作之一,下面就为您详细介绍ORACLE创建实例的全过程,希望对您能够有所帮助。 一、ORACLE创建实例过程: 1、安装好ORACLE服务端。 2、ORACLE创建实例,使用ORAHOME目录下的"Configuration and Migration Tools"下的"Database Configuration Assistant"工具。 3、步骤2:选择"创建数据库"。 4、步骤3:选择数据库模板。 5、步骤4:选择"专用服务器模式"。 6、步骤5:设置初始化参数。 7、其它默认,点击"完成"。 创建一个数据库实例,在系统服务里会增加一个服务,名为:"OracleServer"+所创建的数据库实例的SID,该服务需要启动。 二、接着需要配置监听文件,如果没有的话,在OEM中"将数据库添加到数",打开,输入SYSTEM/PASSWORD,会提示没有监听器的。 监听文件路径:ORAHOME/ora92/network/admin/listener.ora 另外监听器日志文件路径是:ORAHOME/ora92/network/log/listener.log 用编辑器打开listener.ora文件,修改设置信息。例如(下面是一个完成的文件内容): # LISTENER.ORA Network Configuration File: D:\oracle\ora92\network\admin\listener.ora # Generated by Oracle configuration tools. LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0)) ) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 86.16.24.88)(PORT = 1521)) ) ) )

修改oracle实例名(sid)和数据库名(db_name)

修改oracle实例名(sid)和数据库名(db_name) 有时我们需要修改数据库的sid和dbname,除了使用rman进行备份恢复之外,也可以通过手工方式修改,主要由两个主要过程完成: 1、修改实例名(SID) 2、修改数据库名(dbname) 下面演示将数据库sid和dbname由orcl修改为cnhtm的过程: 1、修改实例名(sid) 1.1、检查原来的数据库实例名(sid) oracle@oracle[/home/oracle]> echo $ORACLE_SID orcl oracle@oracle[/home/oracle]> sqlplus / as sysdba SQL*Plus: Release 10.2.0.1.0 - Production on Sun Dec 20 11:14:49 2009 Copyright (c) 1982, 2005, Oracle. All rights reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options sys@ORCL> select instance from v$thread; INSTANCE -------------------------------------------------------------------------------- orcl 1.2、关闭数据库 注意不能用shutdown abort,只能是shutdown immediate或shutdown normal

ORACLE_BASE、ORACLE_HOME有什么区别

ORACLE_BASE、ORACLE_HOME有什么区别 比如oracle 有两款产品,数据库以及其他的。在装的过程中都会装载ORACLE_BASE目录下。ORACLE_HOME 目录就是数据库的家目录。 例如:如果装了2个版本的oracle,那么ORACLE_BASE可以是一个,但ORACLE_HOME是2个。 ORACLE_BASE下是admin和product ORACLE_HOME下则是ORACLE的命令、连接库、安装助手、listener等等一系列的东东。 这只是ORACLE自己的定义习惯。ORACLE_HOME比ORACLE_BASE目录要更深一些。也就是说:ORACLE_HOME=$ORACLE_BASE/product/version ORACLE_BASE是oracle的根目录,ORACLE_HOME是oracle产品的目录。 简单说,你如果装了2个版本的oracle,那么ORACLE_BASE可以是一个,但ORACLE_HOME是2个 全局数据库名用于区别分布式数据库各个不同机器上的实例。 SID用于区别同一台机器上的不同实例, 即一个用于外部区分。 一个用于内部区分。 关于数据库名(db_name)、实例名(instance_name)、ORACLE_SID -------------------------------------------------------------------------------- https://www.sodocs.net/doc/c04956559.html,发布日期:2004-9-16 浏览次数: 作者:jrlee 关于数据库名(db_name)、实例名(instance_name)、ORACLE_SID 最近因看到论坛有人问起这方面的东西,将自己的理解加上查阅相关资料整理如下,如果不全或不当的地方,望指正并补全它。 数据库名(DB_NAME)、实例名(Instance_name)、以及操作系统环境变量(ORACLE_SID) 在ORACLE7、8数据库中只有数据库名(db_name)和数据库实例名(instance_name)。在ORACLE8i、9i中出现了新的参数,即数据库域名(db_domain)、服务名(service_name)、以及操作系统环境变量(ORACLE_SID)。这些都存在于同一个数据库中的标识,用于区分不同数据库的参数。 一、什么是数据库名(db_name)? 数据库名是用于区分数据的内部标识,是以二进制方式存储于数据库控制文件中的参数,在数据安装或

如何区分Oracle的数据库,实例,服务名,SID

什么是数据库,其实很简单,数据库就是存储数据的一种媒介。比如常用的文件就是一种,在Oracle10G中,数据的存储有好几种。第一种是文件形式,也就是在你的磁盘中创建一批文件,然后在这些文件中存储信息。第二种就是磁盘阵列形式,这个是什么意思呢,这个就是说明数据库不是存放为某个文件,而是把一个或者多个磁盘格式化成Oracle的一种格式了,等于整个磁盘就是存放Ora cle数据库的,不能作为别的用途。这样的优点是存储性能高,因为不再借助别的文件格式了,而是把整个磁盘都成为Oracle最适应的文件系统格式。当然还可能有别的形式,比如网络什么的。不过我们最常用的还是文件格式的,在文件格式中,数据库指的就是那些数据文件,控制文件以及REDO文件等等一系列文件。 而什么是Instance呢,Instance其实就是指的操作系统中一系列的进程以及为这些进程所分配的内存块。在Oracle中,我们可以新建一个Oracle的Insta nce,这个时候虽然有了进程还有SGA等一系列的内存快,但是这个时候并没有把数据库文件读取进来。所以只是一个实例,在后来,你可以通过命令手动或者自动地把数据库文件加载进我们的数据库Instance中,这个时候的数据库才可以让我们真正的开始访问操作。 所以说,数据库的应用如果想实现,数据库和数据库Instance是缺一不可的,如果只有数据库的那些文件,那么,只能代表数据在这个文件中,但是我们无法直接进行操作。而如果只有数据库Instance,那么我们虽然可以急性操作,但是也不知道操作哪些数据,操作生成的数据也无法保存等等。所以,当一个Or acle Instance真正Load了一个Oracle Database了以后,数据库才可以被我们使用。

ORACLE_SID

详解:oracle10G 数据库名、实例名、ORACLE_SID 【转载】 数据库名、实例名、数据库域名、全局数据库名、服务名, 这是几个令很多初学者容易混淆的概念。相信很多初学者都与我一样被标题上这些个概念搞得一头雾水。我们现在就来把它们弄个明白。 一、数据库名 什么是数据库名? 数据库名就是一个数据库的标识,就像人的身份证号一样。他用参数DB_NAME表示,如果一台机器上装了多全数据库,那么每一个数据库都有一个数据库名。在数据库安装或创建完成之后,参数DB_NAME被写入参数文件之中。格式如下: DB_NAME=myorcl ... 在创建数据库时就应考虑好数据库名,并且在创建完数据库之后,数据库名不宜修改,即使要修改也会很麻烦。因为,数据库名还被写入控制文件中,控制文件是以二进制型式存储的,用户无法修改控制文件的内容。假设用户修改了参数文件中的数据库名,即修改DB_NAME 的值。但是在Oracle启动时,由于参数文件中的DB_NAME与控制文件中的数据库名不一致,导致数据库启动失败,将返回ORA-01103错误。 数据库名的作用 数据库名是在安装数据库、创建新的数据库、创建数据库控制文件、修改数据结构、备份与恢复数据库时都需要使用到的。 有很多Oracle安装文件目录是与数据库名相关的,如: winnt: d:\oracle\product\10.1.0\oradata\DB_NAME\... Unix: /home/app/oracle/product/10.1.0/oradata/DB_NAME/... pfile: winnt: d:\oracle\product\10.1.0\admin\DB_NAME\pfile\ini.ora Unix: /home/app/oracle/product/10.1.0/admin/DB_NAME/pfile/init$ORACLE_SID.ora 跟踪文件目录: winnt: /home/app/oracle/product/10.1.0/admin/DB_NAME/bdump/... 另外,在创建数据时,careate database命令中的数据库名也要与参数文件中DB_NAME参数的值一致,否则将产生错误。 同样,修改数据库结构的语句alter database,当然也要指出要修改的数据库的名称。 如果控制文件损坏或丢失,数据库将不能加载,这时要重新创建控制文件,方法是以nomount 方式启动实例,然后以create controlfile命令创建控制文件,当然这个命令中也是指指DB_NAME。 还有在备份或恢复数据库时,都需要用到数据库名。 总之,数据库名很重要,要准确理解它的作用。 查询当前数据名 方法一:select name from v$database; 方法二:show parameter db 方法三:查看参数文件。 修改数据库名 前面建议:应在创建数据库时就确定好数据库名,数据库名不应作修改,因为修改数据库名

Oracle数据库修改实例名SID的方法步骤

有时候我们需要修改Oracle数据库的实例名SID,下面是在Centos 6.5下修改ORACLE10.2的实例名的实例教程,感兴趣学习的朋友可以看下。 修改Oracle实例名 系统环境:CentOS 6.5 ORACLE版本:10.2 1、检查原来的数据库实例名 $ echo $ORACLE_SID orcl $ sqlplus / as sysdba > select instance from v$thread; INSTANCE -------------------------------------------------------------------------------- orcl 2、关闭数据库 > shutdown immediate; > exit; 3、修改oracle用户的ORACLE_SID环境变量,如由orcl修改为linuxidc $ vi /home/oracle/.bash_profile export ORACLE_SID=linuxidc $ source /home/oracle/.bash_profile 4、修改/etc/oratab文件,将sid名由orcl修改为linuxidc $ vi /etc/oratab linuxidc:/u01/app/oracle/11.2/db_1:Y 5、进入到$ORACLE_HOME/dbs目录 将所有文件名中包含原来的sid的修改为对应的新sid的 $ cd $ORACLE_HOME/dbs $ mv hc_zf.dat hc_linuxidc.dat $ mv lkZF lklinuxidc $ mv orapwzf orapwlinuxidc $ mv spfilezf.ora spfilelinuxidc.ora 6、重建口令文件 因为口令文件改名后不能在新实例中使用,所以重建 $ orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=123456 entries=5 force=y 7、启动数据库 $ sqlplus / as sysdba > startup 8、检查数据库实例名 通过如下语句检查数据库实例名,发现实例名已经由orcl变成linuxidc > select instance from v$thread; INSTANCE

Oracle中用sql语句创建数据库

二、在Windows下创建数据库 Oracle实例在Windows下表现为操作系统服务。在windows下,使用命令行方式创建数据的方法有所不同,差别在于在Windows下,需要先创建数据库服务和实例。 1.确定数据库名、数据库实例名和服务名并创建目录(DBCA创建的脚本不包含建立目录命令,须自己创建) 建立目录命令(下面以 db_name=eygle为例): mkdir D:\oracle\ora90\cfgtoollogs\dbca\eygle mkdir D:\oracle\ora90\database mkdir d:\oracle\admin\eygle\adump mkdir d:\oracle\admin\eygle\bdump mkdir d:\oracle\admin\eygle\cdump mkdir d:\oracle\admin\eygle\dpdump mkdir d:\oracle\admin\eygle\pfile mkdir d:\oracle\admin\eygle\udump mkdir d:\oracle\flash_recovery_area mkdir d:\oracle\oradata mkdir d:\oracle\oradata\eygle 2.创建参数文件 在Windows下的参数文件名称及路径如下: d:\oracle\product\10.1.0\admin\DB_NAME\pfile\init.ora(oracle10g) d:\orant\database\iniORACLE_SID.ora(oracle7,oracle8) 参数据文件内容与前述一致。这里不再说明。 3.选择数据库实例 设置环境变量ORACLE_SID c:\>set ORACLE_SID=数据库实例名 4.创建数据库实例 在Windows中创建数据库实例的命令为Oradim.exe,是一个可执行文件,可以在操作系统符号下直接运行。直接输入oradim显示此命令的帮助。 c:\>Oradim 下面对Oradim命令的参数进行一个说明 ------------------------------- -NEW 表示新建一个实例 -EDIT 表示修改一个实例 -DELETE 表示删除一个实例 -SID sid 指定要启动的实例名称 -SRVC service 指定要启动的服务名称 -INTPWD password 以Internal方式连接数据库时的口令字 -MAXUSERS count 该实例可以连接的最大用户数 -USRPWD password 指定内部用户的口令,如是作为Windows管理登录,不用此参数 -PFILE pfile 该实例所使用的参数文件名及路径 -STARTTYPE srvc|inst|srvc,inst 启动选项(srvc:只启动服务,inst:启动实例,服务必须先启动,srvc,inst:服务和实例同时启动) -SHUTTYPE srvc|linst|srvc,inst 关闭选项(srvc:只关闭服务,实例必须已关闭,inst:只关闭实例,srvc,inst:服务和实例同时关闭)

详解 数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名

详解:数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名 数据库名、实例名、数据库域名、全局数据库名、服务名, 这是几个令很多初学者容易混淆的概念。相信很多初学者都与我一样被标题上这些个概念搞得一头雾水。我们现在就来把它们弄个明白。 v$database数据库的控制文件得到的关于数据库的信息 v$instance数据库服务当前状态信息 v$parameter每个数据库中初始化参数信息 一、数据库名 什么是数据库名? 数据库名就是一个数据库的标识,就像人的身份证号一样。他用参数DB_NAME表示,如果一台机器上装了多全数据库,那么每一个数据库都有一个数据库名。在数据库安装或创建完成之后,参数DB_NAME被写入参数文件之中。格式如下: DB_NAME=myorcl ... 在创建数据库时就应考虑好数据库名,并且在创建完数据库之后,数据库名不宜修改,即使要修改也会很麻烦。因为,数据库名还被写入控制文件中,控制文件是以二进制型式存储的,用户无法修改控制文件的内容。假设用户修改了参数文件中的数据库名,即修改DB_NAME的值。但是在Oracle启动时,由于参数文件中的DB_NAME与控制文件中的数据库名不一致,导致数据库启动失败,将返回ORA-01103错误。 数据库名的作用 数据库名是在安装数据库、创建新的数据库、创建数据库控制文件、修改数据结构、备份与恢复数据库时都需要使用到的。 有很多Oracle安装文件目录是与数据库名相关的,如: winnt: d:\oracle\product\10.1.0\oradata\DB_NAME\... Unix: /home/app/oracle/product/10.1.0/oradata/DB_NAME/... pfile: winnt: d:\oracle\product\10.1.0\admin\DB_NAME\pfile\ini.ora Unix: /home/app/oracle/product/10.1.0/admin/DB_NAME/pfile/init$ORACLE_SID.ora 跟踪文件目录: winnt: /home/app/oracle/product/10.1.0/admin/DB_NAME/bdump/... 另外,在创建数据时,careate database命令中的数据库名也要与参数文件中DB_NAME参数的值一致,否则将产生错误。 同样,修改数据库结构的语句alter database,当然也要指出要修改的数据库的名称。 如果控制文件损坏或丢失,数据库将不能加载,这时要重新创建控制文件,方法是以nomount方式启动实例,然后以create controlfile命令创建控制文件,当然这个命令中也是指指DB_NAME。还有在备份或恢复数据库时,都需要用到数据库名。 总之,数据库名很重要,要准确理解它的作用。

oracle实例名

Oracle数据库名:db_name,instance_name,ORACLE_SID,db_domain,global_name... 一、数据库名 1.数据库名的概念 数据库名(db_name)就是一个数据库的标识,就像人的身份证号一样。如果一台机器上装了多全数据库,那么每一个数据库都有一个数据库名。在数据库安装或创建完成之后,参数DB_NAME被写入参数文件之中。格式如下: ########################################### # Database Identification ########################################### db_domain="" db_name=orcl 在创建数据库时就应考虑好数据库名,并且在创建完数据库之后,数据库名不宜修改,即使要修改也会很麻烦。因为,数据库名还被写入控制文件中,控制文件是以二进制型式存储的,用户无法修改控制文件的内容。假设用户修改了参数文件中的数据库名,即修改DB_NAME的值。但是在Oracle启动时,由于参数文件中的DB_NAME与控制文件中的数据库名不一致,导致数据库启动失败,将返回ORA-01103错误。 2.数据库名的作用 数据库名是在安装数据库、创建新的数据库、创建数据库控制文件、修改数据结构、备份与恢复数据库时都需要使用到的。 有很多Oracle安装文件目录是与数据库名相关的,如: winnt: F:\oracle\product\10.2.0\oradata\DB_NAME\... Unix: /home/app/oracle/product/10.2.0/oradata/DB_NAME/... 又如参数文件pfile: winnt: F:\oracle\product\10.2.0\admin\DB_NAME\pfile\init.ora.54200885729 Unix: /home/app/oracle/product/10.2.0/admin/DB_NAME/pfile/init$ORACLE_SID.ora 如果控制文件损坏或丢失,数据库将不能加载,这时要重新创建控制文件,方法是以nomount方式启动实例,然后以create controlfile命令创建控制文件,当然这个命令中也要指明DB_NAME。 3.修改数据库名 建议:应在创建数据库时就确定好数据库名,数据库名不应作修改,因为修改数据库名是一件比较复杂的事情。 现在就来说明一下,如何在已创建数据之后,修改数据库名。步骤如下: (1)关闭数据库。 (2)修改数据库参数文件中的DB_NAME参数的值为新的数据库名。 (3)以NOMOUNT方式启动实例,修建控制文件(有关创建控制文件的命令语法,请参考oracle文档) 4.查询当前数据库名 方法一: select name from v$database; 方法二:show parameter db 方法三:查看参数文件 二、数据库实例名 1.数据库实例名的概念 先来解释以下,实例是什么东西。实例是访问Oracle数据库所需的一部分计算机内存和

ORACLE9i数据库名、实例名、服务名之间的关系

ORACLE9i数据库名、实例名、服务名之间的关系 Yuechaotian 2007-08-31 Oracle中存在着这些容易混淆的名称: 数据库名 实例名 ORACLE_SID 服务名 域名 全局数据库名 在oracle7/8/9i/10g中都有数据库名和实例名,在9i和10g中又引进了三个新的数据库标识类参数:数据库域名(db_domain)、全局数据库名(global_dbname)和数据库服务名(service_names)。下面介绍一下这些名称的关系: 1.数据库名 用于区分一个数据库的内部标识,在安装数据库、创建新数据库、创建控制文件、修改数据库结构、利用RMAN备份时都需要使用数据库名。 存在于(但不仅限于)以下地方: (1)以二进制方式存储在控制文件中。 (2)Pfile/spfile中:db_name (3)数据库物理结构文件目录中 D:\oracle\oradata\db_name\*.* D:\oracle\admin\db_name\*.* 查询方法:select name from v$database; 2.实例名 用于和操作系统进行联系。在操作系统中要取得与数据库之间的交互必须使用实例名。例如,要和某一个数据库服务器连接,则必须知道其数据库实例名,知道数据库名是没用的。在安装/创建数据库后,实例名允许修改的。 存在于(但不仅限于)以下地方: (1)Windows nt/2000注册表中(oracle_sid)

(2)pfile/spfile中:instance_name (3)数据库参数文件名中:init.ora 查询方法:select instance_name from v$instance; 与数据库名的关系:一般是一一对应的,RAC中除外。 3.ORACLE_SID 细心的朋友可以发现,2.3中有个问题:2中讲的是instance_name,但 2.3存储的却是oracle_sid。 因为从名称上来说,instance_name=oracle_sid。对于数据库实例名的描述,有时使用instance_name,有时使用oracle_sid,这两个都是数据库实例名。但instance_name是oracle数据库参数,而oracle_sid是操作系统环境变量。 Oracle_sid用于和操作系统交互。也就是说,在操作系统中要想得到实例名,必须使用oracle_sid。例如同一服务器上创建了多个数据库,则就有多个对应的实例,可以通过在操作系统中设置oracle_sid指定要登录的数据库:$oracle_sid=orcl $export oracle_sid C:\>set oracle_sid=orcl 存在于(但不仅限于)以下地方: (1)Windows nt/2000注册表中(oracle_sid) (2)数据库参数文件名中:init.ora 实例名除用于和操作系统联系外,还用于网络连接,即与客户端或其他服务器之间的连接。配置网络连接,就是配置网络连接串。 例如登录某远程数据库: C:\>sqlplus xtjb/xtjb@s101 这里的s101就是一个网络连接串。 在oracle的不同版本中,网络连接串的内容是不同的。在网络驱动版本为sql*net或net8时,网络连接串使用数据库实例名构造;网络驱动版本为net8i或net services时,网络连接串使用数据库服务名构造(服务名见后面介绍)。见图3中的填写说明。

如何修改oracle实例名

如何修改oracle实例名 1,先停止oracle $dbshut 2,修改ORACLE_SID(原来为ora92new) vi .profile 修改ORACLE_SID=ora92 3,退出oracle用户 4,修改/etc/oratab将(该文件决定了dbshut/dbstart的启动) 将ora92new:/home/oracle/app/oracle/product/9.2:Y 修改为ora92:/home/oracle/app/oracle/product/9.2:Y 5,再次进入oracle用户,修改ora92new的init参数文件 /home/oracle/app/oracle/admin/ora92new/pfile/init.ora cp /home/oracle/app/oracle/admin/ora92new/pfile/init.ora /home/oracle/app/oracle/admin/ora92/pfile/init.ora vi /home/oracle/app/oracle/admin/ora92/pfile/init.ora 修改如下(原来对应的部分为ora92new) instance_name=ora92 dispatchers="(PROTOCOL=TCP) (SERVICE=ora92XDB)" background_dump_dest=/home/oracle/app/oracle/admin/ora92/bd ump core_dump_dest=/home/oracle/app/oracle/admin/ora92/cdump user_dump_dest=/home/oracle/app/oracle/admin/ora92/udump 6,startup pfile="/home/oracle/app/oracle/admin/ora92/pfile/init.ora" 7,启动后重建spfile到/dev/rlvora_spfile create spfile='/dev/rlvora_spfile' FROM pfile='/home/oracle/app/oracle/admin/ora92/pfile/init.ora'; SQL> create spfile='/dev/rlvora_spfile' FROM pfile='/home/oracle/app/oracle/admin/ora92/pfile/init.ora'; File created. 8,修改$ORACLE_HOME/dbs,让数据库指定从rlvora_spfile启动 cd $ORACLE_HOME/dbs mv initora92.ora initora92.ora.bak20090109 vi initora92.ora 新建initora92.ora内容如下(模仿initora92new.ora) spfile='/dev/rlvora_spfile'

Oracle 11gR2 创建数据库实例

Oracle 11gR2 创建数据库实例 因为工作需要在Oracle 11gR2库中新建一数据库实例。采用脚本命令创建,建议使用oracle用户进行以下操作。顺序如下: 1.创建实例启动用的参数文件。在程序默认的参数文件里修改即可:重命名规则initSID.ora /u01/oracle/product/11.2.0/db_1/dbs/ 下,目录尽量使用绝对路径,采用ORACLE_BASE等环境变量有可能报错。 例initcrm.ora db_name='crm' --修改 #memory_target=500m --注释掉 sga_target=200m --添加 pga_aggregate_target=60m --添加 processes = 150 audit_file_dest='/u01/oracle/admin/crm/adump' --建立目录 audit_trail ='db' db_block_size=8192 db_domain='' db_recovery_file_dest='/u01/oracle/flash_recovery_area' --建立目录 db_recovery_file_dest_size=2G diagnostic_dest='/u01/oracle' ---修改 dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)' open_cursors=300 remote_login_passwordfile='EXCLUSIVE' undo_tablespace='UNDOTBS1' 2.创建相应目录: mkdir -p /u01/oracle/admin/ora11g/adump mkdir -p /u01/oracle/admin/ora11g/dpdump mkdir -p /u01/oracle/flash_recovery_area 3.创建密码文件:命名规则orapwSID,目录依旧是 /u01/oracle/product/11.2.0/db_1/dbs/ Linux下orapw+实例名 Windows下pwd+实例名 $ orapwd file=orapwora11g password=oracle 4.创建数据库实例 设置环境变量export ORACLE_SID=crm 执行以下命令 sqlplus /nolog conn / as sysdba

ORACLE的两个实例,如何进行分别重启

AIX上安装了ORACLE的两个实例,如何进行分别重启 问题背景: 用户购买了oracle10g数据库,先安装了一个实例orcl供nc产品使用,后来又安装了第二个实例oadb供OA系统用。由于机房方面的原因需要将服务器重启,为了保证数据库安全,客户想将oracle先停止然后再重新启动,并要求每个实例分别进行停止和启动。 解决方法: 用root进入AIX系统之后切换到oracle用户 然后运行以下命令: 一、关闭NC数据库 1.配置变量 export ORACLE_HOME=/home/oracle/OraHome_1 export PATH=$PATH:$ORACLE_HOME/bin export ORACLE_SID=orcl 2.连接数据库 sqlplus /nolog conn /as sysdba 3.关闭数据库 SQL>shutdown immediate SQL>exit 4.关闭监听 lsnrctl stop 1.关闭OA的数据与上面雷同,只不过将上面1中的ORACLE_SID的内容改为OA的数据库示例名称oadb即可 二、启动NC数据库 用root进入AIX系统之后切换到oracle用户 然后运行以下命令: 1.配置变量 export ORACLE_HOME=/home/oracle/OraHome_1 export PATH=$PATH:$ORACLE_HOME/bin export ORACLE_SID=orcl 2.启动监听 lsnrctl start 3.连接数据库 sqlplus /nolog

conn /as sysdba 4.启动数据库 SQL>startup SQL>exit

oracle实例名,数据库名,服务名等概念区别与联系

oracle实例名,数据库名,服务名等概念区别与联系 数据库oracle服务器archivedatabase多线程数据库名、实例名、数据库域名、全局数据库名、服务名这是几个令很多初学者容易混淆的概念。相信很多初学者都与我一样被标题上这些个概念搞得一头雾水。我们现在就来把它们弄个明白。 一、数据库名 什么是数据库名? 数据库名就是一个数据库的标识,就像人的身份证号一样。他用参数DB_NAME表示,如果一台机器上装了多全数据库,那么每一个数据库都有一个数据库名。在数据库安装或创建完成之后,参数DB_NAME被写入参数文件之中。格式如下: DB_NAME=myorcl ... 在创建数据库时就应考虑好数据库名,并且在创建完数据库之后,数据库名不宜修改,即使要修改也会很麻烦。因为,数据库名还被写入控制文件中,控制文件是以二进制型式存储的,用户无法修改控制文件的内容。假设用户修改了参数文件中的数据库名,即修改DB_NAME 的值。但是在Oracle启动时,由于参数文件中的DB_NAME与控制文件中的数据库名不一致,导致数据库启动失败,将返回ORA-01103错误。 数据库名的作用 数据库名是在安装数据库、创建新的数据库、创建数据库控制文件、修改数据结构、备份与恢复数据库时都需要使用到的。 有很多Oracle安装文件目录是与数据库名相关的,如: winnt: d:/oracle/product/10.1.0/oradata/DB_NAME/... Unix: /home/app/oracle/product/10.1.0/oradata/DB_NAME/... pfile: winnt: d:/oracle/product/10.1.0/admin/DB_NAME/pfile/ini.ora Unix: /home/app/oracle/product/10.1.0/admin/DB_NAME/pfile/init$ORACLE_SID.ora 跟踪文件目录: winnt: /home/app/oracle/product/10.1.0/admin/DB_NAME/bdump/... 另外,在创建数据时,careate database命令中的数据库名也要与参数文件中DB_NAME参数的值一致,否则将产生错误。 同样,修改数据库结构的语句alter database,当然也要指出要修改的数据库的名称。 如果控制文件损坏或丢失,数据库将不能加载,这时要重新创建控制文件,方法是以nomount 方式启动实例,然后以create controlfile命令创建控制文件,当然这个命令中也是指指DB_NAME。 还有在备份或恢复数据库时,都需要用到数据库名。 总之,数据库名很重要,要准确理解它的作用。

相关主题