Announcement

Collapse
No announcement yet.

Parameter für automatisches abmelden von der DB?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Parameter für automatisches abmelden von der DB?

    Hallo Liebe Admins,

    gibt es in der Oracle Soft einen Parameter, welcher bewirkt, dass die Verbindung zur DB automatisch getrennt wird?
    Unsere Verbindungen über den Developer werden nach einer Bestimmten Zeit des nicht aktiven Nutzens die Verbindung getrennt.
    Auf Nachfrage wurde uns mitgeteilt, es würde wahrscheinlich an den Einstellungen des Developers liegen, allerdings nur mit der Begründung, dass es bei dem Ansprechpartner und seinem Toad genauso sei.

    Kann mir dies aber sogar nicht vorstellen. Sicherheitshalber habe ich nun jeweils mal eine Session local und über den TS laufen. Kann mir jedoch nicht vorstellen, dass es da anders läuft.

    Danke schon mal und entschuldigt bitte, falls die Frage furchtbar dumm ist.

    Viele Grüße

    Martin

    P.S. Evtl wichtig Hardware wurde outgesourced.

    P.P.S. DB Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit

  • #2
    M.E. hat jeder User eine "idle-time" Danach wird die Session beendet

    https://blogs.oracle.com/proactivesu...client_session
    Christian

    Comment


    • #3
      Ich bin kein Admin. Aus eigener Erfahrung kann ich sagen, dass es bis 12c so etwas nicht zwangsweise gibt. Also Session läuft solange, bis irgendwas runterfährt, überläuft, im Eimer ist. Das gilt allerdings ausschließlich für nicht Enterprise Versionen.

      Wie ich Oracle kenne, gibt es diverse Möglichkeiten, dass so etwas dann doch zum Einsatz kommt.
      Das kann bspw. eine Policy sein, oder irgendwo im Enterprise Manager ein Click auf die entsprechende Option.
      Oder (ggf. auch im Rahmen von Policies) ein Optionsbündel zum ressourcen sparen.
      Oder etwas handgestricktes.
      Oder eine Option, die nicht von der DB selbst kommt, sondern einem der darauf "laufenden"/installierten Oracle (oder Fremd) Produkte. (siehe Post von Christian Marquardt)
      Oder es handelt sich gleich um einen virtualisierten Server (Service)

      Und damit kommt man dann zum Punkt: Keine DB bzw. kein Admin hat Interesse daran, dauerhaft Ressourcen zu vergeuden. Im Fall einer outgesourcten, virtuellen DB als Service kann es auch direkt eine harte Kostenfrage sein.
      Also vermutlich nicht so sehr eine Können oder Admin Frage, sondern eine Frage von Verträgen und Kosten.
      Gruß, defo

      Comment


      • #4
        Schau dir mal den Parameter SQLNET.EXPIRE_TIME in der sqlnet.ora Datei an:

        https://docs.oracle.com/cd/E11882_01...t.htm#NETRF209

        Oft ist es jedoch nicht der Server oder der Client welcher die Verbindung trennt, sondern die Firewall dazwischen oder der VPN Client oder was sonst noch so im Netz zwischen Client und Server hängen kann.

        Gruss

        Comment


        • #5
          Vielen Dank Euch allen,

          vermute anhand des, dank Euch, neuen Wissen, dass es an den Verträgen und Kosten liegt. Vor dem Umzug trat es nicht auf. Erst bei den Test DBn, welche nat. vorher umgezogen sind und nun auch in der Produmgebung. Verbinden wir uns mit dem Client(anderer DB User) mit der DB, wird der Vorgang nicht getrennt.
          Wäre es denn nicht eigentlich aus Kostengründen Quatsch, jeden Sachbearbeiter dauerhaft (Morgens an Abends aus) auf der DB zu lassen und die paar, die direkt auf die DB dürfen auszuschliessen?

          Noch eine Frage zur Firewall. Wenn es am Netz liegt, dann müsste doch Imho auch meine Sitzung über die Clients abgebrochen werden, oder?

          Vielen dank noch mal

          Viele Grüße

          Marttin

          Comment


          • #6
            hallo Wernfried,

            der Parameter sqlnet.expire_time ist in der sqlnet.ora nicht enthalten.

            Viele Grüße und danke Dir

            Martin

            Comment


            • #7
              Originally posted by Martin R. View Post

              Noch eine Frage zur Firewall. Wenn es am Netz liegt, dann müsste doch Imho auch meine Sitzung über die Clients abgebrochen werden, oder?
              Kommt drauf an, wenn der Client regelmässig mit der Datenbank kommuniziert bleibt die Verbindung bestehen.

              Ich denke auch nicht, dass es unbedingt an den Verträgen und Kosten liegt, sondern an einer schlecht konfigurierten Firewall (ohne dass da böse Absicht hinter stecken muss).
              Gruss

              Comment


              • #8
                Originally posted by Martin R. View Post
                Vor dem Umzug trat es nicht auf. Erst bei den Test DBn, welche nat. vorher umgezogen sind und nun auch in der Produmgebung. Verbinden wir uns mit dem Client(anderer DB User) mit der DB, wird der Vorgang nicht getrennt.
                Wäre es denn nicht eigentlich aus Kostengründen Quatsch, jeden Sachbearbeiter dauerhaft (Morgens an Abends aus) auf der DB zu lassen und die paar, die direkt auf die DB dürfen auszuschliessen?

                Noch eine Frage zur Firewall. Wenn es am Netz liegt, dann müsste doch Imho auch meine Sitzung über die Clients abgebrochen werden, oder?
                Es kann an sehr vielen Faktoren hängen. Es gibt mittlerweile viele Möglichkeiten eine Oracle Verbindung aufzubauen.
                TNS/sqlnet, also klassischer Client Verbindung
                Java (wird vielleicht im Client verwendet)
                EZConnect (umgeht glaub ich TNS, hab ich noch nie benutzt)
                Was auch immer "der Client" ist, er könnte auch so laufen, dass er immer nur für einzelne Arbeitsschritte connected. Das macht man ja mit Dot Net gerne so.
                Dann gibt es noch SSH Tunnel/VPN, mit dem Kram da oben in Kombi.

                Alle diese Verfahren können auch beliebige Ports verwenden, daher kann man pauschal auch keine Aussagen zur Firewall machen.
                Wenn ein paar einzelne Verbindungen gekickt werden und viele Sachbearbeiter "unbeschadet" arbeiten können bzw. eben nicht arbeiten und connected vor sich hin idlen, würde ich auch eher auf Konfigurationsunterschiede für die verschiedenen "Produkte" tippen.

                Wenn es nervt, einfach dem Dienstleister durchgeben und auf durchgehende Verbindung pochen.
                Ich weiß aus eigener Erfahrung, dass bei Nutzung der ganzen Oracle Möglichkeiten ein Sessionabbruch zu sehr vielen Problemen führen kann. Damit kann man schon argumentieren, denke ich.
                Gruß, defo

                Comment


                • #9
                  Oracle hat einen konfigurierbaren Resourcemanager. Dieser kann genau je Nutzer eingestellt werden hinsichtlich Prozessorzeit, Rechten, Nutzungsdauer usw., wenn er eingeschaltet ist.
                  Da hier die Session beendet wird, wenn ".. nach einer Bestimmten Zeit des nicht aktiven Nutzens..", würde ich eher die DB und damit die Admins hinter dem Problem vermuten
                  Christian

                  Comment


                  • #10
                    Hallo Zusammen,
                    und wieder mal vielen dank für Eure Mühe.
                    Kurz zum Hintergrund meiner Fragen und warum es sich recht schwierig für uns gestaltet.
                    Wir sind eine kleine Gruppe von Leuten, mit Sonderbefugnissen, in einem grossen Unternehen. Geht es um "unsere" Datenbanken haben wir einen Vertrag mi dem Dienstleister, dass ein DB Admin unseren Anweisungen nachkommen sollte.
                    Wissen wir, woran es liegt, könnten mir auch durch unser soziales Netzwerk evtl. den richtigen Ansprechpartner finden, der es auf dem kleinen Dienstweg ändert.
                    Ansonsten, müssen wir einen Antrag an das IT-Management unseres Unternehmens stellen, die dann einen Auftrag an unseren Vertragsdienstleister und die dann höchst wahrscheinlich, da verärgert über das Outsourcen, den Auftrag an das Rechenzentrum weiter geben.

                    Unterstützt noch von der Lösung der Frage, gehört dies nun zu unserer Servicepauschale (unserer Gruppe) oder ist es eine Sonderleistung .
                    Dieser Vorgang dauert ewig, da sich auch jeder absichern will, wenn es auch noch so unsinnig ist.

                    Versuche dann mal Euren Tipps nachzugehen.

                    Vielen Dank

                    Martin

                    Comment


                    • #11
                      Originally posted by Christian Marquardt View Post
                      Oracle hat einen konfigurierbaren Resourcemanager. Dieser kann genau je Nutzer eingestellt werden hinsichtlich Prozessorzeit, Rechten, Nutzungsdauer usw., wenn er eingeschaltet ist.
                      Ja, aber ich kenne es nicht als default Verhalten, dass sessions gekickt werden.
                      Es wurde also bewusst oder unbewusst unterschiedlich konfiguriert, nicht zwangsläufig via Ressourcenmanager, aber gut möglich.

                      Wenn man in der beschriebenen Situation also nicht weiß, woran es liegt würde ich mal die unterschiedlichen Verbindungstypen des "Client" und der Sondertrupper nachvollziehen und die Abbruchmeldung der Session analysieren.
                      Oracle hat eigentlich recht gute Fehlermeldungen, die bspw. auch ihre Quelle mitliefern, ORA, TNS, Listener usw.
                      Ggf. kann man hier im eigenen Hohheitsbereich via TNS, sqlnet.ora auch das Logging aufdrehen.
                      Oder auf Verdacht die Konfiguration einzelner Serverkomponenten abrufen / anfragen beim DL. In Oracle kann man ja sehr auch viel über die Konfiguration per SQL oder SP abfragen.
                      Gruß, defo

                      Comment


                      • #12
                        Das ist hier genauso ....Über Mittag den Developer offen gelassen -> neue Session erstellen

                        select * from user_resource_limits a
                        where a.resource_name in ('IDLE_TIME','CONNECT_TIME');
                        Christian

                        Comment


                        • #13
                          Originally posted by Christian Marquardt View Post
                          Das ist hier genauso ....Über Mittag den Developer offen gelassen -> neue Session erstellen

                          select * from user_resource_limits a
                          where a.resource_name in ('IDLE_TIME','CONNECT_TIME');
                          Das ist doch eine gute Spur! Vielleicht naheliegend, ich fürchte nur eine von vielen Möglichkeiten.
                          Gruß, defo

                          Comment


                          • #14
                            Hallo Defo,

                            diese Meldung bekam ich z.B.

                            I/O-Fehler: Socket read timed out

                            Viele Grüße

                            Martin

                            Comment


                            • #15
                              Hallo Christian,

                              vielen Dank für den Tipp.

                              Bei Parameter stehen auf UNLIMITED.

                              Schliesst das denn ein DB bezogene Abmeldung aus?

                              Viele Grüße

                              Martin

                              Comment

                              Working...
                              X