2010-03-02 20 views
5

हाल ही में, हमने विंडोज 32 बिट आरएसी (2 नोड्स) से हमारे ओरेकल 9.2.0.6 उत्पादन डेटाबेस को लिनक्स 64 बिट पर्यावरण में माइग्रेट कर दिया है। लिनक्स 64 बिट पर्यावरण में विंडोज 32 बिट पर्यावरण की तुलना में 8 गुना अधिक स्मृति है और लिनक्स 64 बिट में तेज डिस्क है (RAID 10 विंडोज़ के RAID 5 की तुलना में)।बहुत लंबा एसक्यूएल कनेक्शन खोलने का समय

हालांकि, इस माइग्रेशन के बाद, हमने देखा है कि एसक्यूएल कनेक्शन समय में काफी वृद्धि हुई है। कुछ समय, कनेक्शन खोलने में 16 सेकंड लगते हैं। हमने विभिन्न ड्राइवर (जेडीबीसी, ओडीबीसी, ओसीआई) और एसक्यूएलप्लस का उपयोग किया है। लेकिन, हमने एसक्यूएल कनेक्शन समय में कोई अंतर नहीं देखा है। हमने नेटवर्क की जांच की है, लेकिन नेटवर्क के साथ कोई समस्या नहीं देखी है।

कुछ समय, एक कनेक्शन खोलने में लगभग 16 सेकंड लगते हैं। इस डेटाबेस में लगभग 50000 उपयोगकर्ता स्कीमा है।

क्या कोई मुझे बता सकता है कि कनेक्शन खोलने के समय को कम करने के लिए क्या किया जा सकता है? आपकी सहायता का आभार होगा।

+0

serverfault.com पूछने के लिए एक बेहतर जगह होगी, और उत्तर खोजने के लिए एक बेहतर जगह – skaffman

+0

मुझे एक ही समस्या है, और solutio [http://oracleprof.blogspot.com/2009/08/slow-network- कनेक्शन-डब्ल्यू -11g.html] (http://oracleprof.blogspot.com/2009/08/slow-network-connection-w-11g.html) –

उत्तर

2

इसके लिए कई संभावित कारण हैं, और अधिक जानकारी के बिना मूल कारण निर्धारित करना मुश्किल है।

कहा करने के बाद कि, जांच मशीन पर स्थित अपने sqlnet.ora फ़ाइल आपके (यानी <ORACLE_HOME> /network/admin/sqlnet.ora) से जोड़ने और यदि आप इस तरह के रूप में एक लाइन है देखें:

SQLNET.AUTHENTICATION_SERVICES= (NTS) 

यदि हां, तो करने के लिए इसे बदलने का प्रयास करें:

SQLNET.AUTHENTICATION_SERVICES= (NONE) 

सहेजें और sqlplus के माध्यम से अपने कनेक्शन पुनः प्रयास करें।

इसके अलावा, NAMES.DIRECTORY_PATH के लिए निर्धारित मूल्य की जांच करें। सुनिश्चित करें कि आप जिस विधि का उपयोग अपने उदाहरण से कनेक्ट करने के लिए कर रहे हैं वह सूची में पहला है। उदाहरण के लिए, हम TNSNAMES का उपयोग करते हैं और हमारे पढ़ते हैं:

NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT) 

आशा है कि इससे मदद मिलती है।

+2

में नेट * 8 के साथ टीसीपी कनेक्शन के लिए, सर्वर को सर्वर की आवश्यकता है होस्टनाम और आईपी पते को हल करने में सक्षम हो। सबसे तेज़ नाम संकल्प सर्वर पर/etc/hosts फ़ाइल में एक लुकअप है। (नाम संकल्प /etc/resolv.conf से प्रभावित है) – spencer7593

+0

sqlnet.ora SQLNET.AUTHENTICATION_SERVICES = (कोई नहीं) NAMES.DIRECTORY_PATH = (TNSNAMES) हम साथ अलग मशीन से समस्या के साथ पुन: पेश करने में सक्षम हैं की सेटिंग है अलग ड्राइवर हम SQLPLUS से पुन: उत्पन्न करने में भी सक्षम हैं। नेटवर्क विलंबता कोई मुद्दा नहीं है। यह धीमापन यादृच्छिक रूप से होता है। हालांकि, हम सीपीयू स्पाइक्स के साथ इस धीमी गति से सहसंबंध कर सकते हैं। धीमी कनेक्शन के समय, सीपीयू स्पाइक्स 100% तक। हमने यह भी देखा है कि सिस्टम का आर मान CPU की संख्या को पार करता है। जो सीपीयू बाधा इंगित करता है। – user284534

