数据库实例是什么意思

数据库实例是什么意思,第1张

问题一:数据库实例如何理解呢 实例(instance):一组Oracle 后台进程/线程以及一个共享内存区,这些内存由同一个计算机上运行的线程/进程所共享。这里可以维护易失的、非持久性内容(有些可以刷新输出到磁盘)。就算没有磁盘存储,数据库实例也能存在。也许实例不能算是世界上最有用的事物,不过你完全可以把它想成是最有用的事物,这有助于对实例和数据库划清界线。

实例和数据库之间的关系是:数据库可以由多个实例装载和打开,而实例可以在任何时间点装载和打开一个数据库。实际上,准确地讲,实例在其整个生存期中最多能装载和打开一个数据库!

一般来说,我们的一个数据库对应一个实例,但在集群RAC情况下,共享数据库文件时,一个数据库是可以被多个实例同时使用的。

问题二:oracle数据库的实例,其中“实例”是什么意思? 实例指的是内存,数据库指的是物理文件。通过实例指向的数据库,来访问数据库中的数据。

问题三:数据库实例是什么意思 多个 SQL Server 实例 ,Microsoft SQL Server 2000 支持在同一台计算机上同时运行多个 SQL Server 数据库引擎实例。每个 SQL Server 数据库引擎实例各有一套不为其它实例共享的系统及用户数据库。

问题四:数据库实例 问这个问题说明你对数据库的概念还不太了解,这是最基本的概念。

数据库是什么?数据库是一个逻辑上的概念,简单的说就是相互关联的一会数据。而对应到实际的物理概念上,就是磁盘上的一个或者一堆文件,里边包含着数据。但是光有数据不行,数据库有很多功能,比如可以接受用户连接,给用户提供数据,这样就需要有“程序”。所以说关闭状态的数据库,就是磁盘上的程序文件,加上数据文件。

想要使用数据库,就要把它打开,让上边说的“程序”运行起来。实例就是指计算机内存中处于运行状态的数据库程序,以及为这些程序分配的一些内存空间。实例是位于内存中的,只在数据库处于运行状态时才存在。实例负责实现给用户提供网络连接、读写数据文件等等各种功能。

不同的数据库产海有些不同,Oracle中一个实例只能连接一个逻辑上的“数据库”,甚至是不同机器上运行着的不同实例同时连接一个数据库(RAC)。SQL Server和My SQL中的“实例”则比较独立,可以随时打开或者关闭某一个数据库。

问题五:什么是数据库的实例instance 首先说说,数据库是做什么?数据库是用来长久存储数据的,而我们大家都知道内存只能临时存储,磁盘等才能真正存储数据.那你说数据库会放那里呢?肯定是存放在磁盘上,其实数据库就是磁盘上的一个文件。

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

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

如果说我们可以直接使用数据库,那就等价与直接使用磁盘上的文件.我们知道这样的一个常识:必须把磁盘上的文件读入内存才能使用.这就与我们以前所知道的一个常识相违背了.

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

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

数据库如何读入内存呢?

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

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

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

我们知道了instance和database的区别后.下面我们做一个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)的概念.

问题六:在数据库中,添加一个用户实例是什么意思,请问用户实例怎么理解? 就是一个用户专用的数据库引擎。

问题七:什么是oracle实例,什么是oracle数据库,二者有什么区别? 这个问题如果回答得形象点就是:

一个数据库可以包含一个或者多个实例

实例的定义:由 *** 作系统后台进程和分配的内存区域构成。说

得简单点就是oracle在nomou骸t状态就分配了内存区域,一个实

例也就差不多快形成了。

问题八:什么是数据库的实例 所谓“数据库实例”,实际上就是数据库服务器引擎。每个SQL Server数据库引擎实例各有一套不为其他实例共享的系统及用户数据库。

在一台计算机上,可以安装多个SQL SERVER,每个SQL SERVER就可以理解为是一个实例。

有两种类型的 SQL Server 实例:

1)默认实例:默认实例仅由运行该实例的计算机的名称唯一标识,它没有单独的实例名。如果应用程序在请求连接 SQL Server 时只指定了计算机名,则 SQL Server 客户端组件将尝试连接这台计算机上的数据库引擎默认实例。

2)命名实例:除默认实例外,所有数据库引擎实例都由安装该实例的过程中指定的实例名标识。应用程序必须提供准备连接的计算机的名称和命名实例的实例名。

计算机名和实例名以格式puter_name\instance_name指定。 一台计算机上可以运行多个命名实例。

问题九:什么是数据库实例? 所谓的“实例”,就是一个 SQL Server 数据库引擎

一个 数据库引擎 下面,又可以建立 多个数据库

例如我的计算机,SQL Server 实例的名字是 SQLEXPRESS

这个实例下面,有好几个数据库。

为什么要命名。就是我机器上,很有可能安装了 SQL Server 2005, 又安装了 SQL Server 2008。 2个服务器, 需要不同的名字来区分。

对于 网络请求来说

