首页 > 代码库 > oralce中相关的概念整理
oralce中相关的概念整理
【数据库名】
概念:就是一个数据库的标识,作用等同于我们的身份证的作用,如果一台机器上安装了多个数据库,那么每个数据库都会有一个数据库名称对应,这些数据库名称在数据库被创建的时候,数据库名称也会被写入控制文件中去,在控制文件中是以二进制的文件存储,我们如果要修改的话就不是太方便,所以我们在起数据库名称的时候尽量考虑清楚。
作用:数据库名称是在创建数据库,安装数据库,创建数据库控制文件,修改数据结构的时候或者备份数据库的时候会使用到。
我们如果想在sqlplus中查看当前连接的数据库名称:
方法一:select name from v$database;
方法二:shower parameter db;
方法三:查看所有参数文件。
【数据库实例名】
概念:实例是访问oracle数据库所需的一部分计算机内存和辅助处理计算机后台进程,是由进程和这些进程所使用的内存所构成的集合。它根本不需要一个与其相关联的数据库,没有任何数据文件也可以启动实例。
【sqlplus中启动oracle数据库实例】
SQL> connect system/manager as sysdba; 已连接到空闲例程。 SQL> startup open finance; ORACLE 例程已经启动。 Total System Global Area 1249902592 bytes Fixed Size 1292132 bytes Variable Size 318769308 bytes Database Buffers 922746880 bytes Redo Buffers 7094272 bytes 数据库装载完毕。 数据库已经打开。【sqlplus中停止oracle数据库实例】
SQL> connect system/manager as sysdba; 已连接。 SQL> shutdown immediate; 数据库已经关闭。 已经卸载数据库。 ORACLE 例程已经关闭。【sqlplus中查看oracle数据库实例名称】
SQL>select instance_name from v$instance;
大家访问oracle数据库就是访问一个实例,但这个实例如果是关联了数据库文件,就是可以访问的,如果没有就会有访问实例不存在的错误。
实例名是指用于响应某个数据库操作的数据库管理系统的名称。专业术语叫“SID”.
用于对外部连接,在操作系统中要取得与数据库的联系,必须要使用数据库实例名。
【实例和数据库的区别】
Q:实例是临时的,它只在相关的进程和内存集合存在的时候存在;数据库是永久的,文件存在他就存在。
Q:一个实例在其生存期内可安装和打开单个数据库。数据库可以被很多个实例安装和打开,或者一个接一个的实例安装和打开,或者由多个实例同时安装和打开。
【数据库服务名】
oracle8i引进,在8i以前,我们用SID来表示数据库的一个实例,但是在oracle的并行环境中,一个数据库对应多个实例,这样就需要多个网络服务名,为了方便,引入数据库服务名。该参数对应一个数据库,而不是一个实例。
如果数据库有域名,那么数据库服务名就是全局数据库名称。数据库服务名与数据库名一致。
从oracle8i开始的oralce网络组件,客户端与数据库连接的主机字符串使用的是数据库服务名,之前用的是数据库实例名。
SQL>select value from v$parameter where name='service_names';
SQL>show parameter service_name;【网络服务名】
也可以称为数据库别名,是客户端访问数据库时所需要,网络服务名被记在tnsnames.ora文件中。
oralce中相关的概念整理