使用任意实例名来打开数据库测试--男人(实例)理论上能OPEN任意一个女人(数据库)
2013-11-15 11:00
267 查看
关于DB_NAME与ORACLE_SID,详见http://blog.csdn.net/q947817003/article/details/11269807
ORACLE_SID从ORACLE 10G开始,参数文件不再记录INSTANCE_NAME,此时INSTANCE_NAME动态从系统ORACLE_SID获得。将保持一致
DB_NAME:
实例启动的最少参数要求,有此参数,数据库实例就可以启动。可以新建INIT.ORA只包括此参数测试。
它代表了实例即将连接的数据库名称,关系到具体的物理文件。单实例数据库DB_NAME与INSTANCE_NAME可设置相同,RAC环境下多实例对应一个数据库,两者不同。
DB_NAME用来定义数据库名称,必须是不超过8个字符的文本串,数据库创建过程中,DB_NAME被记录在数据文件、日志文件、控制文件,实例启动过程中参数文件中DB_NAME与控制文件中不一致,则数据库不能启动。
一个实例可以MOUNT并打开任何数据库,同一时间一个实例只能打开一个数据库。
一个数据库可以被一个或多个实例MOUNT并打开,如RAC
主机,实例,数据库关系:
比如实例是男人,数据库是女人,主机就是一张大床。
正常情况下,同一时间一男只能打开一女,而理论上一男能打开任意女滴。
一女理论上可以被任意一个男打开,也可以同时被多个男打开----RAC/3P-NP。
一张大床(主机)可以睡一个男人(实例)和一个女人(库),只要床足够大,也可以睡多个男人和多个女人。
ORACLE_SID:
ORACLE System IDentifier的缩写, ORACLE_SID以环境变量形式出现。ORACLE实例由一块共享内存区域SGA和一组后台进程background process组成,后台进程是数据库与操作系统运行交互的通道。比如JORACLE根据ORACLE_SID决定查找参数文件并启动实例。
INSTANCE_NAME 在数据库内部ORACLE_sid关联概念就是INSTANCE_NAME,ORACLE存在的初始化参数INSTANCE_NAME用于标示数据库实例名字缺省值是ORACLE_SID,在数据库内部视图V$INSTANCE中记录着INSTANCE_NAME,来自数据库实例的SID,始终与ORACLE_SID保持一致。
从动态参数文件创建静态参数文件为:
create pfile from spfile;
create sfile='C:\DBHOME_1\DATABASE\initorcl.ora'from spfile=' C:\DBHOME_1\DATABASE\SPFILEORAC.ORA';
###########################################################################################################
使用任意实例名来打开数据库只需要更改以下三个参数:
修改.bash_profile 或者只改exprot ORACLE_SID参数即可
修改spfile**.ora 为新SID名。
修改密码文件为新SID名
注意事项:实验完成后,关库并及时将SPFILE/密码文件/ORACLE_SID恢复为原来的数据。
如未关库就重新以原ORACLE_SID去OPEN数据库,会找不到SPFILE。。
如未关库但是修改了SPFILE/密码文件/ORACLE_SID,重新以原ORACLE_SID去OPEN数据库,实例可以启动,MOUNT时报错:ORA-01102: cannot mount database in EXCLUSIVE mode
[oracle@bys3 ~]$ export ORACLE_SID=bys5
[oracle@bys3 ~]$ echo $ORACLE_SID
bys5
[oracle@bys3 ~]$ cd $ORACLE_HOME/dbs
[oracle@bys3 dbs]$ ls
hc_bys3.dat lkBYS3 spfilebys3.ora
initbys3.ora orapwbys3
[oracle@bys3 dbs]$ mv spfilebys3.ora spfilebys3.oraa
[oracle@bys3 dbs]$ cp spfilebys3.oraa spfilebys5.ora
[oracle@bys3 dbs]$ cp orapwbys3 orapwbys3a
[oracle@bys3 dbs]$ mv orapwbys3 orapwbys5
[oracle@bys3 dbs]$ ls
hc_bys3.dat orapwbys3a spfilebys5.ora
initbys3.ora orapwbys5
lkBYS3 spfilebys3.oraa
3.启动实例并OPEN数据库,可以正常打开数据库
[oracle@bys3 dbs]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Fri Nov 15 10:49:44 2013
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to an idle instance.
SYS@ bys5>startup
ORACLE instance started.
Total System Global Area 150654976 bytes
Fixed Size 1363216 bytes
Variable Size 96469744 bytes
Database Buffers 50331648 bytes
Redo Buffers 2490368 bytes
Database mounted.
Database opened.
SYS@ bys5>select instance_name,host_name from v$instance;
INSTANCE_NAME HOST_NAME
---------------- ----------------------------------------------------------------
bys5 bys3.bys.com
SYS@ bys5>select name from v$database;
NAME
---------
BYS3
ORACLE_SID从ORACLE 10G开始,参数文件不再记录INSTANCE_NAME,此时INSTANCE_NAME动态从系统ORACLE_SID获得。将保持一致
DB_NAME:
实例启动的最少参数要求,有此参数,数据库实例就可以启动。可以新建INIT.ORA只包括此参数测试。
它代表了实例即将连接的数据库名称,关系到具体的物理文件。单实例数据库DB_NAME与INSTANCE_NAME可设置相同,RAC环境下多实例对应一个数据库,两者不同。
DB_NAME用来定义数据库名称,必须是不超过8个字符的文本串,数据库创建过程中,DB_NAME被记录在数据文件、日志文件、控制文件,实例启动过程中参数文件中DB_NAME与控制文件中不一致,则数据库不能启动。
一个实例可以MOUNT并打开任何数据库,同一时间一个实例只能打开一个数据库。
一个数据库可以被一个或多个实例MOUNT并打开,如RAC
主机,实例,数据库关系:
比如实例是男人,数据库是女人,主机就是一张大床。
正常情况下,同一时间一男只能打开一女,而理论上一男能打开任意女滴。
一女理论上可以被任意一个男打开,也可以同时被多个男打开----RAC/3P-NP。
一张大床(主机)可以睡一个男人(实例)和一个女人(库),只要床足够大,也可以睡多个男人和多个女人。
ORACLE_SID:
ORACLE System IDentifier的缩写, ORACLE_SID以环境变量形式出现。ORACLE实例由一块共享内存区域SGA和一组后台进程background process组成,后台进程是数据库与操作系统运行交互的通道。比如JORACLE根据ORACLE_SID决定查找参数文件并启动实例。
INSTANCE_NAME 在数据库内部ORACLE_sid关联概念就是INSTANCE_NAME,ORACLE存在的初始化参数INSTANCE_NAME用于标示数据库实例名字缺省值是ORACLE_SID,在数据库内部视图V$INSTANCE中记录着INSTANCE_NAME,来自数据库实例的SID,始终与ORACLE_SID保持一致。
从动态参数文件创建静态参数文件为:
create pfile from spfile;
create sfile='C:\DBHOME_1\DATABASE\initorcl.ora'from spfile=' C:\DBHOME_1\DATABASE\SPFILEORAC.ORA';
###########################################################################################################
使用任意实例名来打开数据库只需要更改以下三个参数:
修改.bash_profile 或者只改exprot ORACLE_SID参数即可
修改spfile**.ora 为新SID名。
修改密码文件为新SID名
注意事项:实验完成后,关库并及时将SPFILE/密码文件/ORACLE_SID恢复为原来的数据。
如未关库就重新以原ORACLE_SID去OPEN数据库,会找不到SPFILE。。
如未关库但是修改了SPFILE/密码文件/ORACLE_SID,重新以原ORACLE_SID去OPEN数据库,实例可以启动,MOUNT时报错:ORA-01102: cannot mount database in EXCLUSIVE mode
1.修改.bash_profile的 ORACLE_SID参数或者exprot ORACLE_SID参数
我这里用exprot ORACLE_SID参数的方式[oracle@bys3 ~]$ export ORACLE_SID=bys5
[oracle@bys3 ~]$ echo $ORACLE_SID
bys5
2.修改初始化参数文件-SPFILE名字格式--不用修改内容--做好文件备份
修改密码文件格式-密码文件的名字格式--不用修改内容[oracle@bys3 ~]$ cd $ORACLE_HOME/dbs
[oracle@bys3 dbs]$ ls
hc_bys3.dat lkBYS3 spfilebys3.ora
initbys3.ora orapwbys3
[oracle@bys3 dbs]$ mv spfilebys3.ora spfilebys3.oraa
[oracle@bys3 dbs]$ cp spfilebys3.oraa spfilebys5.ora
[oracle@bys3 dbs]$ cp orapwbys3 orapwbys3a
[oracle@bys3 dbs]$ mv orapwbys3 orapwbys5
[oracle@bys3 dbs]$ ls
hc_bys3.dat orapwbys3a spfilebys5.ora
initbys3.ora orapwbys5
lkBYS3 spfilebys3.oraa
3.启动实例并OPEN数据库,可以正常打开数据库
[oracle@bys3 dbs]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Fri Nov 15 10:49:44 2013
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to an idle instance.
SYS@ bys5>startup
ORACLE instance started.
Total System Global Area 150654976 bytes
Fixed Size 1363216 bytes
Variable Size 96469744 bytes
Database Buffers 50331648 bytes
Redo Buffers 2490368 bytes
Database mounted.
Database opened.
SYS@ bys5>select instance_name,host_name from v$instance;
INSTANCE_NAME HOST_NAME
---------------- ----------------------------------------------------------------
bys5 bys3.bys.com
SYS@ bys5>select name from v$database;
NAME
---------
BYS3
相关文章推荐
- ORACLE新建实例打开已有的数据库--数据库与实例的区分测试
- 连接到 SQL Server 的实例时收到错误消息:“Cannot open user default database”(无法打开用户默认数据库)
- 如何在GNU/Linux操作系统中使用命令行xdg-open打开一个任意格式的文件
- SQLiteOpenHelper创建数据库,使用Junit进行测试
- SQLiteOpenHelper数据库打开连接帮助类使用说明
- 使用SQLiteOpenHelper获取用于操作数据库的SQLiteDatabase实例
- redis数据库的使用方法以及测试实例
- C#中通过使用Connection类来实现打开/关闭数据库的代码实例
- 使用SQLiteOpenHelper获取用于操作数据库的SQLiteDatabase实例
- vc使用ADO连接数据库 ADODB中的RecordSet.Open打开记录的两个参数adOpenKeyset、adLockBatchOptimistic的说明:
- 使用SQLiteOpenHelper获取用于操作数据库的SQLiteDatabase实例
- mongodb authentication 设置权限之后,新建个管理账户和一般数据库用户,在win 7 64bit 环境下测试使用实例
- sqlite3_open打开数据库失败 返回值14问题
- window7下使用SQL Server 2008 R2 附加数据库 时报 无法打开物理文件 操作系统错误 5:拒绝访问 SQL Sever
- SSH2框架--使用泛型DAO,JUnit测试时,如何使用事务,使用操作不真正的提交的数据库中
- 【转】解压缩版tomcat配置及使用(环境变量设置及测试,一个简单的web应用实例)
- 使用ADO封装类的数据库程序开发实例(下)
- MySQL数据库基准压力测试工具之MySQLSlap使用实例
- tomcat配置及使用(环境变量设置及测试,一个简单的web应用实例)
- SpringBoot使用Driud连接数据库(仅配置测试连接,通过配置类方法配置)