如果我要访问一个 SQL 数据库

必须提供 机器名 + 实例的名字,才能访问

例如:

C:\Documents and Settings\wzq>sqlcmd -S localhost\SQLEXPRESS

1>use stock

2>go

已将数据库上下文更改为 'Stock'。

问题十:oracle数据库的实例,其中“实例”是什么意思? 实例指的是内存,数据库指的是物理文件。通过实例指向的数据库,来访问数据库中的数据。

什么是SQL呢

SQL就是专门用来做数据库的一门语言

和C语言差不多

(当然功能不紧紧是做数据了

编程啊

都可以.....

这里就不多说了)z这道题用ACCESS

就可以完成了

1

首先

用Access

2000(数据库

)做一个数据库

打开设计器创建表

在点菜单

另存为

名为班级名+自己名字英文简写

最后点保存啦

(每完成系统都是有提示的啦)

第一问

解决

2

打开设计器

上面做的表下面下

创建数据表

名字都是在最后完成时做的

先不用管

然后在输入sID,sName,sSex,sAge,sClass

注意根据后面的要求填写字段

及数据类型

以及

在做其他的问题了将T_Student表的sID字段设置为标识列,种子为1,增量为2。

为T_Student表的sSex(性别)字段设置其默认值为“男”。

为T_Student表的sAge(年龄)字段设置检查约束,规定年龄在0到30岁之间。

为T_KC表的cName(课程名称)字段设置唯一性约束。,规定课程名称不得重复。

生成一个规则t_rule,限制数据的取值范围在(0---100)之间,然后将这个规则绑定到T_CJ表的cj(成绩)字段。

为T_KC表的cName字段创建索引。

最后

当然主键当然是SID了

一定要标好哦~~·先不管作业其他要求

在依次做其他2个表

T_KC(cID,cName,sBianhao,sXuefen)

T_CJ(sID,cID,cj)

注意主键是SID

3.

做好了三个表后退出设计器

在打开以一个个表

在按要求输入(在每个表中添加3-5条记录。)

好了

基本就完成了

当然用SQL

也能完成

这些问题

并且要快

但涉及到TQL语言

编程问题

很难说清楚

就不一一解释了···

查看实例名时可用 1、服务—SQL Server(实例名),默认实例为(MSSQLSERVER)

或在连接企业管理时-查看本地实例

2、通过注册表 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Microsoft SQL Server/InstalledInstance

3、用命令

sqlcmd/osql sqlcmd -L sqlcmd -Lc osql -L

获取可用实例,以下举一个例子,根据自己情况改

DECLARE @Table TABLE ( instanceName sysname NULL)

insert @Table EXEC sys.xp_cmdshell 'sqlcmd -Lc'

--LEFT(@@serverName,CHARINDEX('/',@@serverName+'/')-1) 替代为本机名就行了 , 根据实例命名规则判断

SELECT * FROM @Table WHERE instanceName LIKE LEFT( @@serverName , CHARINDEX ( '/' , @@serverName + '/' )- 1)+ '%'

二、

--1. SELECT SERVERPROPERTY('InstanceName')

--2 sp_helpserver

--3 select @@SERVERNAME

--4 SELECT * FROM SYS.SYSSERVERS

--5 SELECT * FROM SYS.SERVERS

三、

EXECUTE xp_regread @rootkey='HKEY_LOCAL_MACHINE',

@key='SOFTWARE/Microsoft/Microsoft SQL Server/Instance Names/SQl',

@value_name='MSSQLSERVER'

四、

Select Case When SERVERPROPERTY ('InstanceName') Is Null Then @@SERVERNAME Else SERVERPROPERTY ('InstanceName') End

五、在本地或网络得到所有实例名

1、You can do with registry reading , like my code

using Systemusing Microsoft.Win32

namespace SMOTest { class Program { static void Main() { RegistryKey rk = Registry.LocalMachine.OpenSubKey(@"SOFTWARE/Microsoft/Microsoft SQL Server")String[] instances = (String[])rk.GetValue("InstalledInstances")if (instances.Length >0) {foreach (String element in instances){ if (element == "MSSQLSERVER") Console.WriteLine(System.Environment.MachineName) else Console.WriteLine(System.Environment.MachineName + @"/" + element) } } } } }

2、You can use SQLDMO.dll to retrieve the list of SQL Server instances. The SQLDMO.dll can be found from the "C:/Program Files/Microsoft SQL Server/80/Tools/Bin"

folder. Refer this assembly in your project and the following snippet

would return a List Object containing the sql server instances.

public static List GetSQLServerInstances()

{

NameList sqlNameList = null

Application app = null

var sqlServers = new List()

try

{

app = new ApplicationClass()

sqlNameList = app.ListAvailableSQLServers()

foreach (string sqlServer in sqlNameList)

sqlServers.Add(sqlServer)

}

catch(Exception ex)

{

//play with the exception.

}

finally

{

if (sqlNameList != null)

sqlNameList = null

if (app != null)

app = null

}

return sqlServers

}


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存