1

हालात समस्या क्षेत्रों का संकेत हो सकता है कि:

ग्राहक से:

  • सभी ग्राहकों समस्या का प्रदर्शन कर रहे हैं?
  • पिंग सर्वर उचित रूप से तेज़ है?
  • dbname धीमा है tnsping है?
  • क्या आप सामान्यतः टेलनेट से कनेक्ट कर सकते हैं?

    • पिंग ग्राहक यथोचित तेज है:
    सर्वर से

    ?

  • क्लाइंट का नाम और आईपी तेजी से nslookup है?
  • dbname धीमा है tnsping है?
  • sqlplus उपयोगकर्ता @ dbname तेज़ या धीमा है?
  • सर्वर पर तेजी से सीधा कनेक्शन है? अर्थात।, निर्यात ORACLE_SID = डाटाबेस; sqlplus उपयोगकर्ता/पीडब्लू
+0

हां, सभी प्रकार के ग्राहक समस्या प्रदर्शित करते हैं। पिंग बहुत तेज है। tnsping धीमा नहीं है। हां, हम आम तौर पर टेलनेट का उपयोग कर कनेक्ट कर सकते हैं। क्लाइंट को पिंग भी बहुत तेज है धीमापन यादृच्छिक रूप से होता है। कुछ कैसे, हमने देखा है कि लगभग 30 से 40 कनेक्ट एक साथ खुले होते हैं, फिर डेटाबेस सीपीयू स्पाइक्स 100% तक और कनेक्शन धीमा हो जाते हैं। – user284534

2

अगर अचानक TNSping, लेकिन एक ही डेटाबेस सर्वर से पिंग तेज है (यह पहले सब ठीक प्रणाली का मतलब) बहुत धीमी गति से बन जाता है, सबसे संभावित कारण listener.log फ़ाइल है बहुत बड़ी है:

$ORACLE_HOME/network/log/listener.log

कुछ ओएस (SunOS मेरे अनुभव में) एक बहुत बड़े पाठ फ़ाइल प्रदर्शन मुद्दा (4 जी से अधिक?) के लिए लिख, तो पूंछ/लॉग फ़ाइल होगा साफ मिलेंगे तुरंत tnsping हल करने में बहुत लंबा समय लगता है।

2

यह हमारे मामले में DNS था। हमारे व्यवस्थापक ने सर्वर के किनारे सभी DNS प्रविष्टियों पर टिप्पणी करने के बाद सिस्टम ने देरी के बिना प्रतिक्रिया देना शुरू कर दिया।

2

मैंने ओरेकल 12.1.0.2.0 के खिलाफ मैक ओएस पर एसक्यूएल डेवलपर 4.1.5.21 के साथ बहुत धीमी कनेक्शन प्रतिष्ठानों का भी अनुभव किया।

इसका विश्लेषण करने के लिए मैंने के साथ सीधे कनेक्टिविटी की जांच के लिए Oracle Instant Client स्थापित किया। जब मैं sqlplus के साथ कनेक्ट करने की कोशिश की यह मुझे निम्न त्रुटि दिया:

$ sqlplus <USER>/<PASSWORD>@<HOST>:<PORT>/<SERVICE> 
SQL*Plus: Release 12.1.0.2.0 Production on Thu Mar 16 10:50:44 2017 

Copyright (c) 1982, 2016, Oracle. All rights reserved. 

ERROR: 
ORA-21561: OID generation failed 

मैं तो ब्लॉग प्रविष्टि Oracle ORA-21561 : OID generation failed पाया और होस्ट नाम (के रूप में hostname आदेश द्वारा दिया) 127.0.0.1 लाइन को /etc/hosts में कहा:

127.0.0.1 localhost MacBook-Pro.local 

यह sqlplus में ओआरए -21561 त्रुटि के साथ-साथ SQL डेवलपर में धीमी कनेक्शन स्थापना को ठीक करता है।

संबंधित मुद्दे