原始人 发表于 2010-11-26 11:55:28

请教各位大师们

   小弟不明白,tnsnames.ora里的service_name是从哪里来的?如果是从监听器那里,可是设置监听器的时候并没有指定service_name呀?还是它和db_global_name相同呢?真的搞不懂啊

kevin.zhang 发表于 2010-11-26 12:02:17

对应数据库提供的service name。
在目标数据库中show parameter service_name可以看到

oraunix 发表于 2010-11-26 12:23:29

关键还是看你使用的是动态注册还是静态注册。
使用lsnrctl status,查看里面注册的动态和静态service的情况。
我讲课的时候,好像专门针对这个情况做过一个分析。

原始人 发表于 2010-11-26 16:21:37

回复 oraunix 的帖子

老师我想给手动创建的数据库再创建oem,可是出现问题了。
emca -repos create

STARTED EMCA at Nov 26, 2010 4:11:35 PM
EM Configuration Assistant, Version 10.2.0.5.0 Production
Copyright (c) 2003, 2009, Oracle.All rights reserved.

Enter the following information:
Database SID: ll
Listener port number: 1521
Password for SYS user:
Password for SYSMAN user: cle

Do you wish to continue? : y
Nov 26, 2010 4:12:00 PM oracle.sysman.emcp.EMConfig perform
INFO: This operation is being logged at /u01/app/oracle/product/10.2.0/db_1/cfgtoollogs/emca/ll/emca_2010-11-26_04-11-35-PM.log.
Nov 26, 2010 4:12:01 PM oracle.sysman.emcp.DatabaseChecks performReposChecks
SEVERE: Dbcontrol Repository already exists.Fix the error(s) and run EM Configuration Assistant again in standalone mode.
$ emca -config dbcontrol db

STARTED EMCA at Nov 26, 2010 4:12:59 PM
EM Configuration Assistant, Version 10.2.0.5.0 Production
Copyright (c) 2003, 2009, Oracle.All rights reserved.

Enter the following information:
Database SID: ll
Nov 26, 2010 4:13:02 PM oracle.sysman.emcp.util.GeneralUtil initSQLEngine
WARNING: ORA-01031: insufficient privileges

Nov 26, 2010 4:13:02 PM oracle.sysman.emcp.DatabaseChecks throwDBUnavailableException
SEVERE:
Database instance is unavailable. Fix the ORA error thrown and run EM Configuration Assistant again.

Some of the possible reasons may be :

1) Database may not be up.
2) Database is started setting environment variable ORACLE_HOME with trailing '/'. Reset ORACLE_HOME and bounce the database.

For eg. Database is started setting environment variable ORACLE_HOME=/scratch/db/ . Reset ORACLE_HOME=/scratch/dband bounce the database.
它指出的这两种情况我都查看过了,我的数据库是启动的,oracle家目录也不是它说的那样,不知道怎么解决了

原始人 发表于 2010-11-26 16:23:27

回复 kevin.zhang 的帖子

我知道那样查,奇怪的是我开始并没有设置service_name 啊,它咋自己就默认是global_name了呢?我可以修改service_name 吗?

kevin.zhang 发表于 2010-11-26 16:27:35

service_name默认就是你的instance_name。 你可以修改service_name,并且可以修改成 很多个

chenyu 发表于 2010-11-26 17:27:03

先删除在安装
emca -deconfig dbcontrol db -repos drop
emca config dbcontrol db -repos create

shark 发表于 2010-11-27 20:03:05

本帖最后由 shark 于 2010-11-27 20:03 编辑

db_name=db_unique_name
service_name默认与database global name相同;而database global name=db_name.db_domain
而配置listener时的database global name 就是通过lsnrctl status 所能查看的service name。所以静态注册时,listener 中的database global name可以随便写,只要客服端的tnsname.ora中的service name 与其一致就行。

原始人 发表于 2010-11-28 18:32:07

回复 chenyu 的帖子

数据库是手动创建的,根本就没有oem,咋删呢?

chenyu 发表于 2010-11-30 09:14:03

那你也最好删一次,就使用上面的命令即可。
页: [1] 2
查看完整版本: 请教各位大师们