oracle 数据库和数据库实例的区别

oracle 数据库和数据库实例的区别,第1张

ALTER DATABASE MOUNT用来装载数据库,并启动实例。如果是在日志文件中出现,则表示启动数据库。alter database open将数据库从mount状态切换到打开状态。如果打开成功,就是说这个时候数据库可以提供服务了。

启动数据库实例,分为两步:第一步,启动监听;[oracle@wuzhq ~]$ su - oracle --“切换到oracle用户”[oracle@wuzhq ~]$ lsnrctl start --“打开监听”第二步,启动数据库实例。[oracle@wuzhq ~]$ sqlplus /nolog --“进入到sqlplus”SQL> conn /as sysdba --“连接到sysdba”SQL> startup --“启动数据库实例”关闭数据库实例:SQL> shutdown immediate --“关闭数据库实例”SQL> exit[oracle@redhat ~]$ lsnrctl stop========================================= 假如你的服务器上有DB1和DB2两个实例,且这两个实例都是由同一个 *** 作系统用户创建的,用此 *** 作系统用户登录到服务器,执行 export ORACLE_SID=DB1 sqlplus /nolog connect / as sysdba startup exit EOF export ORACLE_SID=DB2 sqlplus /nolog connect / as sysdba startup exit ==========================================sqlplus / as sysdbastartuppfile=$ORACLE_HOME/dbs/initDB1oraexitsqlplus / as sysdbastartuppfile=$ORACLE_HOME/dbs/initDB2oraexit

就是一个表空间里面有N个用户表,系统表,N个存储过程和N个视图这样子? 一个数据库实例就相当于一个sql server(下面简称mss)的一个服务,

假设你的机器叫做AA,安装mss后,和默认建立一个服务名叫做aa,如果再安装一次mss,会提示你是否使用现有的服务名。Oracle的一个实例可以认为是一个服务。

表空间是一个虚拟概念,是一组文件的简称,例如我的Oracle有一个表空间myspace,用来存放临时的数据,我可以给temp指定三个文件,c:myspaceora d:myspace1ora e:myspace2ora 我见一个表,设置这个表的数据存放在myspace上,如果我向表中插入1000行数据,可能会被均匀的存放到myspaceora中。

oracle实例就是一些能支撑数据库运行的数据库程序。

它由 *** 作系统的多个后台进程和一个共享的内存池所组成,共享的内存池可以被所有进程访问。

Oracle 用一个个实例来管理数据库访问。用户如果要存取数据库(也就是硬盘上的文件) 里的数据, 必须通过Oracle实例才能实现, 不能直接读取硬盘上的文件。

实际上, Oracle 实例就是平常所说的数据库服务(service) 。

在任何时刻一个实例只能与一个数据库关联,访问一个数据库;而同一个数据库可由多个实例访问(RAC)。

扩展资料

oracle数据库的特点:

1、完整的数据管理功能:

1)数据的大量性

2)数据的保存的持久性

3)数据的共享性

4)数据的可靠性

2、完备关系的产品:

1)信息准则---关系型DBMS的所有信息都应在逻辑上用一种方法,即表中的值显式地表示;

2)保证访问的准则

3)视图更新准则---只要形成视图的表中的数据变化了,相应的视图中的数据同时变化

4)数据物理性和逻辑性独立准则

3、分布式处理功能:

ORACLE数据库自第5版起就提供了分布式处理能力,到第7版就有比较完善的分布式数据库功能了,一个ORACLE分布式数据库由oraclerdbms、sqlNet、SQLCONNECT和其他非ORACLE的关系型产品构成。

4、用ORACLE能轻松的实现数据仓库的 *** 作。

参考资料来源:百度百科—实例

参考资料来源:百度百科—Oracle数据库

oracle手动创建数据库步骤如下所示:

1编写初始化参数文件

2设置 *** 作系统环境变量

3创建实例

4以管理员身份连接数据库

5启动实例

6create database 创建数据库

7运行数据字典脚本

