to xinpingf(白开心),你觉得是这样吗? 我的init文件中没有你说的那个,这是我的init文件,你看看 # # $Header: init.ora 05-jun-97.14:56:46 hpiao Exp $ # # Copyright (c) 1991, 1997 by Oracle Corporation # ############################################################################## # Example INIT.ORA file # # This file is provided by Oracle Corporation to help you customize # your RDBMS installation for your site. Important system parameters # are discussed, and example settings given. # # Some parameter settings are generic to any size installation. # For parameters that require different values in different size # installations, three scenarios have been provided: SMALL, MEDIUM # and LARGE. Any parameter that needs to be tuned according to # installation size will have three settings, each one commented # according to installation size. # # Use the following table to approximate the SGA size needed for the # three scenarious provided in this file: # # -------Installation/Database Size------ # SMALL MEDIUM LARGE # Block 2K 4500K 6800K 17000K # Size 4K 5500K 8800K 21000K # # To set up a database that multiple instances will be using, place # all instance-specific parameters in one file, and then have all # of these files point to a master file using the IFILE command. # This way, when you change a public # parameter, it will automatically change on all instances. This is # necessary, since all instances must run with the same value for many # parameters. For example, if you choose to use private rollback segments, # these must be specified in different files, but since all gc_* # parameters must be the same on all instances, they should be in one file. # # INSTRUCTIONS: Edit this file and the other INIT files it calls for # your site, either by using the values provided here or by providing # your own. Then place an IFILE= line into each instance-specific # INIT file that points at this file. ################################################################################ replace "oracle" with your database name db_name = afisdb_files = 1000 # INITIAL # db_files = 80 # SMALL # db_files = 400 # MEDIUM # db_files = 1000 # LARGE control_files = ("e:\orant\database\ctl1afis.ora", "e:\orant\database\ctl2afis.ora","e:\orant\database\ctl3afis.ora")db_file_multiblock_read_count = 32 # INITIAL # db_file_multiblock_read_count = 8 # SMALL # db_file_multiblock_read_count = 16 # MEDIUM # db_file_multiblock_read_count = 32 # LARGE db_block_buffers = 32000 # INITIAL # db_block_buffers = 100 # SMALL # db_block_buffers = 550 # MEDIUM # db_block_buffers = 3200 # LARGE large_pool_size= 10485760 hash_area_size = 20971520 shared_pool_size = 104857600 # INITIAL # shared_pool_size = 3500000 # SMALL # shared_pool_size = 5000000 # MEDIUM # shared_pool_size = 9000000 # LARGElog_checkpoint_interval = 8192 log_checkpoint_timeout = 1800processes = 300 # INITIAL # processes = 50 # SMALL # processes = 100 # MEDIUM # processes = 200 # LARGE dml_locks = 300parallel_min_servers = 2 parallel_max_servers = 8 # SMALL # parallel_max_servers = 4 x (number of CPUs) # MEDIUM # parallel_max_servers = 4 x (number of CPUs) # LARGElog_buffer = 3276800 # INITIAL # log_buffer = 8192 # SMALL # log_buffer = 32768 # MEDIUM # log_buffer = 163840 # LARGEsequence_cache_entries = 100 # INITIAL # sequence_cache_entries = 10 # SMALL # sequence_cache_entries = 30 # MEDIUM # sequence_cache_entries = 100 # LARGE sequence_cache_hash_buckets = 89 # INITIAL # sequence_cache_hash_buckets = 10 # SMALL # sequence_cache_hash_buckets = 23 # MEDIUM # sequence_cache_hash_buckets = 89 # LARGE # audit_trail = true # if you want auditing # timed_statistics = true # if you want timed statistics max_dump_file_size = 10240 # limit trace file size to 5 Meg each# Uncommenting the line below will cause automatic archiving if archiving has # been enabled using ALTER DATABASE ARCHIVELOG. Log_Archive_Start=true Log_Archive_dest=e:\Archive Log_Archive_Format=Afis%S%T.ARC# If using private rollback segments, place lines of the following # form in each of your instance-specific init.ora files: RollBack_segments=(RBS01,RBS02,RBS03,RBS04,RBS05,RBS06,RBS07,RBS08,RBS09,RBS10,RBS11,RBS12,RBS13,RBS14,RBS15,RBS16,RBS17,RBS18,RBS19,RBS20,RBS21,RBS22,RBS23,RBS24) # If using public rollback segments, define how many # rollback segments each instance will pick up, using the formula # # of rollback segments = transactions / transactions_per_rollback_segment # In this example each instance will grab 40/10 = 4: # transactions = 40 transactions_per_rollback_segment = 16 # Global Naming -- enforce that a dblink has same name as the db it connects to global_names = FALSE# Edit and uncomment the following line to provide the suffix that will be # appended to the db_name parameter (separated with a dot) and stored as the # global database name when a database is created. If your site uses # Internet Domain names for e-mail, then the part of your e-mail address after # the '@' is a good candidate for this parameter value.# db_domain = us.acme.com # global database name is db_name.db_domain# Uncomment the following line if you wish to enable the Oracle Trace product # to trace server activity. This enables scheduling of server collections # from the Oracle Enterprise Manager Console. # Also, if the oracle_trace_collection_name parameter is non-null, # every session will write to the named collection, as well as enabling you # to schedule future collections from the console.# Sql_trace = true # oracle_trace_enable = TRUE # Timed_statistics = true# define directories to store trace and alert files background_dump_dest = e:\orant\rdbms80\trace user_dump_dest = e:\orant\rdbms80\tracedb_block_size = 8192 compatible = 8.0.5.0.0 sort_area_size = 655360 remote_login_passwordfile = sharedtext_enable = TRUE# The following parameters are needed for the Advanced Replication Optionjob_queue_processes = 10 job_queue_interval = 10 #job_queue_keep_connections = falsedistributed_lock_timeout = 60 distributed_transactions = 200open_links = 4
我的processes = 500,而且,哪那么多客户端
好象要在tnsnams.ora设置一个dedicated 参数,查查文档吧.
而且,早先没有这个问题,这是最近出的,一般运行几天后才出现这个问题
再不行,就将tnslistener服务停掉重启动(记住,不是stop/start,而是重起服务)
我的init文件中没有你说的那个,这是我的init文件,你看看
#
# $Header: init.ora 05-jun-97.14:56:46 hpiao Exp $
#
# Copyright (c) 1991, 1997 by Oracle Corporation
#
##############################################################################
# Example INIT.ORA file
#
# This file is provided by Oracle Corporation to help you customize
# your RDBMS installation for your site. Important system parameters
# are discussed, and example settings given.
#
# Some parameter settings are generic to any size installation.
# For parameters that require different values in different size
# installations, three scenarios have been provided: SMALL, MEDIUM
# and LARGE. Any parameter that needs to be tuned according to
# installation size will have three settings, each one commented
# according to installation size.
#
# Use the following table to approximate the SGA size needed for the
# three scenarious provided in this file:
#
# -------Installation/Database Size------
# SMALL MEDIUM LARGE
# Block 2K 4500K 6800K 17000K
# Size 4K 5500K 8800K 21000K
#
# To set up a database that multiple instances will be using, place
# all instance-specific parameters in one file, and then have all
# of these files point to a master file using the IFILE command.
# This way, when you change a public
# parameter, it will automatically change on all instances. This is
# necessary, since all instances must run with the same value for many
# parameters. For example, if you choose to use private rollback segments,
# these must be specified in different files, but since all gc_*
# parameters must be the same on all instances, they should be in one file.
#
# INSTRUCTIONS: Edit this file and the other INIT files it calls for
# your site, either by using the values provided here or by providing
# your own. Then place an IFILE= line into each instance-specific
# INIT file that points at this file.
################################################################################ replace "oracle" with your database name
db_name = afisdb_files = 1000 # INITIAL
# db_files = 80 # SMALL
# db_files = 400 # MEDIUM
# db_files = 1000 # LARGE control_files = ("e:\orant\database\ctl1afis.ora", "e:\orant\database\ctl2afis.ora","e:\orant\database\ctl3afis.ora")db_file_multiblock_read_count = 32 # INITIAL
# db_file_multiblock_read_count = 8 # SMALL
# db_file_multiblock_read_count = 16 # MEDIUM
# db_file_multiblock_read_count = 32 # LARGE db_block_buffers = 32000 # INITIAL
# db_block_buffers = 100 # SMALL
# db_block_buffers = 550 # MEDIUM
# db_block_buffers = 3200 # LARGE large_pool_size= 10485760
hash_area_size = 20971520
shared_pool_size = 104857600 # INITIAL
# shared_pool_size = 3500000 # SMALL
# shared_pool_size = 5000000 # MEDIUM
# shared_pool_size = 9000000 # LARGElog_checkpoint_interval = 8192
log_checkpoint_timeout = 1800processes = 300 # INITIAL
# processes = 50 # SMALL
# processes = 100 # MEDIUM
# processes = 200 # LARGE
dml_locks = 300parallel_min_servers = 2
parallel_max_servers = 8 # SMALL
# parallel_max_servers = 4 x (number of CPUs) # MEDIUM
# parallel_max_servers = 4 x (number of CPUs) # LARGElog_buffer = 3276800 # INITIAL
# log_buffer = 8192 # SMALL
# log_buffer = 32768 # MEDIUM
# log_buffer = 163840 # LARGEsequence_cache_entries = 100 # INITIAL
# sequence_cache_entries = 10 # SMALL
# sequence_cache_entries = 30 # MEDIUM
# sequence_cache_entries = 100 # LARGE sequence_cache_hash_buckets = 89 # INITIAL
# sequence_cache_hash_buckets = 10 # SMALL
# sequence_cache_hash_buckets = 23 # MEDIUM
# sequence_cache_hash_buckets = 89 # LARGE # audit_trail = true # if you want auditing
# timed_statistics = true # if you want timed statistics
max_dump_file_size = 10240 # limit trace file size to 5 Meg each# Uncommenting the line below will cause automatic archiving if archiving has
# been enabled using ALTER DATABASE ARCHIVELOG.
Log_Archive_Start=true
Log_Archive_dest=e:\Archive
Log_Archive_Format=Afis%S%T.ARC# If using private rollback segments, place lines of the following
# form in each of your instance-specific init.ora files:
RollBack_segments=(RBS01,RBS02,RBS03,RBS04,RBS05,RBS06,RBS07,RBS08,RBS09,RBS10,RBS11,RBS12,RBS13,RBS14,RBS15,RBS16,RBS17,RBS18,RBS19,RBS20,RBS21,RBS22,RBS23,RBS24) # If using public rollback segments, define how many
# rollback segments each instance will pick up, using the formula
# # of rollback segments = transactions / transactions_per_rollback_segment
# In this example each instance will grab 40/10 = 4:
# transactions = 40
transactions_per_rollback_segment = 16 # Global Naming -- enforce that a dblink has same name as the db it connects to
global_names = FALSE# Edit and uncomment the following line to provide the suffix that will be
# appended to the db_name parameter (separated with a dot) and stored as the
# global database name when a database is created. If your site uses
# Internet Domain names for e-mail, then the part of your e-mail address after
# the '@' is a good candidate for this parameter value.# db_domain = us.acme.com # global database name is db_name.db_domain# Uncomment the following line if you wish to enable the Oracle Trace product
# to trace server activity. This enables scheduling of server collections
# from the Oracle Enterprise Manager Console.
# Also, if the oracle_trace_collection_name parameter is non-null,
# every session will write to the named collection, as well as enabling you
# to schedule future collections from the console.# Sql_trace = true
# oracle_trace_enable = TRUE
# Timed_statistics = true# define directories to store trace and alert files
background_dump_dest = e:\orant\rdbms80\trace
user_dump_dest = e:\orant\rdbms80\tracedb_block_size = 8192
compatible = 8.0.5.0.0
sort_area_size = 655360
remote_login_passwordfile = sharedtext_enable = TRUE# The following parameters are needed for the Advanced Replication Optionjob_queue_processes = 10
job_queue_interval = 10
#job_queue_keep_connections = falsedistributed_lock_timeout = 60
distributed_transactions = 200open_links = 4
(Win2K adv. + Ora8.1.7 )
在控制面板中"服务"窗体中 修改服务:OracleServiceXXX的属性!
把“登录”中的帐号改成:“本地帐号”!(AIX4.3.3 + Ora8.1.7)
>simmty userHope it helps.
(Win2K adv. + Ora8.1.7 )
在控制面板中"服务"窗体中 修改服务:OracleServiceXXX的属性!
把“登录”中的帐号改成:“本地帐号”!(AIX4.3.3 + Ora8.1.7)
>smitty userHope it helps.
你的SGA大约使用了400M的内存sort_area_size大约是640k(这是每个session所用的)请检测这样几个问题:
1:你的机器的内存是多少? 1G?
2: 当出现这种问题的时候 connect system/manager 这样还能登陆上数据库么?如果这样也不能登陆则说明不是 listener的问题,如果这样能登陆但connect system/manager@net_service_name 不能登陆,才说明是网络或者listener的问题
3:system用户:select count(*) from v$session;看有多少会话在数据库中,是不是有很多?到底多少?
综合各种因素再确信问题所在
看样子我还是交代的不够详细。
我的数据库是在hp 6000上,NT操作系统,1G内存,RAID5的磁盘阵列
在本机通过connect system/manager能登录
但在客户端就不可以,客户端以前的连接照旧能用,只是不能在开新的连接。
select * from v$session的记录不超过50。远远没有达到init文件中的
processes值
还有,我的机器是双网卡,以上的监听在拷贝的时候有点失误,有一部分是这样。
LISTENER =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.40.5.117)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.61.181)(PORT = 1521))
(ADDRESS = (PROTOCOL = NMP)(SERVER = NETSERVER)(PIPE = ORAPIPE))
)
我检查了一下以上资料,其他的都是正确的。
因为我的机器要在两个网段中使用。
-----------------------------------------
我奇怪的是,我重起监听器都不可以,非要重起数据库或机器
要么,我只好配置成多线程,或是不用预分配的专用服务器。
如果要重起数据库很麻烦的,我想找出原因所在,我不可能天天看着数据库的。
不同网段使用同一个数据库,没有理由要两个ip,listenr中host就一个ip就可以了在本机上走 listener能登陆么?
connect system/manager@net_service_name
如果本机也能登陆,那就是listener的配置和网卡有地方出问题
导致client无法访问client : tnsping net_service_name , 正常么?最后,使用一块网卡,重新配置listener,试一下
POOL_SIZE = 2 是预分配专用服务器进程自动配置的,它只是一个监听池,而且好象是必须的。会与它有关吗?不过我可以试试。
这个错误已经有好几天又没有出了。我正在等它重出呢。
本机connect system/manager@net_service_name也不能连接的。
client : tnsping net_service_name的我没有试,现在不出错了,我还没有环境,我得等下一次错误才能试。
我也认为这个错误最大的可能就是监听错误,不是监听的ip出的问题,而是预分配专用进程的问题,再出错的话,我就改回普通的专用进程的分配,不用预分配专用进程。
POOL_SIZE = 2 是预分配专用服务器进程自动配置的,它只是一个监听池,而且好象是必须的。会与它有关吗?不过我可以试试。
这个错误已经有好几天又没有出了。我正在等它重出呢。
本机connect system/manager@net_service_name也不能连接的。
client : tnsping net_service_name的我没有试,现在不出错了,我还没有环境,我得等下一次错误才能试。
我也认为这个错误最大的可能就是监听错误,不是监听的ip出的问题,而是预分配专用进程的问题,再出错的话,我就改回普通的专用进程的分配,不用预分配专用进程。
你只要用预分配专用进程分配
POOL_SIZE = 2是不能去掉的,只能是改变大小,这是预分配专用进程的cache池。否则的话,你连监听器启动都会出错。
我早说过,你还是不用这种方式算了,有很多错误,连oracle自己的维护人员都有可能解决不了,也有很多是oracle的bug(如00600错误)
我们只能是这样,如果有错误的可能,只要改变一种方式,能避免这种错误,也是一种成功,不要在一棵树上吊死。
以上只是我个人的观点,大家可以不必赞同。
但我最烦的是oracle的这么一句话
contact Worldwide Customer Support
谁有机会去找他,他以为人人都用的是有许可的呀。
所以,象oracle的这种错误,我能避开的就避开
不是一定需要双网卡的
在listener上使用任意一个名字
内部网的client能把该名字解析成内部ip (在hosts中设置)
在外部网上的client把该名字解析成外部ip(在hosts中设置)
这样就可以了因为以前我就遇见过这样的内网外网的我问题问题(hosts在unix下我就不说了,windows下是C:\WINNT\system32\drivers\etc\hosts)
我以前也遇见过外网内网的问题
在listener中host设置成一个随意的名字,假定 eee
然后在内网的client上把eee解析成内网ip
外网上把eee解析成外网ip
本机上eee当然也解析成本机地址
就这样就可以解决这个问题unix下我就不说了
windows下是在下面文件中修改C:\WINNT\system32\drivers\etc\hosts
就我的观点来说,我觉得bachelor(鹰飞九月) 的配置法还是可取的,如果照你的办法来,那不是每个client都得修改host文件(当然配置dns服务器也可以)。
我觉得,client的工作还是越简单越好。