数据库实例_数据库实例名 - CSDN
精华内容
参与话题
  • 什么是数据库实例

    千次阅读 2019-05-30 21:13:13
    什么是数据库实例 一、通俗解释 首先说说,数据库是做什么? 数据库是用来长久存储数据的,而我们大家都知道内存只能临时存储,磁盘等才能真正存储数据. 那数据库会放那里呢?肯定是存放在磁盘上,其实...

    什么是数据库实例

    一、通俗解释

    首先说说,数据库是做什么?

    数据库是用来长久存储数据的,而我们大家都知道内存只能临时存储,磁盘等才能真正存储数据.

    那数据库会放那里呢?肯定是存放在磁盘上,其实数据库就是磁盘上的一个文件。

    从上面我们得出结论:数据库==磁盘上的文件.

    既然数据库可以看成磁盘上文件,我们怎么使用数据库呢?

    如果说我们可以直接使用数据库,那就等价与直接使用磁盘上的文件.

    我们知道这样的一个常识:必须把磁盘上的文件读入内存才能使用.这就与我们以前所知道的一个常识相违背了.

    那正确的流程是不是应该这样呢?把磁盘上文件先读入内存,然后再使用呢.

    对了,这个才是使用数据库的正确流程.

    数据库如何读入内存呢?

    这个时候,就是我们要介绍的instance(实例)了.实例就是内存结构和一组后台进程.

    实际上,正常的数据库读入内存的过程是,由实例中一组后台进程从磁盘上将数据文件读入到实例的内存中,然后经过在内存中对数据的操作再从实例的内存中经过一组后台进程写到数据库中.

    那实例相对与数据库而言,应该就是数据库的运行环境(随不准确但也很贴切).

    二、专业解释

    实例是“内存”和“后台进程”的集合。数据库是数据的物理存储。特别注意,一个实例可以用于一个数据库,多个实例也可以同时用于一个数据库,实例和数据库的关系是一对多的关系。 
    举个例子,如果把数据库比作一架飞机,实例就是飞机的发动机。那么,一台发动机可以驱动飞机,两台发动机也可以同时驱动一架飞机。 
    多个“实例”同时驱动一个“数据库”的架构叫“集群(Oracle real application clusters,简称RAC)”,这是Oracle的一种高端应用,如果结合磁盘阵列的保护机制,RAC能最大限度的保护我们的应用不间断运行,数据不丢失。

    什么是数据库,其实很简单,数据库就是存储数据的一种媒介。比如常用的文件就是一种,在Oracle10G中,数据的存储有好几种。第一种是文件形式,也就是在你的磁盘中创建一批文件,然后在这些文件中存储信息。第二种就是磁盘阵列形式,这个是什么意思呢,这个就是说明数据库不是存放为某个文件,而是把一个或者多个磁盘格式化成Oracle的一种格式了,等于整个磁盘就是存放Oracle数据库的,不能作为别的用途。这样的优点是存储性能高,因为不再借助别的文件格式了,而是把整个磁盘都成为Oracle最适应的文件系统格式。当然还可能有别的形式,比如网络什么的。不过我们最常用的还是文件格式的,在文件格式中,数据库指的就是那些数据文件,控制文件以及REDO文件等等一系列文件。

    而什么是Instance呢,Instance其实就是指的操作系统中一系列的进程以及为这些进程所分配的内存块。在Oracle中,我们可以新建一个Oracle的Instance,这个时候虽然有了进程还有SGA等一系列的内存快,但是这个时候并没有把数据库文件读取进来。所以只是一个实例,在后来,你可以通过命令手动或者自动地把数据库文件加载进我们的数据库Instance中,这个时候的数据库才可以让我们真正的开始访问操作。

    所以说,数据库的应用如果想实现,数据库和数据库Instance是缺一不可的,如果只有数据库的那些文件,那么,只能代表数据在这个文件中,但是我们无法直接进行操作。而如果只有数据库Instance,那么我们虽然可以急性操作,但是也不知道操作哪些数据,操作生成的数据也无法保存等等。所以,当一个Oracle Instance真正Load了一个Oracle Database了以后,数据库才可以被我们使用。

    在这里要注意一点的是,Oracle的实例在启动以后,只能load一次数据库,如果想把数据库与Instance断开,然后再重新挂在一个数据库Instance,那么就需要你首先把数据库Instance进程结束,然后重新建立这个instance的一个进程,再load另外一个数据库。否则肯定要抛除ORA-16169错误,说数据库已经被打开。因为一个数据库Instance在其生存期中最多只能load和打开一个instance。

    三、Oracle

    什么是oracle? 平常所说的 Oracle 或 Oracle 数据库指的是 Oracle 数据库管理系统. Oracle 数据库管理系统是管理数据库访问的计算机软件(Oracle database manager system). 它由 Oracle 数据库和 Oracle 实例(instance)构成(区别mysql,mysql没有实例的概念)

    Oracle 实例: 位于物理内存里的数据结构,它由操作系统的多个后台进程和一个共享的内存池所组成,共享的内存池可以被所有进程访问.Oracle 用它们来管理数据库访问.用户如果要存取数据库(也就是硬盘上的文件) 里的数据, 必须通过Oracle实例才能实现, 不能直接读取硬盘上的文件.实际上, Oracle 实例就是平常所说的数据库服务(service) .在任何时刻一个实例只能与一个数据库关联,访问一个数据库;而同一个数据库可由多个实例访问(RAC)

    1、一个Oracle数据库系统中可以同时安装几个数据库,每一个数据库对应一个唯一的实例,但是OPS系统除外,可以多个实例同时对一个数据库操作,称为并行服务器
    2、只是一个名字,SID即是INSTANCE_NAME,SERVICE_NAMES主要用在监听器中,service_names是对外的服务名,是服务器端使用的,一个库可以设置多个对外服务名。比如你身份证叫王大锤,这个就是SID,但是对外不同圈子你有很多外号,蛋蛋,二狗子,这些对外的称呼就是SERVICE_NAME.
    3、NET EASY CONFIG操纵的应该是主机字符串,是为客户端服务的,
          一个数据库可以对外公布多个服务名(SERVICE_NAMES)
          一个客户端也可以用多个主机字符串连接到同一个数据库服务器上
    4、一个OS上可以装多个Oracle数据库(小的概念),每个库可以对外公布多个服务名,都通过init.ora和listener.ora来实现

    注意:在mysql中数据库与数据库实例是一对一之间的关系,区别于oracle一对多的概念

    四、举例

    在Oracle中打开一个数据库,这个时候我们要使用sqlplus了.sqlplus是oracle的一个连接工具,相当于sql server中的查询分析器.

    用户名:system
    密码:manger(自己在装Oracle时设定的)
    点登录进入sqlplus.

    登录sqlplus以后,system这个用户是没有权限启动实例的,所以我们这时要更换登录用户.
    使用sys用户连接
    的命令如下 :
    conn sys as dba
    密码:
    输入完后.可以再输入如下命令查看当前用户:
    show user;
    一:下面就可以打开数据库了
    1.启动实例(instance)
    startup nomount
    2.将数据库装载到实例(instance)中
    alter database mount
    3.打开数据库
    alter database open
    二:关闭数据库:
    1.shutdown immediate(包括三个步骤如下所述:)
    首先关闭数据库
    然后从实例上卸载数据库
    最后关闭实例
    通过Oracle打开以及关闭一个数据库的例子我们可以清楚的区分.数据库(database)和实例(instance)的概念.

     

    参考:

    https://zhidao.baidu.com/question/751534918052583324.html

    https://blog.csdn.net/qq_26442553/article/details/79600820

    https://bbs.csdn.net/wap/topics/120098445

    posted @ 2019-05-27 17:18 小时候挺菜 阅读(...) 评论(...) 编辑 收藏
    展开全文
  • Mysql 数据库和数据库实例

    千次阅读 2018-08-19 22:02:32
    数据库实例是程序,是位于用户与操作系统之间的一层数据管理软件,用户对数据库数据的任何操作,包括数据库定义、数据查询、数据维护、数据库运行控制等都是在数据库实例下进行的,应用程序只有通过数据库实例才能和...

    help :帮助。

    下面两段文体主要定义数据库 和 数据库实例,告诉我们数据库是什么,数据库实例是什么。

    数据库是文件的集合,是依照某种数据模型组织起来并存放于二级储存器中的数据集合;数据库实例是程序,是位于用户与操作系统之间的一层数据管理软件,用户对数据库数据的任何操作,包括数据库定义、数据查询、数据维护、数据库运行控制等都是在数据库实例下进行的,应用程序只有通过数据库实例才能和数据库打交道。

    数据库是又一个个文件组成(一般来说都是二进制文件)的,要对这些文件执行SELECT UPDATE INSERT DELETE 之类的数据库操作是不能通过简单的操作文件来更改数据库的内容,需要通过数据库实例来完成对数据库的操作。所以把oracle,SQL Server,MySQL 简单的理解成数据库可能是有失偏颇的,虽然实际使用中并不会强调两者之间的区别。 

     

    展开全文
  • 1、数据库实例是指一个oracle数据库的实例化,相当于java一个对象的实例化。一开始我们安装界面上的SID就是oracle的一个实例,名字是orcl 2、oracle数据库被实例化之后,会有很多的默认的用户sys、system(本...

      数据库是一个数据的集合,oracle是数据库管理系统和mysql是一样的数据库管理系统。通常情况下我们所说的数据库是指物理数据、内存、操作系统进程的组合体。

    1、数据库实例是指一个oracle数据库的实例化,相当于java一个对象的实例化。一开始我们安装界面上的SID就是oracle的一个实例,名字是orcl

    2、oracle数据库被实例化之后,会有很多的默认的用户sys、system(本地管理员)、scott(普通用户),我们可以通过这些管理员进入oracle数据库操作中。

    表空间

    3、进入数据库操作之后,我们需要建立一个表空间,用来提供物理表。一个数据库实例可以有N个表空间,一个表空间下面可以有N个表,一个表空间只能属于一个数据库。每个数据库中至少有一个system表空间,为了提高管理和运行的效率,可以增加一些附加表空间来划分用户,例如:user一般只提供用户使用。

    表空间是数据库中最大的逻辑单位,每一个表空间由一个或多个数据文件组成,一个数据文件只能与一个表空间相联系

    Create TableSpace  db_test       表空间名称  
    DataFile  'D:\oracle\db_test.dbf'    表空间数据文件路径  
    Size   50m              表空间初始大小  
    Autoextend on

    4.一个学生角色包含很多的用户,例如一个学生角色包含张三用户、李四用户、王五用户。

    -- 创建用户
    create user lin    -- 用户名
    identified by 1234 -- 密码
    default tablespace jss  -- 对应的表空间
    temporary tablespace temp  -- 临时表空间

    展开全文
  •  ...(2)数据库实例 oarcle数据库服务器主要有两部分组成:物理数据库和数据库管理系统 数据库管理系统是用户和物理数据库之间的一个中间层,是软件层。这个软件层具有一定的结构,这个结构...
    

    (1)数据库

    数据库是存储数据的多个物理文件的集合,如控制文件,数据文件,参数文件,日志文件,临时文件等 ,它是静态的、永久的,只要文件存在它就存在。数据库名(db_name)就是对数据库的标识。

    (2)数据库实例

    oarcle数据库服务器主要有两部分组成:物理数据库和数据库管理系统
    数据库管理系统是用户和物理数据库之间的一个中间层,是软件层。这个软件层具有一定的结构,这个结构又被称为实例结构。
    在启动数据库时,oracle首先要在内存中获取、划分、保留各种用途的区域,运行各种用途的后台进程,即创建一个实例(instance),然后由该实例装载、打开数据库,最后由这个实例来访问和控制数据库的各种物理结构。 数据库至少由一个oracle实例引用,该实例由oracle系统标识符(system identity)唯一标识,用于区别此计算机上的任何其他实例。

    在启动数据库并使用数据库的时候,实际上是连接到该数据库的实例,通过实例来连接、使用数据库。所以实例是用户和数据库之间的一个中间层。
    实例是由操作系统的内存结构和一系列进程所组成的,可以启动和关闭。
    一台计算机上可以创建多个oracle数据库,当同时要使用这些数据库时,就要创建多个实例。为了不使这些实例相互混淆,每个实例都要用称为SID的符号来区分,即创建这些数据库时填写的数据库SID。

    数据库实例是用户访问数据库的中间层,是使用数据库的手段,它为用户访问数据库提供了必要的内存空间和多个工作进程,它是动态的、临时的,简单的说,Oracle实例就是由内存空间和工作进程两部分组成。 我们只能通过实例操作数据库,同一时间,一个实例只能打开一个数据库,也就是一个实例只能操作或管理一个数据库,但一个数据库可以被多个是实例打开。实例可以在没有数据文件的情况下单独启动,(startup nomount)但这通常是没有意义的,一个实例在生成期内只能装载(alter database mount)和打开(alter database open)数据库。

    ORACLE实例有两种类型:单进程实例 和 多进程实例。

    单进程ORACLE(又称单用ORACLE)是一种数据库系统,一个进程执行全部ORACLE代码。由于ORACLE部分和客户应用程序不能分别以进程执行,所以ORACLE的代码和用户的数据库应用是单个进程执行。在单进程环境下的ORACLE 实例,仅允许一个用户可存取。例如在MS-DOS上运行ORACLE 。

    多进程ORACLE实例(又称多用户ORACLE)使用多个进程来执行ORACLE的不同部分 ,对于每一个连接的用户都有一个进程。
    在多进程系统中,进程分为两类:用户进程 和ORACLE进程。当一用户运行一应用程序,如PRO*C程序或一个ORACLE工具(如SQL*PLUS),为用户运行的应用建立一个用户进程。

    进程是操作系统的基本执行单元,它是具有独立数据处理功能的正在执行的程序。Oracle系统的进程包括三种类型:

    ①用户进程

    用户在客户端运行一个应用程序(例如 Pro*C 程序)或 Oracle 工具(如OEM或 SQL*Plus)时,系统将为该用户创建一个用户进程。

    用户进程负责与Oracle服务器建立连接和会话并向服务器发出数据处理请求,得到处理结果后再输出给用户。

    Oracle允许为一个用户同时创建多个会话 。

    ②服务进程

    Oracle为用户进程创建一个服务进程或分配一个空闲的服务进程。

    服务进程负责在用户进程和Oracle实例之间调度请求和响应,主要完成:

    •解析与运行应用程序提交的SQL语句;

    •数据处理时用到的数据如果不在SGA 中,负责将所需的数据块从磁盘上的数据文件读入SGA 的数据缓存区;

    •以用户进程能理解的形式返回SQL 语句的执行结果。

    用户进程和服务进程之间的对应关系是由Oracle数据库的工作模式决定的。数据库通常有两种工作模式:




    image 专用服务器模式
    image

    共享服务器模式

                                                                            

     

    ③后台进程

    Oracle实例启动时,为了保证该实例的正常使用,系统将为该实例启动一些后台进程。

    这些进程是操作数据库的基础,不管有没有用户连接数据库,这些进程都会被启动。

    后台进程包括:

    DBWR(Database Write) : 数据库写入程序

    LGWR(Log Write) : 日志写入程序

    CKPT(Checkpoint) : 检查点

    SMON (System Monitor): 系统监控

    PMON(Process Monitor) : 进程监控

    ARCH(Archive) : 归档

    RECO : 恢复

    LCKn : 封锁;

    (6)实例名(instance_name)

    数据库实例名(instance_name)用于对外部连接。在操作系统中要取得与数据库的联系,必须使用数据库实例名。例如,要去连接一个数据库服务器,就必须知道其数据库实例名。

    查询当前数据库实例名
    方法一
    :select instance_name from v$instance;
    方法二:show parameter instance_name
    方法三:在参数文件中查询。

    (7)服务名(Service_name)

    该参数是oracle8i新引进的。在8i以前,我们用SID来表示标识数据库的一个实例,但是在Oracle的并行环境中,一个数据库对应多个实例,这样就需要多个网络服务名,设置繁琐。为了方便并行环境中的设置,引进了Service_name参数,该参数对应一个数据库,而不是一个实例,而且该参数有许多其它的好处。该参数的缺省值为Db_name. Db_domain,即等于Global_name。一个数据库可以对应多Service_name,以便实现更灵活的配置。该参数与SID没有直接关系,即不必Service name 必须与SID一样。如果数据库有域名,则数据库服务名就是全局数据库名,否则,数据库服务名与数据库名相同。

    查询当前数据库服务名
    方法一
    :select value from v$parameter where name = ‘service_name’;
    方法二:show parameter service_name
    方法三
    :select instance_namefrom v$instance;
    方法四:在参数文件中查询。

    注意:方法三:select instance_namefrom v$instance; 的值是来自操作系统的oracle_sid,oracle_sid是操作系统的环境变量。

    以上这些概念非常容易混淆,且不容易理解,有的可能在使用过程中才能理解的比较透彻。

            </div>
    
    展开全文
  • oracle 创建数据库实例

    千次阅读 2012-09-24 01:41:48
    Oracle数据库实例的创建、删除、修改  以SUSE10SP2、Oracle10gR2为例。    本文中的数据库实例这一称谓应该换做数据库更为准确,数据库可以理解为是一个物理的静态概念,主要包括一些物理存在的数据库文件...
  • 数据库和数据库实例的概念

    万次阅读 2018-09-03 13:48:46
    很多人都把这两个概念弄混淆,认为MySQL是数据库,也是数据库实例。这样的理解在应用到Oracle和SQL Server的时候可能是正确的,但是再MySQL的体系结构中确是不适用的。 那么从概念上理解,该如何区分数据库和数据库...
  • ORACLE数据库中,实例是怎样的一种存在?有怎样的作用?具体表现为什么?
  • Oracle 数据库实例介绍

    千次阅读 2018-11-23 15:44:13
    本章介绍 Oracle 数据库实例的原理,实例的参数文件和诊断文件,以及实例创建和数据库的打开与关闭的过程。
  • 数据库和数据库实例的区别

    千次阅读 2010-12-23 23:53:00
    <br />数据库就是一个相片底片实例就是相纸 <br />一个底片可以冲多个相纸,但一张相纸最多冲一个底片。 <br /> tom的一个解释  数据库(database):物理操作系统文件或磁盘( disk)的...
  • 数据库实例和数据库关系

    千次阅读 2016-12-01 16:09:44
    相关与数据库,有连接、实例、会话、数据库、线程等概念,他们之间的关系今天看到篇文章和我理解的很像。可以参考。是以MySql为例的。 MySQL中的实例数据库关系简介 1、MySQL是单进程多线程(而Oracle等是多进程...
  • 参考资料:...   一、Oracle下载 注意Oracle分成两个文件,下载完后,将两个文件解压到同一目录下即可。 路径名称中,最好不要出现中文,也不要出现空格等不规则字符。 ...
  • Linux无界面创建Oracle数据库实例

    千次阅读 2019-03-06 10:13:07
    Linux创建Oracle数据库实例 上一篇安装了数据库,本文记录创建数据库实例步骤 1、安装步骤: 内存检查 : 内存检查,如果过小,则会报错,具体错误可以看最后的问题列表,我初始内存为2G,出错之后调成16G,具体的...
  • 什么是数据库实例(SID),oracle/mysql

    万次阅读 2018-04-07 12:21:13
    什么是oracle? 平常所说的 Oracle 或 Oracle 数据库指的是 Oracle 数据库管理系统. Oracle 数据库管理系统是... 它由 Oracle 数据库和 Oracle 实例(instance)构成(区别mysql,mysql没有实例的概念) Oracle 实例: ...
  • Oracle创建本地数据库实例及配置

    万次阅读 2018-03-18 16:21:15
    因为以前一直都是用的mysql的数据库,所以当新工作中用到Oracle数据库的时候,一时还有点不习惯,特别是一直连接的远程数据库,更是麻烦,所以就想在本地创建一个Oracle的数据库,然后导入数据库的备份文件方便使用...
  • android连接数据库实例

    千次下载 热门讨论 2020-07-30 23:32:42
    android连接数据库实例,包括webservice端的代码和数据库的格式和代码,希望对需要的人有帮助
  • 启动与关闭数据库实例

    千次阅读 2010-09-26 14:46:00
    3 数据库的启动和关闭这一章描述了启动和关闭Oracle数据库实例的规程,包含如下主题: 启动数据库 改变数据库的可用性 关闭数据库 停顿数据库 抑制和恢复数据库启动数据库当你启动一个数据库,你就创建了这个...
  • oracle启动数据库实例

    千次阅读 2019-07-08 13:45:50
    连接数据库的时候报错。 第一步: 1、登录到数据库服务器,切换到oracle用户...2、切换需要启动的数据库实例: (1)export ORACLE_SID=A (2)进入到Sqlplus控制台:sqlplus / nolog (3)以系统管理员登录:connec...
  • mysql数据库与数据库实例的区别

    千次阅读 2018-02-27 14:53:28
    数据库实例是应用程序,是位于用户与操作系统之间的一层数据管理软件,用户对数据库进行操作,包括定义表结构,数据查询,数据维护等控制,都是在数据库实例下进行的,可以这样理解,应用程序通过数据库实例才能和...
  • SQLsever数据库实例

    千次阅读 2018-06-06 18:46:00
    什么是SQL SERVER实例 SQL SERVER实例的概念和“类与对象”的概念很相似。可以把SQL SERVER的安装程序看做是一个类,安装过程则是创建对象的过程,创建出来的对象称为“SQL SERVER实例”——即“类与对象”中把类...
  • linux下手动删除数据库实例

    万次阅读 2009-11-15 16:34:00
    linux下手动删除数据库实例,直接删除相应的目录就可以了,不多说了....1. $ORACLE_HOME/dbs/[oracle9@frogger dbs]$ pwd/u01/app/oracle/product/9.2.0.1/dbs[oracle9@frogger dbs]$ rm inittest02.ora[oracle9@...
1 2 3 4 5 ... 20
收藏数 929,238
精华内容 371,695
关键字:

数据库实例