8Oracle的网络配置 (客户端连接到服务端)

初始化参数文件

从%ORACLE_HOME%\admin\sample\pfile从复制initsmplora文件,并黏贴到$ORACLE_HOME%\database目录下,改名为init<sid>假设改为initzhouytora(init为文本文件)

对initzhouytora内容进行修改

新增参数

instance_name=zhouyt

db_domain=hdueducn

修改参数

db_name=zhouyt

db_block_size=8192(8kM)

remote_login_passwordfile=exclusive

*** 作系统环境变量

设置 *** 作系统环境变量oracle_sid指向数据库实例的名称

set oracle_sid=zhouyt

该命令在window dos窗口下只对当前有效,当关闭窗口则失效,想要一直有效,则需要在系统环境变量中修改

创建实例

实用工具oradim使用

在DOS窗口输入命令 oradim -new -sid zhouyt -intpwd sys123(sys的密码,sys是管理员) -startmode auto

sid是Oracle在 *** 作系统中的“身份z号码”

管理员身份连接数据库

sqlplus实用工具登录数据库

在DOS命令输入sqlplus/nolog 只是登录状态

以数据库管理员身份连接数据库

在上面的基础上输入命令 connect sys/sys123 as sysdba

因为以 数据库管理员身份 登录可以 安装数据库

启动实例

将文本初始化参数文件pfile转化为二进制初始化参数文件spfile

因为数据库启动需要找到配置文件,默认寻找二进制文件,也可以手动启动文本文件,那这一步就不需要了

输入命令 create spfile from pfile; (将会报错,因为文本文件比较老相对于Oracle 10g), 这个时候我们需要修改配置文件initzhouytora

这个时候在%ORACLE_HOME%\database文件下会生成SPFILEZHOUYTora文件

以nomount形式启动实例

命令 startup nomount,将会出现错误,当我们按照提示修改文本文件以后,如果我们还是按照startup nomount来启动的话,我们要生成相应的二进制文件来覆盖旧的二进制文件

并注释%seed_control%

create databae 创建数据库

创建数据库脚本

三个文件

控制文件

数据文件

重做日志文件

create database zhouyt

datafile

'C:\oracle\product\1020\db_2\zhouyt\system_01dbf' size 100m

Autoextend on next 10m maxsize unlimited

sysaux datafile

'C:\oracle\product\1020\db_2\zhouyt\systemaux_01dbf' size 60m

Autoextend on next 10m maxsize unlimited

logfile

group 1 ('C:\oracle\product\1020\db_2\zhouyt\log_1_01rdo') size 10m,

group 2 ('C:\oracle\product\1020\db_2\zhouyt\log_2_01rdo') size 10m

character set zhs16gbk;

需要确保目录文件"db_2\zhouyt"存在

生成两个数据文件和两个重做日志文件,那么控制文件呢?

运行数据字典脚本

__数据库创建后,系统会生成两个管理员用户sys和system

运行3个数据字典脚本

catalogsql 创建系统常用的数据字典视图和同义词 (sys登录);

catprocsql 建立PL/SQL功能的使用环境,还创建几个PL/SQL包用于扩展RDBMS功能 (sys登录);

pupbldsql 使用SQLPLUS环境时需要 (system登录)

在命令行输入@ 加脚本文件的绝对路径

第二个脚本过程和第一个一样

执行第三个脚本需要切换到system用户

connect system/manager

@ C:\oracle\product\1020\db_2\sqlplus\admin\pupbldsql

创建scott模式

@ C:\oracle\product\1020\db_2\RDBMS\ADMIN\scottsql

以下是对Oracle中的数据库基本常用命令进行了总结介绍 需要的朋友可以过来参考下  

得到数据库名和创建日期 SELECT name created log_mode open_mode FROM v$database;

ORACLE数据库的计算机的主机名 ORACLE数据库的实例名及ORACLE数据库管理系统的版本信息 SELECT host_name instance_name version FROM v$instance;

为了知道oracle数据库版本的一些特殊信息 select from v$version;

