数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

oracle 10g常见问题精选


发布日期:2018年12月20日
 
oracle 10g常见问题精选

怎样配置EM使其支持SSL 协议

G EM 中的OMS DBConsoleAgent 都支持SSL 协议

具体操作:

如果没有环境变量ORACLE_SID请先配置或者直接敲入set ORACLE_SID=xxx (UNIX环境下请根据不同的shell类型使用不同的语法:setenv export)

键入 emctl secure 可以看到全部的选项:

secure oms

[] [reset]

ecure agent

ecure em

ecure dbconsole

[]

ecure setpwd

ecure status [oms url]

ecure lock | unlock

以配置oms为例

先停掉所有与oms相关的 服务(opmnctl stopall)

敲入: emctl secure oms会让你输入registration password然后系统会产生相关的证书文件 如果一切顺利的话系统会有提示配置成功的信息

重新启动服务(opmnctl startall)

缺省情况下这两个端口是可用的 配置成secure 模式后端口是支持SSL协议的 从$EM_HOME\sysman\config目录下的emomsproperties文件中可以看到配置信息

检测oms是否已经运行在https协议下

emctl secure status oms url

注意: URL 要输入完整

例如: https://myserver:/em/upload/

Agent DBconsole的配置基本类似

启动浏览器运行时IE会弹出一个安装安全证书的窗口确认

出现了问题怎样解决

以DB Control为例 大致的步骤是这样的:

emctl status dbconsole 查看db control 的状态

去 $ORACLE_HOME\hostname_sid\sysman\log目录下查看相关日志(emomslogemagentlog等)

检查配置文件 emdpropertiesemomsproperties

目录: $ORACLE_HOME\hostname_sid\sysman\config

确保监听器工作正常: lsnrctl status

G EM 使用的是配置文件中定义的连接串而不是直接访问tnsnamesora

目录: $ORACLE_HOME\hostname_sid\sysman\config

文件: emomsproperties

参数: oraclesysmanemlmntremdRepConnectDescriptor

修改了监听端口 怎样保证 DB Control 正常运行

修改 listenerora 和tnsnamesora 这两个文件:

tnsnamesora 中需要加入:

listener_ =

(ADDRESS = (PROTOCOL = TCP)

(HOST = xxxx)(PORT = 新的端口))

然后启动数据库:

SQL> show parameter local_listener ;

SQL> alter system set local_listener=listener_ scope=spfile;

重启数据库使得修改生效

修改 $ORACLE_HOME\hostname_sid\sysman\config

下的emomsproperties文件:

oraclesysmanemlmntremdRepPort=新的端口

oraclesysmanemlmntremdRepConnectDescriptor=(DESCRIPTION\=(ADDRESS_LIST\=(ADDRESS\=(PROTOCOL\=TCP)(HOST\=xxx)(PORT\=新的端口)))(CONNECT_DATA\=(SERVICE_NAME\=xxx)))

最后还要修改 $ORACLE_HOME\hostname_sid\sysman\emd

下的targetsxml:

新的端口/>

重新启动监听器和dbconsole 服务

如果嫌上面的操作麻烦可以用emca这个命令行工具:

emca h 查看所有可用的命令

emca r 跳过资料档案库的创建

怎样修改 DB Control 的服务端口

缺省情况下 DB Control 的端口是 可以参考下面的说明更改端口

如果用户想改变oms端口必须改变以下三个文件然后重启db control以使得改变生效

编辑$ORACLE_HOME/_/sysman/config/emomsproperties并改变以下参数

oraclesysmanemSDKsvltConsoleServerPort

oraclesysmanemSDKsvltConsoleServerHTTPSPort

编辑$ORACLE_HOME/_/sysman/config/emdproperties并改变以下参数:

REPOSITORY_URL

emdWalletSrcUrl

编辑$ORACLE_HOME/ocj/jee/OCJ_DBConsole__/config/并改变以下参数:

website port

请在修改前备份

如何使用Automatic SGA Management

Automatic SGA Management 是 G 引入的新特性之一将初始化参数文件中与内存管理密切有关的几个参数抽取出来交由数据库去自行管理(由新增加的参数SGA_TARGET来管理)在一定程序上能减轻DBA的负担

至于参数的合理性还需要结合AWR Report 去验证

SGA_TARGET = db_cache_size + db_nk_cache_size(n=)

+ db_keep_cache_size + db_recycle_cache_size +

hared_pool_size + java_pool_size + large_pool_size + xxxx

xxx: 是一个保留值从目前的实验来看基本是M

步骤:

alter system set sga_target=m scope=both

create pfile from spfile;

hutdown immediate;

修改initora 文件将这些参数的值设成:

db_cache_size shared_pool_size java_pool_sizelarge_pool_size

启动SQLPLUS以新的pfile文件启动数据库

SQL> startup pfile=

让我们来看看调整的结果:

SQL> select name block_size current_size from v$buffer_pool;

ame block_size current_size

KEEP

SQL> Select pool sum(bytes)// as M bytes from v$SGASTAT

group by pool;

ool M bytes

java pool

large pool

hared pool

=buffer cache + log buffer + fixed sga + all others

改动java pool的值

SQL> alter system set java_pool_size=M;

SQL> select name block_size current_sizeprev_size from v$buffer_pool;

ame block_size current_size prev_size

KEEP

SQL> Select pool sum(bytes)// as M bytes from v$SGASTAT

group by pool;

ool M bytes

java pool

large pool

hared pool

可以看出 db_cache_size的值已经被自动调小了

再把java pool 的值改回去

SQL> alter system set java_pool_size=M;

SQL> select name block_size current_sizeprev_size from v$buffer_pool;

ame block_size current_size prev_size

KEEP

SQL> select name block_size current_sizeprev_size from v$buffer_pool;

ool M bytes

java pool

large pool

hared pool

这一次 db_cache_size的值没有变化 JAVA_POOL_SIZE的值也没有变化

修改large pool的值为M

SQL> alter system set large_pool_size=M;

System altered

SQL> select nameblock_sizecurrent_sizeprev_size from v$buffer_pool;

NAME BLOCK_SIZE CURRENT_SIZE PREV_SIZE

DEFAULT

SQL> Select pool sum(bytes)// as M bytes from v$sgastat group by pool;

POOL M bytes

java pool

large pool

hared pool

这次db_cache_size和large_pool_size的值都变了

同样调大shared_pool_size后 db_cache_size会自动减小

虽然db_nk_cache_size的值不会随着workload 的改变而自动调整 我们还是可以看看               

上一篇:Oracle动态SQL返回单条结果和结果集

下一篇:数据库技术考试大纲(中级)