求采纳
端口就一个,参考以下:
(不知道TNSName里面是什么状况,以下文章是我转过来的,希望对你有帮助)
第一段:要求:两个实例名(INSTANCE_NAME)不同,数据库名(DB_NAME)相同
第四段:具体实施步骤:
①.、关闭源数据库 考备数据文件、控制文件、参数文件以及 建立bdump,udmp等相应文件夹.
SQL shutdown immediate
数据库已经关闭.
已经卸载数据库.
ORACLE 例程已经关闭.
SQL
d:\oracle\admin\test\bdump
d:\oracle\admin\test\pfile
d:\oracle\admin\test\create
d:\oracle\admin\test\cdump
d:\oracle\admin\test\udump
数据文件存放:
D:\oracle\oradata\test\
大部分参数据与源数据库相同,主要修改的参数为:
Instance_name=test
Controlfiles=('d:\oracle\oradata\test\control01.tcl', 'd:\oracle\oradata\test\control01.tcl', 'd:\oracle\oradata\test\control01.tcl')
background_dump_dest='d:\oracle\admin\test\bdump'
core_dump_dest='d:\oracle\admin\test\cdump'
user_dump_dest='d:\oracle\admin\test\udump'
需要添加参数:
lock_name_space=test (说明: 指定分布式锁管理器 (DLM) 用来生成锁名称的命名空间.如果同一个簇上存在一个同名的备用数据库或克隆数据库,
db_file_name_convert='d:\oracle\oradata\study\',' d:\oracle\oradata\test\'
log_file_name_convert='d:\oracle\oradata\study\',' d:\oracle\oradata\test\'
(db_file_name_convert: 说明: 将主数据库上的一个新数据文件的文件名转换为备用数据库上的文件名. 值范围: 一个有效的主/备用目录和文件名对
log_file_name_convert: 说明: 将主数据库上的一个日志文件的文件名转换为备用数据库上对等的路径...LOG_FILE_NAME_CONVERT 参数. 值范围: 任何格式为 ''主体日志文件的路径/文件名)
同时要注意修改一下两个参数据文件中关于SGA 的一些参数,防止超出内存最大范围
C:\>oradim –new –sid test
C:\set oracle_sid=test
C:\sqlplus /nolog
SQLconn /as sysdba
已连接到空闲例程.
SQL startup nomount pfile='d:\oracle\admin\test\pfile\inittest.ora'
ORACLE 例程已经启动.
SQLalter database mount
数据库已更改.
SQL alter database rename file 'D:\ORACLE\ORADATA\STUDY\TOOLS01.DBF' to ' D:\ORACLE\ORADATA\TEST\TOOLS01.DBF ';
数据库已更改
按以上方法将其他数据文件.日志文件的路径RENAME
SQL alter database open;
SQL show parameter instance_name
NAME TYPE VALUE
------------------------------------ ----------- ----------
instance_name string bak
SQLshow parameter db_name
db_name string study
至此整个实验完成!
在SQL/PLUS工具中运行如下可以得到服务名
select
global_name
from
global_name;
至于端口号可以在Net
Manager中打开看到
要不你也试试
可以通过tnsnames.ora文件读取数据库的信息.
可以看到类似如下的内容:abc
=
(DESCRIPTION
(ADDRESS_LIST
(ADDRESS
(PROTOCOL
TCP)(HOST
(CONNECT_DATA
(SERVER
DEDICATED)
(SERVICE_NAME
orcl)))
HOST=
就是主机地址(如果是写的主机名,可以查看/etc/hosts文件中查看主机名对应的IP地址)
POST=
就是数据库开放的端口