init.ora 的 processes = 200 
调大些

解决方案 »

  1.   

    我想不是这样的
    我的processes = 500,而且,哪那么多客户端
      

  2.   

    服务器是dedicated?
    好象要在tnsnams.ora设置一个dedicated 参数,查查文档吧.
      

  3.   

    805服务器是默认就是dedicated服务器。
    而且,早先没有这个问题,这是最近出的,一般运行几天后才出现这个问题
      

  4.   

    修改init.ora里面有一行 ……dispachers="(protocol=tcp……之类的东西注释掉,然后重新启动数据库
      

  5.   

    修改init.ora里面有一行 ……dispachers="(protocol=tcp……之类的东西注释掉,然后重新启动数据库
    再不行,就将tnslistener服务停掉重启动(记住,不是stop/start,而是重起服务)
      

  6.   

    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
      

  7.   

    这个问题我也遇到过:
      (Win2K adv. + Ora8.1.7 )
      在控制面板中"服务"窗体中 修改服务:OracleServiceXXX的属性!
    把“登录”中的帐号改成:“本地帐号”!(AIX4.3.3 + Ora8.1.7)
    >simmty userHope it helps.
      

  8.   

    这个问题我也遇到过:
      (Win2K adv. + Ora8.1.7 )
      在控制面板中"服务"窗体中 修改服务:OracleServiceXXX的属性!
    把“登录”中的帐号改成:“本地帐号”!(AIX4.3.3 + Ora8.1.7)
    >smitty userHope it helps.
      

  9.   

    根据你的init文件
    你的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;看有多少会话在数据库中,是不是有很多?到底多少?
    综合各种因素再确信问题所在
      

  10.   

    to  biti_rainy(biti_rainy) :
    看样子我还是交代的不够详细。
    我的数据库是在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))
      )
    我检查了一下以上资料,其他的都是正确的。
    因为我的机器要在两个网段中使用。
    -----------------------------------------
    我奇怪的是,我重起监听器都不可以,非要重起数据库或机器
    要么,我只好配置成多线程,或是不用预分配的专用服务器。
    如果要重起数据库很麻烦的,我想找出原因所在,我不可能天天看着数据库的。
      

  11.   

    listener中去掉  POOL_SIZE = 2  等等对于你来说没有实际意义的设置我还没有明白为什么要用双网卡
    不同网段使用同一个数据库,没有理由要两个ip,listenr中host就一个ip就可以了在本机上走 listener能登陆么?
    connect system/manager@net_service_name
    如果本机也能登陆,那就是listener的配置和网卡有地方出问题
    导致client无法访问client :  tnsping net_service_name ,  正常么?最后,使用一块网卡,重新配置listener,试一下
      

  12.   

    用双网卡是必须的,因为有两个网段,一个是内部网(192段),一个是广域网(10段),监听机器名还不行,广域网里隔着很多不同的网关,用机器名是监听不了的。
    POOL_SIZE = 2  是预分配专用服务器进程自动配置的,它只是一个监听池,而且好象是必须的。会与它有关吗?不过我可以试试。
    这个错误已经有好几天又没有出了。我正在等它重出呢。
    本机connect system/manager@net_service_name也不能连接的。
    client :  tnsping net_service_name的我没有试,现在不出错了,我还没有环境,我得等下一次错误才能试。
    我也认为这个错误最大的可能就是监听错误,不是监听的ip出的问题,而是预分配专用进程的问题,再出错的话,我就改回普通的专用进程的分配,不用预分配专用进程。
      

  13.   

    用双网卡是必须的,因为有两个网段,一个是内部网(192段),一个是广域网(10段),监听机器名还不行,广域网里隔着很多不同的网关,用机器名是监听不了的。
    POOL_SIZE = 2  是预分配专用服务器进程自动配置的,它只是一个监听池,而且好象是必须的。会与它有关吗?不过我可以试试。
    这个错误已经有好几天又没有出了。我正在等它重出呢。
    本机connect system/manager@net_service_name也不能连接的。
    client :  tnsping net_service_name的我没有试,现在不出错了,我还没有环境,我得等下一次错误才能试。
    我也认为这个错误最大的可能就是监听错误,不是监听的ip出的问题,而是预分配专用进程的问题,再出错的话,我就改回普通的专用进程的分配,不用预分配专用进程。
      

  14.   

    你不用试了
    你只要用预分配专用进程分配
    POOL_SIZE = 2是不能去掉的,只能是改变大小,这是预分配专用进程的cache池。否则的话,你连监听器启动都会出错。
    我早说过,你还是不用这种方式算了,有很多错误,连oracle自己的维护人员都有可能解决不了,也有很多是oracle的bug(如00600错误)
    我们只能是这样,如果有错误的可能,只要改变一种方式,能避免这种错误,也是一种成功,不要在一棵树上吊死。
    以上只是我个人的观点,大家可以不必赞同。
      

  15.   

    呵呵,可能我说的有点绝对,有些常见的错误,还是能排除的。
    但我最烦的是oracle的这么一句话
    contact Worldwide Customer Support
    谁有机会去找他,他以为人人都用的是有许可的呀。
    所以,象oracle的这种错误,我能避开的就避开
      

  16.   

    不是针对解决你的饿问题,但是从另一个角度说一个问题关于内部网和广鱼网的问题
    不是一定需要双网卡的
    在listener上使用任意一个名字
    内部网的client能把该名字解析成内部ip (在hosts中设置)
    在外部网上的client把该名字解析成外部ip(在hosts中设置)
    这样就可以了因为以前我就遇见过这样的内网外网的我问题问题(hosts在unix下我就不说了,windows下是C:\WINNT\system32\drivers\etc\hosts)
      

  17.   

    不是解决你的问题,针对另外一个问题的角度来谈论
    我以前也遇见过外网内网的问题
    在listener中host设置成一个随意的名字,假定 eee
    然后在内网的client上把eee解析成内网ip
    外网上把eee解析成外网ip
    本机上eee当然也解析成本机地址
    就这样就可以解决这个问题unix下我就不说了
    windows下是在下面文件中修改C:\WINNT\system32\drivers\etc\hosts
      

  18.   

    to  biti_rainy(biti_rainy);
    就我的观点来说,我觉得bachelor(鹰飞九月) 的配置法还是可取的,如果照你的办法来,那不是每个client都得修改host文件(当然配置dns服务器也可以)。
    我觉得,client的工作还是越简单越好。