Multiple listeners on server

hi,
I have a server which has a number of database instances running. Each instance has been installed with a separate user (not oracle or oinstall) and this is true for the listeners and tnsnames. The correct oraenv therefore has to be run to get access. this is causing an issue in Grid Control whereby the agent reports a listener but because it is owned by a user different to that of the agent install it will not report correctly. What is the best policy for the listener. Is it a listener per instance or one listener for all instances.
rgds
alan

I would think the most common setup is one listener per network protocol in use: TCP, DECNET, SNA, etc.... for all databases on the server. For most sites this means one unnamed listener of the highest Oracle version installed on the server since few sites use multiple network protocols.
HTH -- Mark D Powell --

Similar Messages

  • Question about multiple listeners and vip addresses in rac.

    We have a 2 node rac cluster running 10.2.0.3 on rhel4 on the itanium platform. We have a need where we want to connect the 2 hosts up to another network temporarily by configuring an additional network interface on each server so that we can test some connections from a different network.
    My question is can you configure multiple listeners on the same server in which the newly added listener can be configured to service requets on the new network interface?
    Because it's rac would you need to configure an additional vip address? I am not sure that you can have multiple vip's on a server?
    Has anyone configured rac in such a way, any help is appreciated.

    can you configure multiple listeners on the same server in which the newly added listener can be configured to service requets on the new network interface?Yes, you can but you should not be doing this. Listener is a node specific resource and one listener can server multiple services. You actually can create multiple services within the database for different set of users and all can be registered to the same listener.
    Because it's rac would you need to configure an additional vip address? What do you mean by additional IP?
    You have installed 10g RAC where you have already configured virtual IPs. Why do you want to have additional one? node1 - static ip1, vip1, pvtip1
    node2 - static ip2 vip2, pvtip2
    total 6
    I am not sure that you can have multiple vip's on a server?Nothing to do with the server, they are based on public IP. Yes you can create multiples vip's based on same public IP. This is possible, But you do not need to do this in RAC environment.

  • Multiple listeners on Oracle 9i instance

    Hi,
    i am having problems starting multiple listeners in an Oracle 9i instance. The contents of the listener file is
    # LISTENER.ORA Network Configuration File: /lsq2/app/oracle/product/9.2.0/network/admin/listener.ora
    # Generated by Oracle configuration tools.
    LSNR_LSQ=
    (DESCRIPTION_LIST=
    (DESCRIPTION=
    (ADDRESS_LIST=
    (ADDRESS=(PROTOCOL=TCP)(HOST=traindb3-lsq)(PORT=1541))
    (ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC))
    (ADDRESS=(PROTOCOL=IPC)(KEY=CMDP))
    (ADDRESS=(PROTOCOL=IPC)(KEY=RT1))
    (ADDRESS=(PROTOCOL=IPC)(KEY=DM1))
    (ADDRESS=(PROTOCOL=IPC)(KEY=BOB))
    (DESCRIPTION=
    (PROTOCOL_STACK=
    (PRESENTATION=GIOP)
    (SESSION=RAW)
    (ADDRESS=(PROTOCOL=TCP)(HOST=traindb3-lsq)(PORT=2481))
    STOP_LISTENER = YES
    STARTUP_WAIT_TIME_LISTENER = 0
    CONNECT_TIMEOUT_LISTENER = 20
    SID_LIST_LSNR_LSQ=
    (SID_LIST=
    (SID_DESC=
    (SID_NAME=PLSExtProc)
    (ORACLE_HOME=/lsq2/app/oracle/product/9.2.0)
    (PROGRAM=extproc32)
    (ENV='GBPATH=/lsq2/home/cmdp/GB/nr')
    (SID_DESC=
    (GLOBAL_DBNAME=CMDP)
    (ORACLE_HOME=/lsq2/app/oracle/product/9.2.0)
    (SID_NAME=CMDP)
    (SID_DESC=
    (GLOBAL_DBNAME=DM1)
    (ORACLE_HOME=/lsq2/app/oracle/product/9.2.0)
    (SID_NAME=DM1)
    (SID_DESC=
    (GLOBAL_DBNAME=RT1)
    (ORACLE_HOME=/lsq2/app/oracle/product/9.2.0)
    (SID_NAME=RT1)
    (SID_DESC=
    (GLOBAL_DBNAME=BOB)
    (ORACLE_HOME=/lsq2/app/oracle/product/9.2.0)
    (SID_NAME=BOB)
    (SID_DESC=
    (GLOBAL_DBNAME=truat1)
    (ORACLE_HOME=/u01/app/oracle/product/9.2.0)
    (SID_NAME=truat1)
    (SID_DESC=
    (GLOBAL_DBNAME=tradev1)
    (ORACLE_HOME=/u01/app/oracle/product/9.2.0)
    (SID_NAME=tradev1)
    (SID_DESC=
    (GLOBAL_DBNAME=tratest1)
    (ORACLE_HOME=/u01/app/oracle/product/9.2.0)
    (SID_NAME=tratest1)
    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP) (HOST = 10.244.127.12) (PORT = 1521))
    (ADDRESS = (PROTOCOL = IPC) (KEY=EXTPROC))
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME=HDSSQLServer)
    (ORACLE_HOME=/lsq2/app/oracle/product/9.2.0)
    (PROGRAM=hsodbc)
    (ENVS=LD_LIBRARY_PATH=/lsq2/app/oracle/product/9.2.0/lib:/usr/local/easysoft/unixODBC/lib:/usr/local/easysoft/lib:/usr/l
    ocal/easysoft/oob/client)
    (SID_DESC =
    (SID_NAME=HDSSQLServerRotherham)
    (ORACLE_HOME=/lsq2/app/oracle/product/9.2.0)
    (PROGRAM=hsodbc)
    (ENVS=LD_LIBRARY_PATH=/lsq2/app/oracle/product/9.2.0/lib:/usr/local/easysoft/unixODBC/lib:/usr/local/easysoft/lib:/usr/l
    ocal/easysoft/oob/client)
    (SID_DESC =
    (SID_NAME=SDCIMart)
    (ORACLE_HOME=/lsq2/app/oracle/product/9.2.0)
    (PROGRAM=hsodbc)
    (ENVS=LD_LIBRARY_PATH=/lsq2/app/oracle/product/9.2.0/lib:/usr/local/easysoft/unixODBC/lib:/usr/local/easysoft/lib:/usr/l
    ocal/easysoft/oob/client)
    I could start the listener lsnr_lsq but not the default listener. The error I get is
    TNS-01155: Incorrectly specified SID_LIST_str parameter in LISTENER.ORA
    NL-00303: syntax error in NV string
    The default listener deals with connections to a sql server while lsnr_lsq deals with connections to oracle databases.
    Thanx in advance

    Could you make sure that you've services for all the SID's below in the tnsnames.ora file..
    1)HDSSQLServer,
    2)HDSSQLServerRotherham,
    3)SDCIMart
    Regards,
    Bhagat

  • How to configure multiple listeners to listen for the same instance.

    Hello everyone,
    I am running oracle database 11g and I want information regarding how to configure multiple listeners to listen for the same database instance. Actually I know how to configure more than one listener but the main thing that I am confused about is when we create listener.ora file, do we have to statically register the database instance with both the listeners or the instance will register itself with both the listeners.
    According to my knowledge the instance will register with the listener specified by LOCAL_LISTENER parameter and we cannot have more than one value for this parameter.
    Please only give detailed answers with example as I am tired of simple answers with details that I already know.

    Hello,
    Yes, it can make sense to have several listener for one Oracle instance. For instance you may have one listener for the applications another listener for DBA administration tasks as well as one listener dedicated to dataguard broker. It is not possible to have several listeners listening on the same IP and Port.
    By default the database try to automatically register to a listener on port 1521. To instruct the instance to register to a specifc list of listeners you can add in the init.ora the local_listener parameter with an alias definition:
    i.e
    local_listener=MY_SET_OFF_LISTENERS
    in your tnsname.ora add an entry called:
    MY_SET_OFF_LISTENERS_LOCAL= (ADDRESS_LIST=
    (ADRESS=(PROTOCOL=TCP)(HOST=myhostname)(PORT=1530))
    (ADRESS=(PROTOCOL=TCP)(HOST=myhostname)(PORT=1531))
    (ADRESS=(PROTOCOL=TCP)(HOST=myhostname)(PORT=1532))
    In this sample your instance will register to three listeners listening on respectively port 1530, 1531 and 1532
    If you want your clients can be balanced over the 3 listeners

  • How to specify multiple listeners in the init/spfile

    hi experts,
    can u explain me How to specify multiple listeners in the init/spfile ?

    you do not specify linsteners in spfile.
    The easiest way to configure more listeners is to use Net Configuration Assistant tool.

  • Unlimted License Patch fails for multiple versions of  Server Express

    I'm following the directions for installing and licensing two versions of Microfocus Server Express for a PeopleTools 8.52 upgrade. When I get to the point where I apply the Unlimited License Patch (ULP), the application to the first version goes fine, showing a successful "installed" message. After installing the other version of Server Express, I try to apply the ULP again and this time it returns an "uninstalled" message. Eventhough I had COBDIR set to the 2nd installation, the ULP deinstalled the patch for the first installation. I'm doing this as the root user but I have su'ed to root. This worked fine 2 years ago. What am I missing in the environment that prohibits me from installing the ULP for multiple versions of Server Express?

    LD_LIBRARY_PATH

  • Multiple Listeners - Multiple Event Handlers

    According to the tutorial, event handling code executes in a single event dispatching thread to ensure that each event handler finishes execution before the next executes. I'm also aware that I can add multiple action listeners to a single component, like JButton. But if I add mutliple listeners to a component, is there any way to determine in what order the event handling code will execute? Is there an order to which the listeners listen..
    Thanks in advance.

    Thanks to both of you for your responses and suggestions.
    camickr...
    I don't think its good style to add multiple listeners
    and write code dependent on the order of execution.I appreciate your candor here and I'm inclined to agree. So I've reorganized things a bit and I don't need to have the listeners in any particular order. But thank you for taking a look at the source code. It didn't occur to me to do that. That is interesting.
    Deudeu..
    If you require a specific sequential order you should create cascading eventsThis would be a way to resolve the issue of sequential response. When I changed my design a bit however, I didn't need to perform anything sequentially.

  • Multiple Listeners for one class?

    I have 2 listeners that increment a function
    synchronized public void increment()
    a long task...
    print statements..
    It seems that when I run one or the other listener it works fine.
    but when both are running then only one of the functions shows up. The
    other gets completely ignored even though both listeners are active..
    I was wondering if this is an issue where the second increment() is responding but since the first one is running it neglects to show the output.
    Since both listeners are on different threads. and responding to the same class would that cause a problem?
    The server I send the listeners to seems to be working just fine..
    Thank you in advance

    okay =). Here is as much as I can put up hopefully it is satisfactory.
    I am submitting listeners to Server and waiting for a response.
    I wrote an explanation in the run() function.
    The three main areas I think are the run(),submitImageOrder() and the Listeners that are doing the incrementing...
    public class JavaTest
        /** Creates a new instance of JavaTest */
        String xmlpath = "path";
        Hashtable images,prd;
        OrderManager manager /* gets connection from server */
        int inc = 0;
        int delay = 10000;
        static String IMAGE_ONLY = "Image";
        static String PRODUCTION_ONLY = "Produce";
        static String LABEL_ONLY = "Label";
        static String ALL = "All";
        String[] args;
        public JavaTest(String[] args)
            manager= OrderManager.getInstance();
            images = new Hashtable();
            prd = new Hashtable();
            inc = 0;
            this.args = args;
        public static void main(String[] args)
            System.out.println("start");
            JavaTest test = new JavaTest(args);
            test.run();
            System.out.println("end..");
        public SystemManager getSystemManager()
            SystemManager SysManager = SystemManager.getInstance();
            try
                SysManager.connect(PO_CLIENT_ID, USER_HOST,USER_PORT);   
            catch(Exception e1)
                    System.out.println("Failed to setup connection with " + USER_HOST + " at port " + USER_PORT);
                    System.out.println("The application will be shut down in 5 seconds. Please try again.");
                    System.exit(1);
            return SysManager;
        public void run()
            JobMinderParser parser = new JobMinderParser();
            Entry entry;
            images = parser.createImage(args);
            SystemManager SysManager = getSystemManager();
            inc = 0;
            System.out.println(images.size());
            Enumeration enum = images.keys();
            int y=0;
              Parses XML File and puts all the "Entry classes"
              in a hashtable then the program runs through the hashtable
              submitting it to the manager in the submitImageOrder Function
              Then listens to the response and increments a global field
              called inc when the inc == images.length it has recieved a
              response from all the submitted orders..
            while(enum.hasMoreElements())
                String id = (String)enum.nextElement();
                entry = (Entry)images.get(id);
                String type = entry.getType();
                entry.getLabel().createLabel();
                if(type.equals(IMAGE_ONLY) || type.equals(this.ALL))
                    submitImageOrder(entry);
            while(inc < images.size())
                sleep(delay);
            try
              SysManager.disconnect();
            catch(Exception e)
                e.printStackTrace();
        public synchronized void increment()
            inc++;
        public void submitImageOrder(Entry entry2)
           String oxml = createImageOrder(entry);
                        ImageOrderDescription odesc = new ImageOrderDescription();
                        try
                            System.out.println("Parsing oxml...");
                            parseXML(oxml);
                            System.out.println(oxml);
                            System.out.println("Submiting oxml");
                            odesc.setOrderId("Image"+ entry.getId());
                            odesc.setClientId(entry.getClient());
                            odesc.setOriginator("PO_ORIGINATOR");
                            entry.setImageOrderDescription(odesc);
                            manager.submitOrder(odesc,oxml, (OrderStatusListener)new StatusListener());
                            System.out.println("Done...");
                         catch(Exception e)
                           e.printStackTrace();
        public String createImageOrder(Entry entry)
            Vector inputfile,inputdir;
            String orderid;
            Hashtable files;
            inputfile = entry.getInputFile();
            inputdir = entry.getInputDir();
            orderid = "Image" + entry.getId();
            String xml  = "<?xml version=\"1.0\" encoding=\"UTF-16\"?>"
                        + "<!DOCTYPE ImageOrder SYSTEM \"" + xmlpath + "ImageOrder_1.0.dtd\">"
                        + "<ImageOrder ClientId=\"" + entry.getClient() + "\" OrderId=\"" + orderid + "\" Originator=\"IO01\">"
                        +  "<Target/><Format><PCMACFormat ISO=\"2\"/><FormatOptions/></Format><Source>";
                        if(inputfile != null)
                            for(int i = 0; i < inputfile.size(); i++)
                                xml +=  "<EditList EditListPath=\"" + inputfile.get(i) + "\" />";
                        if(inputdir != null)
                            for(int i = 0; i < inputdir.size(); i++)
                                xml +=  "<ParentFolder ParentFolderPath=\"" + inputdir.get(i) + "\" />";
                        xml +=  "</Source><Output ImageFile=\"" + entry.getOutputFile() + "\" Size=\"74\" Type=\"PowerImage\"/></ImageOrder>";
            return xml;
        private void sleep(int time)
          try
            Thread.sleep(time);
          catch (InterruptedException ie)
            System.out.println("Failed to sleep " + time/1000 + " second(s).");
            ie.printStackTrace();
            System.exit(1);
        private String getElementAtt(Document document, String tagName, String attribute)
          NodeList list = document.getElementsByTagName(tagName);
          Node thisStatusNode;
          NamedNodeMap thisNamedNodeMap;
          // Loop throught the list
          for (int i=0; i<list.getLength(); i++)
              thisStatusNode = list.item(i);
              thisNamedNodeMap = thisStatusNode.getAttributes();
              if (thisNamedNodeMap == null) continue;
              if (thisNamedNodeMap.getNamedItem(attribute) == null) continue;
              if (thisNamedNodeMap.getNamedItem(attribute) instanceof org.w3c.dom.Node)
                 return thisNamedNodeMap.getNamedItem(attribute).getNodeValue();
          return null;
        private Document parseXML(String xmlOrderStatus)
          DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
          Document document = null;
          // Specifies that the parser produced by this code will validate
          factory.setValidating(true);
          try
            DocumentBuilder builder = factory.newDocumentBuilder();
            document = builder.parse(new InputSource((Reader)new StringReader(xmlOrderStatus)));
          catch(Exception e)
            e.printStackTrace();
          return document;
        private class StatusListener implements OrderStatusListener
            public void onStatus(String str)
                Document document = parseXML(str);
                if(document == null)
                    return;
                String state = getElementAtt(document, "Status", "State");
                System.out.print( "Imaging " + state.toLowerCase() + ": " + getElementAtt(document, "Status", "PercentCompleted") + "% completed.\n");
                System.out.println(getElementAtt(document,"ImageOrderStatus","OrderId"));
                if ( state.equals( "COMPLETED" ) )
                    String id = "";
                    String field = document.getDocumentElement().getTagName();
                        id = getElementAtt(document,"ImageOrderStatus","OrderId");
                        String key = id.substring("Image".length());
                        Entry entry = (Entry)images.get(key);
                        stopListeningForOrder(entry);
                        entry.setStatus("Done");
                        increment();
                  return;
                String errMsg = getElementAtt(document, "Status", "ErrorMessage");
                String errCode = getElementAtt(document, "Status", "ErrorCode");
                if(errMsg != null || errCode != null)
                   System.exit(0);
    }

  • Multiple listeners/ports

    Hi All,
    I'm fairly new to Apache, but have managed to install and configure our test listener with no problem. I do have a few questions regarding future configuration though. Any info would be greatly appreciated:
    1.) I currently have one listener up and running on port 7777 for our test database which will use only mod_plsql. Eventually I will need 5 listeners. Each listener will have its own port number, document root, etc. Question is what changes do I make to httpd.conf to enable a second listener on port 8888 for our stage database? Whenever a request comes in on this port number it needs to serve out the document root and homepage for the stage database, not the test database.
    2.) Is their any way to control each of the listeners independently. I would be nice to be able to take only the test listener down while leaving the others up.
    TIA,
    Charlene Yanke, DBA
    Southern Alberta Institute or Technology

    There are several different configs that I can think of but the one for you really depends on all of your requirements.
    You can use one Oracle home. Then you would put a <virtualhost> section in your httpd.conf file for each of your environments listening on a different port. You can specify the different documentroot within the virtualhost container.
    You are using mod pl/sql though. Because these are virtual hosts, you can access any DAD configured in this Oracle Home from any of the virtual hosts. In other words:
    http://test:7777/pls/app/
    http://prod:8888/pls/app/
    This would load the same DAD regardless of the virtual host.
    If you want to use the same DAD name like in the above example but actually use different connection information, you can do this one of two ways. One way, which I explored a few months ago and found a bug, is to use mod_rewrite. Because you are on Unix, I wouldn't do this. I would install another Oracle home. When you start the other apache process, make sure the environment variable for the WV_GATEWAY_CFG is pointing to a different file than your test one. This way, you can have:
    http://test:7777/pls/app/
    http://prod:8888/pls/app/
    For test, it would use the test wdbsvr.app file (which is the config file for the DAD) and for your production environment, it would a different wdbsvr.app file. This way, you have the same DAD name used in each Oracle home but behind the scenes, the test DAD would connect to your test instance or schema and your production DAD would connect to your production instance or schema.
    In Windows, I had a very hard time configuring multiple Oracle Homes and specifying different wdbsvr.app files because it is set as an environment variable. I even tried to launch each service as a different user and specify the WV_GATEWAY_CFG setting at the user level but that didn't work either. In Unix, it shouldn't be such a big deal.

  • Multiple listeners in Weblogic

    Hi:
    Can I deploy multiple Apex listeners pointing to different Databases in the same Weblogic server? Is there any documentation or OTN Notes on this?
    Regards
    David

    You don't need multiple domains to run multiiple listeners. This is exactly what we are doing in or development environment.
    As mentioned by Udo, you need to have a different config dir configuration for each apex.war deployment in WebLogic.
    For example, you may have two development databases. DEV1 and DEV2
    copy the apex.war file twice and rename to apex_dev1.war for the DEV1 instance and apex_dev2.war for the DEV2 instance.
    Unzip/unjar the file and modify the web.xml file as follows in apex_dev1.war:
    <context-param>
    <param-name>config.dir</param-name>
    <param-value>${apex_dev1.dir}</param-value>
    </context-param>
    Unzip/unjar the file and modify the web.xml file as follows in apex_dev2.war:
    <context-param>
    <param-name>config.dir</param-name>
    <param-value>${apex_dev2.dir}</param-value>
    </context-param>
    In the WebLogic console go to the Server configuration->Server Start tab and under the Arguments section enter the following (or wherever depending on your environment):
    -Dapex_dev1.dir=/ora/Middleware/user_projects/applications/apex_dev1_config;-Dapex_dev2.dir=/ora/Middleware/user_projects/applications/apex_dev2_config
    You must create bothdirectories first before starting the server.
    Deploy the new war files via the console in Weblogic and then goto /apex_dev1/listenerConfigure and configure it for the appropriate database. Do the same for apex_dev2.
    This way you will know which DB you hitting via the URL.
    good luck.

  • How to configure multiple listeners

    Hi All,
    I have installed 2 different Oracle instances on a single machine. I found that each oracle installation created its own Listener. I cant start both of the listeners at the same time. As a result, the respective applications cant talk to their corresponding database instances.
    I could start only one listener for one database instance at any given point of time. Therefore, I am unable to use the other application.
    Can any one please help me in configuring this appropriately so that both the applications can talk to their respective databases?
    Waiting for your kind replies.
    Regards,
    Syed

    Syed Abdul Rahman wrote:
    Hi All,
    I have installed 2 different Oracle instances on a single machine. I found that each oracle installation created its own Listener. I cant start both of the listeners at the same time. As a result, the respective applications cant talk to their corresponding database instances.
    I could start only one listener for one database instance at any given point of time. Therefore, I am unable to use the other application.
    Can any one please help me in configuring this appropriately so that both the applications can talk to their respective databases?
    Waiting for your kind replies.
    Regards,
    Syedit's better to configure a single listener . Configuring multiple listener will increased system resource usage. Multiple listener may be helpful in case of RAC .
    --neeraj                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Is there any simple way to run same sql script on multiple remote sql server databases at once?

    i am using sql server 2005. our company has many branches. each branch is located in different country. so when i update database in any country over the VPN connection then i need to update db in another country one by one over the vpn connection. it
    is very tire some job....so i was think that there could be any easy trick to update multiple db in different country easily. so am developing a store procedure which will connect each DB in different database one after one over the vpn and read script from
    sql file and execute the script in remote db over vpn. so please have look at my script and tell me how to do it. please do not advise me to use any 3rd party.
    here is a table structure where i will put all my remote db details.
    CREATE TABLE [dbo].[DBDetails]
    [ServerName] [varchar](max)     NULL,
    [DBName] [varchar](max)         NULL,
    [UserID] [varchar](max)         NULL,
    [Password] [varchar](max)       NULL,
    [CountryCode] [varchar](2)      NULL
    SET NOCOUNT ON
    DECLARE DB CURSOR FOR SELECT ServerName,DBName,UserID,Password,CountryCode FROM    DBDetails
    OPEN DB
    DECLARE @ServerName     varchar(MAX)
    DECLARE @DBName         varchar(MAX)
    DECLARE @UserID         varchar(MAX)
    DECLARE @Password       varchar(MAX)
    DECLARE @CountryCode    varchar(2)
    FETCH NEXT FROM DB INTO @ServerName,@DBName,@UserID,@Password,@CountryCode
    WHILE @@FETCH_STATUS = 0
    BEGIN
    -- here i need some help for opening db connection and read sql file and execute  the statement
    -- Please help here
    FETCH NEXT FROM DB INTO @ServerName,@DBName,@UserID,@Password,@CountryCode
     END
     CLOSE DB
     DEALLOCATE DB
    thanks

    One way: set them as jobs and assign the same schedule or start them from a stored procedure:
    http://www.sqlusa.com/bestpractices2005/startjobfromstoredproc/
    Note: when you start a job from a stored procedure, control proceeds to the next statement, there is no wait for the job to finish.
    Kalman Toth SQL SERVER 2012 & BI TRAINING
    New Book: Beginner Database Design & SQL Programming Using Microsoft SQL Server 2012

  • Configuring multiple listeners in a non-RAC env.

    Hi,
    Our database is being made as many as 35 requests per second by the application during peak hours. This is causing the listener to die. Metalink suggested to configure more listeners so that they can balance the load. When I tried to configure 2 listeners on the local server, one of the listeners are not working propoerly.
    I am posting the listenerr.ora and their statuses along with the error messages here. Can someone help me understand the problem?
    Listener.ora
    LISTENER2 =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = dbdev.website.com)(PORT = 1522))
    SID_LIST_LISTENER2 =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = TESTDB)
          (ORACLE_HOME = /u02/app/oracle)
          (PROGRAM = extproc)
    LISTENER1 =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = dbdev.website.com)(PORT = 1521))
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    SID_LIST_LISTENER1 =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc)
          (ORACLE_HOME = /u02/app/oracle)
          (PROGRAM = extproc)
    lsnrctl status <listener_name>
    oracle@ DBDEV $ lsnrctl status LISTENER1
    LSNRCTL for Linux: Version 10.2.0.3.0 - Production on 02-AUG-2009 20:08:03
    Copyright (c) 1991, 2006, Oracle.  All rights reserved.
    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbdev.website.com)(PORT=1521)))
    STATUS of the LISTENER
    Alias                     LISTENER1
    Version                   TNSLSNR for Linux: Version 10.2.0.3.0 - Production
    Start Date                29-JUL-2009 22:28:31
    Uptime                    3 days 21 hr. 39 min. 32 sec
    Trace Level               off
    Security                  ON: Local OS Authentication
    SNMP                      OFF
    Listener Parameter File   /u02/app/oracle/network/admin/listener.ora
    Listener Log File         /u02/app/oracle/network/log/arogya1.log
    Listening Endpoints Summary...
      (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=dbdev.website.com)(PORT=1521)))
      (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
    Services Summary...
    Service "PLSExtProc" has 1 instance(s).
      Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
    Service "TESTDB" has 1 instance(s).
      Instance "TESTDB", status READY, has 1 handler(s) for this service...
    Service "TESTDB_XPT" has 1 instance(s).
      Instance "TESTDB", status READY, has 1 handler(s) for this service...
    The command completed successfully
    oracle@ DBDEV$ lsnrctl status LISTENER2
    LSNRCTL for Linux: Version 10.2.0.3.0 - Production on 02-AUG-2009 20:08:07
    Copyright (c) 1991, 2006, Oracle.  All rights reserved.
    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=dbdev.website.com)(PORT=1522)))
    STATUS of the LISTENER
    Alias                     LISTENER2
    Version                   TNSLSNR for Linux: Version 10.2.0.3.0 - Production
    Start Date                31-JUL-2009 02:37:10
    Uptime                    2 days 17 hr. 30 min. 56 sec
    Trace Level               off
    Security                  ON: Local OS Authentication
    SNMP                      OFF
    Listener Parameter File   /u02/app/oracle/network/admin/listener.ora
    Listener Log File         /u02/app/oracle/network/log/arogya2.log
    Listening Endpoints Summary...
      (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=dbdev.website.com)(PORT=1522)))
    Services Summary...
    Service "TESTDB" has 1 instance(s).
      Instance "TESTDB", status UNKNOWN, has 1 handler(s) for this service...
    The command completed successfully
    ps -ef | grep tnslsnr
    oracle@ DBDEV $ ps -ef | grep tnslsnr
    oracle    7951     1  0 Jul29 ?        00:00:00 /u02/app/oracle/bin/tnslsnr LISTENER1 -inherit
    oracle   18080     1  0 Jul31 ?        00:00:00 /u02/app/oracle/bin/tnslsnr LISTENER2 -inherit
    Client message
    C:\Oracle\product\10.1.0\Client_1\BIN>sqlplus system/manager@asridb1
    SQL*Plus: Release 10.1.0.2.0 - Production on Mon Aug 3 09:32:18 2009
    Copyright (c) 1982, 2004, Oracle.  All rights reserved.
    Connected to:
    Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
    With the Partitioning, OLAP and Data Mining options
    SQL>
    SQL> Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production
    With the Partitioning, OLAP and Data Mining options
    C:\Oracle\product\10.1.0\Client_1\BIN>sqlplus system/manager@asridb2
    SQL*Plus: Release 10.1.0.2.0 - Production on Mon Aug 3 09:32:25 2009
    Copyright (c) 1982, 2004, Oracle.  All rights reserved.
    ERROR:
    ORA-28547: connection to server failed, probable Net8 admin error
    Enter user-name:Thanks,
    Aswin.

    ice_cold_aswin wrote:
    But shared server is not always better than a dedicated server.I did not say it was - only that if you're expecting loads of brand new connection requests to be services fast by the Listener, then shared server will be significantly faster than dedicated server.
    Frequency of connections may be handled better by the use of shared server, but how about holding thousands and thousands of connections and serving all their requests by using some preemptive mechanism? Many years ago, I configured an Oracle 8i instance on my desktop PC with shared server and told the Java guys to try their worst. See how many threads they can open against my desktop PC instance versus the big HP server instance. The latter was using dedicated server and they were kind of thinking that this was somehow better than shared server. They could open less than a few hundred connections to the big server. They opened over a 1000 connections to my desktop instance.
    Shared  Server is and never was a poor and second choice to Dedicated Server as some seems to suggest. It is extremely capable and ideally suited when dealing with a huge number of connections.
    In our application, number of connections would reach thousands during peak hours and large number of REALLY BIG queries would be fired by each of them in a small time period. I would say these BIG QUERIES can be termed as OLAP queries, while our main stream application is a OLTP system. It must be apparent to you by now, our database (non-RAC) is supporting an application that gives OLAP and OLTP queries at a very high frequency. A big query ito what? Resource footprint? Source code size of the query? Execution time of the query?
    If you have 100's of OLAP type queries (complex and long running queries) hitting the server every few seconds, then your server will die. Unless you are running some seriously expensive hardware.
    That aside - it is only a sensible approach to use shared server in an environment that deals with 1000's of OLTP type connections. And if there is an OLAP mix too, then configure those connections to request dedicated server connections.
    Why? The shared server scales a lot better than dedicated server. And scalability is what you want in this type of environment.

  • Report 11gR1: multiple standalone Reports Server for one domain

    Hi all,
    In Oracle Froms, Report (11.1.1.6.0) environment is necessary to create more than one standalon Reports Server (iAS instances).
    1- How can we create multiple Reports Server (insatances) in same domain?
    2- How can use pro Reportsserver multiple engines (e.g. more than 3 engines)?
    Regards,
    Moh

    Hi Moh,
    Out of the box in 11g you get 1 standalone reports server (you can see this one via opmnctl status) and 1 in-process reports server than runs inside WLS_REPORTS managed server.
    You can create more standalone reports servers for your instance. Please follow the following support note
    Reference
    How Do You Create And Start Up A Standalone Reports Server In 11g R1 & R2? (Doc ID 961174.1)
    Regarding how to increase reports engines for each of your reports server you need to go to the Enterprise Manager console and select each of the reports servers you have and go to Reports --> Administration --> Basic menu and
    change " Maximum Engines" property for the value you need. You will need to re-start your Reports server after this.
    Hope this helps, Roberto

  • Need solution for opening multiple connection to server in parallel

    Hi..
    I have used URL and URLConnectin classes to open connection to server,
    and i used URLConnection.getInputStream( ) to download HTML pages.
    Now my requirement is to open more than one connecton to single HTML document and download the file in parallel.
    for example, if the HTML file size is 60KB..then i open three connection and
    connection 1 downloads first 20KB
    connection 2 downloads second 20KB
    connection 3 downloads final 20KB
    all the above should be done in parallel....by threading or else..
    first of all i want to know is it possible to do the above in java?
    anybody having solution for the above requirement?
    venu

    hi,
    i too have the same problem
    actually i am designing a download manager ,and had the same problem
    that how to put multiple threads for doing it ,,,,
    have u got solution for it..
    if so please help me..
    my mail id is [email protected]
    i want help in designing the download manager
    can any one help me out plzzzzzzzzzzzzzz
    bye

Maybe you are looking for

  • Time Machine and Networked external hard drive

    My family has thee macs and one PC, all under the same roof. All the Macs are 2008 and later models (MacBooks and MacBook Pros, with Leopard or Snow Leopard). I lost a load of data last weekend and my i-disk did not contain a backup of all the data,

  • I receive server encountered an error processing registration when trying to log into FaceTime on iMac

    I can use face time on 3 out of 4 of my apple products but am unable to log on with my imac.  I receive this message "Ther server encountered anerror processing registration.  Please try again later."

  • When a bean is not a bean

    I have received an error in my servlet container stating that: cannot create bean from class PhotoBean This bean was derived from an oracle sample file, and i modified it a bit (like having a connection being provided from another class) and now when

  • IOS 8 nightmare do not download it.

    after downloading iOS 8 my ipad2 is a nightmare to use?? Slow to respond, constantly crashing, shutting down Apps while I am using them, tried to print boarding passes today was impossibl??? I'v lost loads of info from my docs and bookmarks to name j

  • How to create windows users and groups from Java

    Hi, Can any one please tell me, which Package/API will helps to create windows users and groups from Java. Thanks, M.Prem.