获取控制文件名字 select from v$controlfile;

得到Oracle数据库的重做日志配置信息 SELECT group# members bytes status archived FROM v$log; select GROUP# MEMBER from v$logfile;

获取oracle的每个重做日志(成员)文件所存放的具 置 select from v$logfile;

知道ORACLE数据库的备份和恢复策略和归档文件的具 置 archive log list

知道ORACLE数据库中到底有多少表空间以及每个表空间的状态 select tablespace_name block_size status contents logging from dba_tablespaces; select tablespace_name status from dba_tablespaces;

知道每个表空间存在哪个磁盘上以及文件的名字等信息 SELECT file_id file_name tablespace_name status bytes from dba_data_files; select file_name tablespace_name from dba_data_files;

知道Oracle数据库系统上到底有多少用户和都是什么时候创建的 select username created from dba_users; select username DEFAULT_TABLESPACE from dba_users;

从控制文件中取出信息涉及到以下一些相关的命令

复制代码 代码如下: select from v$archived select from v$archived_log select from v$backup select from v$database select from v$datafile select from v$log select from v$logfile select from v$loghist select from v$tablespace select from v$tempfile

控制文件由两大部份组成 可重用的部份和不可重用的部分 可重用的部分的大小可用 CONTROL_FILE_RECORD_KEEP_TIME 参数来控制 该参数的默认值为 天 即可重用的部份的内容保留 天 一周之后这部份的内容可能被覆盖 可重用的部份是供恢复管理器来使用的 这部份的内容 可以自动扩展 Oracle数据库管理员可以使用CREAT DATABASE或 CREAT CONTROLFILE语句中的下列关键字(参数)来间接影响不可重用的部份的大小

复制代码 代码如下: MAXDATAFILES MAXINSTANCES MAXLOGFILES MAXLOGHISTORY MAXLOGMEMBERS

查看控制文件的配置 SELECT type record_size records_total records_used  FROM v$controlfile_record_section;

如果您的显示被分成了两部分 您需要使用类似于set pagesize 的SQLPlus命令先格式化输出 有关的格式化输出命令有以下这些 record_size   为每个记录的字节数 records_total 为该段所分配的记录个数 records_used 为该段所使用的记录个数

知道控制文件中的所有数据文件(DATAFILE) 表空间(TABLESPACE) 和重做日志(REDO LOG)所使用的记录情况 SELECT type record_size records_total records_used FROM  v$controlfile_record_section WHERE type IN ( ‘DATAFILE ‘TABLESPACE ‘REDO LOG );

获取控制文件名字 select value from v$parameter where name = control_files ; 或者 select from v$controlfile

如何在一个已经安装的Oracle数据库中添加或移动控制文件呢 以下是在一个已经安装的Oracle数据库中添加或移动控制文件的具体步骤

a 利用数据字典v$controlfile来获取现有控制文件名字

b 正常关闭Oracle数据库

c 将新的控制文件名添加到参数文件的CONTROL_FILES参数中

d 使用 *** 作系统的复制命令将现有控制文件复制到指定位置

e 重新启动Oracle数据库

f 利用数据字典v$controlfile来验证新的控制文件名字是否正确

g 如果有误重做上述 *** 作 如果无误删除无用的旧控制文件

注 如果您使用了服务器初始化参数文件(SPFILE) 您不能关闭Oracle数据库而且应该在第 步使用alter system set control_files的Oracle命令来改变控制文件的位置

复制代码 代码如下: SQL> alter system set control_files = ‘D:\Disk \CONTROL CTL ‘D:\Disk \CONTROL CTL ‘D:\Disk \CONTROL CTL SCOPE=SPFILE;

由于控制文件是一个极其种要的文件 除了以上所说的将控制文件的多个副本存在不同的硬盘上的保护措施外 在数据库的结构变化之后 您应立即对控制文件进行备份 可以用Oracle命令来对控制文件进行备份 alter database backup controlfile to ‘D:\backup\control bak ;

您也可将备份到一个追踪文件中 该追踪文件包含有重建控制文件所需的SQL语句 可使用以下SQL语句来产生这一追踪文件 alter database backup controlfile to trace;

lishixinzhi/Article/program/Oracle/201311/19116

完整的Oracle数据库通常由两部分组成 Oracle数据库实例和数据库

)数据库是一系列物理文件的集合(数据文件 控制文件 联机日志 参数文件等)

)Oracle数据库实例则是一组Oracle后台进程/线程以及在服务器分配的共享内存区

在启动Oracle数据库服务器时 实际上是在服务器的内存中创建一个Oracle实例(即在服务器内存中分配共享内存并创建相关的后台内存) 然后由这个Oracle数据库实例来访问和控制磁盘中的数据文件 Oracle有一个很大的内存快 成为全局区(SGA)

一 数据库 表空间 数据文件

数据库

数据库是数据集合 Oracle是一种数据库管理系统 是一种关系型的数据库管理系统

通常情况了我们称的 数据库 并不仅指物理的数据集合 他包含物理数据 数据库管理系统 也即物理数据 内存 *** 作系统进程的组合体

数据库的数据存储在表中 数据的关系由列来定义 即通常我们讲的字段 每个列都有一个列名 数据以行(我们通常称为记录)的方式存储在表中 表之间可以相互关联 以上就是关系模型数据库的一个最简单的描述

当然 Oracle也是提供对面象对象型的结构数据库的最强大支持 对象既可以与其它对象建立关系 也可以包含其它对象 关于OO型数据库 以后利用专门的篇幅来讨论 一般情况下我们的讨论都基于关系模型

表空间 文件

无论关系结构还是OO结构 Oracle数据库都将其数据存储在文件中 数据库结构提供对数据文件的逻辑映射 允许不同类型的数据分开存储 这些逻辑划分称作表空间

表空间(tablespace)是数据库的逻辑划分 每个数据库至少有一个表空间(称作SYSTEM表空间) 为了便于管理和提高运行效率 可以使用一些附加表空间来划分用户和应用程序 例如 USER表空间供一般用户使用 RBS表空间供回滚段使用 一个表空间只能属于一个数据库

每个表空间由同一磁盘上的一个或多个文件组成 这些文件叫数据文件(datafile) 一个数据文件只能属于一个表空间 在Oracle 以后 数据文件创建可以改变大小 创建新的表空间需要创建新的数据文件 数据文件一旦加入到表空间中 就不能从这个表空间中移走 也不能与其它表空间发生联系

如果数据库存储在多个表空间中 可以将它们各自的数据文件存放在不同磁盘上来对其进行物理分割 在规划和协调数据库I/O请求的方法中 上述的数据分割是一种很重要的方法

Oracle数据库的存储结构分为逻辑存储结构和物理存储结构

)逻辑存储结构 用于描述Oracle内部组织和管理数据的方式

)物理存储结构 用于描述Oracle外部即 *** 作系统中组织和管理数据的方式

二 Oracle数据库实例

为了访问数据库中的数据 Oracle使用一组所有用户共享的后台进程 此外 还有一些存储结构(统称为System Gloabl Area 即SGA) 用来存储最近从数据库查询的数据 数据块缓存区和SQL共享池(Shared SQL Pool)是SGA的最大部分 一般占SGA内存的 %以上 通过减少对数据文件的I/O次数 这些存储区域可以改善数据库的性能

Oracle数据库实例(instance)也称作服务器(server) 是用来访问数据库文件集的存储结构及后台进程的集合 一个数据库可以被多个实例访问(这是Oracle并行服务器选项)

lishixinzhi/Article/program/Oracle/201311/17362

以上就是关于oracle 数据库和数据库实例的区别全部的内容,包括:oracle 数据库和数据库实例的区别、Linux 启动停止oracle实例+如何启动多个实例、什么是ORACLE的数据库实例等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: https://outofmemory.cn/sjk/9334111.html

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

发表评论

登录后才能评论

评论列表(0条)

保存