2010-06-21 18 views
102

के साथ पासवर्ड बदल रहा है मेरे कई उपयोगकर्ता sqlplus का उपयोग नहीं करते हैं। मैं उन्हें उपयोगकर्ता को बदल नहीं सकता। हम हर 60 दिनों में पासवर्ड समाप्त करते हैं।ऑरैकल एसक्यूएल डेवलपर

मुझे एसक्यूएल डेवलपर में काम करने के लिए sqlplus कमांड "पासवर्ड" नहीं मिल सकता है।

  1. जब मैं रन मारा, मैं गलत आदेश त्रुटि
  2. जब मैं स्क्रिप्ट चलाने के हिट मिलता है, कुछ नहीं होता।

मैं उन्हें अपने पासवर्ड बदलने के लिए एक पैकेज लिखना नहीं चाहता क्योंकि हमारे पास बहुत सारे डेटाबेस हैं। क्या मेरे पास एक बेहतर विकल्प है?

+3

आप एसक्यूएल कमांड के माध्यम से एसक्यूएल डेवलपर में एक कालबाह्य पासवर्ड बदल नहीं सकते हैं। यह जेडीबीसी ढेर में समर्थित नहीं है। इसके लिए आपको ओसीआई पुस्तकालयों की आवश्यकता है। एसक्यूएल डेवलपर के पास ओसीआई स्टैक के माध्यम से पासवर्ड को रीसेट और समाप्त करने का विकल्प है यदि इसे सही तरीके से इंस्टॉल किया गया है। पूर्ण विवरण के लिए मेरा उत्तर देखें। – Frobbit

+0

आप इसे एसक्यूएल डेवलपर 4.1.0.17 के साथ कर सकते हैं। नीचे मेरा जवाब देखें। – fuzzyanalysis

उत्तर

23

आपके उपयोगकर्ता अभी भी अपने पासवर्ड बदल सकते हैं "उपयोगकर्ता केवल उपयोगकर्ता यूज़र नाम नए पासवर्ड द्वारा पहचाना गया"। उनके पास अपना पासवर्ड बदलने के लिए वैकल्पिक उपयोगकर्ता विशेषाधिकार नहीं होना चाहिए। abcdef और पुराने पासवर्ड:

उपयोगकर्ता नाम हैं:

11

व्यवस्थापक सेटिंग के आधार पर, आप

alter user <username> identified by <newpassword> replace <oldpassword> 
+0

नया पासवर्ड और पुराना पासवर्ड समान हो सकता है? –

+1

यह उत्तर गलत है। newpassword और oldpassword transposed हैं। इसके बजाय http://stackoverflow.com/a/10809140/643483 का उपयोग करें –

+0

@AaronKurtzhals आपके द्वारा संदर्भित उत्तर वही बात कहता है जो मेरा जवाब करता है। ओरेकल दस्तावेज़ों का संदर्भ यहां दें: https://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_4003.htm –

10

बनाने के लिए यह एक छोटे से स्पष्ट REPLACE विकल्प का उपयोग कर अपने पुराने पासवर्ड निर्दिष्ट करने के लिए हो सकता है: a123b456, नया पासवर्ड: m987n654

बदलने उपयोगकर्ता m987n654 से पहचान abcdef की जगह a123b456;

134

SQL डेवलपर का उपयोग कर पासवर्ड अद्यतन करने के लिए सही सिंटैक्स है:

alter user user_name identified by "new_password" replace "old_password" ;

आप इस आदेश का यहाँ के लिए अधिक विकल्प की जाँच कर सकते हैं: http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_4003.htm#i2058207

+23

इसके अलावा, पासवर्ड में किसी विशेष वर्ण से बचने के लिए आपको डबल कोट्स में पासवर्ड लपेटने की आवश्यकता हो सकती है। उदाहरण के लिए, 'newp @ ss !!! "द्वारा पहचाने गए उपयोगकर्ता __user_name__ को बदलें "oldp @ ss !!!" को प्रतिस्थापित करें। http://asktom.oracle.com/pls/asktom/f?p=100:11p:::1211QUESTION_ID:897930000346894755 –

+3

पर अधिक जानकारी यदि आपका पीडब्ल्यूडी समाप्त हो गया है इसे चलाने के लिए शुभकामनाएं लॉग इन करें। उत्तर एक प्रश्न, लेकिन सवाल नहीं। –

8

मैं इस SQL ​​डेवलपर 3.0.04 में काम करता है की पुष्टि की। हमारे पासवर्ड के लिए एक विशेष चरित्र होना आवश्यक है, इसलिए हमारे मामले में डबल-उद्धृत स्ट्रिंग की आवश्यकता है। बेशक, यह केवल काम करता है पहले ही समाप्त हो अगर पासवर्ड नहीं और यदि आप वर्तमान में लॉग इन किया

ALTER USER MYUSERID 
IDENTIFIED BY "new#password" 
REPLACE "old#password" 
+2

यह उत्तर गलत है। newpassword और oldpassword transposed हैं। इसके बजाय http://stackoverflow.com/a/10809140/643483 का उपयोग करें –

77

एक SQL कार्यपत्रक में:।

"पासवर्ड" (उद्धरण के बिना) हाइलाइट में प्रकार, मारा Ctrl + ENTER। पासवर्ड परिवर्तन स्क्रीन आती है।

+4

आप "पासवर्ड कुछ उपयोगकर्ता नाम" भी कर सकते हैं – Anna

+3

मुझे लगता है कि आपका मतलब "रन स्टेटमेंट" कार्रवाई है। डिफ़ॉल्ट शॉर्ट-कट ** Ctrl + Enter ** होना प्रतीत होता है। –

41

एसक्यूएल डेवलपर में एक अंतर्निहित रीसेट पासवर्ड विकल्प है जो आपकी स्थिति के लिए काम कर सकता है। इसे वर्कस्टेशन में ओरेकल इंस्टेंट क्लाइंट को जोड़ने की आवश्यकता है।

SQL Developer: Drop Down menu showing reset password option

ओरेकल त्वरित ग्राहक स्थापित करने के लिए व्यवस्थापक विशेषाधिकारों की जरूरत नहीं है, बस की क्षमता एक निर्देशिका करने के लिए लिख सकते हैं और है कि जोड़ने के लिए: जब तत्काल ग्राहक पथ में है जब एसक्यूएल डेवलपर आप निम्नलिखित विकल्प सक्षम हो जाएगा की शुरूआत उपयोगकर्ताओं के लिए निर्देशिका निर्देशिका। अधिकांश उपयोगकर्ताओं को ऐसा करने के लिए विशेषाधिकार हैं।

संक्षिप्त: आदेश Oracle SQL डेवलपर पर पासवर्ड रीसेट उपयोग करने के लिएः

  1. आप एक निर्देशिका में ओरेकल त्वरित ग्राहक खोल चाहिए
  2. आप उन पथ के लिए ओरेकल त्वरित ग्राहक निर्देशिका जोड़ना होगा
  3. आपको ओरेकल एसक्यूएल डेवलपर

इस बिंदु पर आप डेटा स्रोत पर राइट क्लिक कर अपना पासवर्ड रीसेट कर सकते हैं।

एक पूरा माध्यम से गुजरने के

के लिए http://www.thatjeffsmith.com/archive/2012/11/resetting-your-oracle-user-password-with-sql-developer/ देखें इसके अलावा ओरेकल डॉक्स में टिप्पणी देखें: http://docs.oracle.com/cd/E35137_01/appdev.32/e35117/dialogs.htm#RPTUG41808

SQL डेवलपर के लिए एक वैकल्पिक विन्यास (संस्करण 4.0.1 पर परीक्षण) समझते हैं और झटपट का उपयोग ओएस एक्स पर क्लाइंट है: वरीयताओं में त्वरित ग्राहक के लिए पथ

  1. सेट -> डाटाबेस -> उन्नत -> उपयोग Oracle ग्राहक
  2. कॉन्फ़िगर करें का उपयोग करके इंस्टेंस क्लाइंट को सफलतापूर्वक लोड किया जा सकता है ... -> परीक्षण ... प्राथमिकता संवाद
  3. (ओएस एक्स) DYLD_LIBRARY_PATH पर्यावरण चर से संबंधित समस्याओं को हल करने के लिए this question का संदर्भ लें। मैं निम्न आदेश और फिर पुन: प्रारंभ SQL डेवलपर इस्तेमाल किया परिवर्तन लेने के लिए:

    $ launchctl setenv DYLD_LIBRARY_PATH/path/to/ओरेकल/instantclient_11_2

+1

सभी उपयोगकर्ताओं के लिए उपलब्ध नहीं 80 ( – Keng

+0

hmmm, मेरे लिए काम नहीं कर रहा है। मुझे आश्चर्य है कि पैट को अपडेट करना वास्तव में आपको मैक पर करना है। – fudo

+0

मैं मैक को घर का उपयोग करता हूं, लेकिन एक विंडोज़ पीसी काम पर। हम जल्द ही मैक पर स्विच कर रहे हैं ..अगर मुझे विवरण मिल जाए तो मैं उन्हें पोस्ट करूंगा। – Frobbit

0

निर्मित रीसेट पासवर्ड विकल्प के लिए काम नहीं कर सकता उपयोगकर्ता।

ALTER user "user" identified by "NewPassword" replace "OldPassword"; 
1

आप की तरह

SELECT profile 
FROM dba_users 
WHERE username = 'MacsP' 

DBA_USERS तालिका में उपयोगकर्ता को खोजने अब sys/प्रणाली (व्यवस्थापक) पर जा सकते हैं क्वेरी

का उपयोग करें और: इस मामले में पासवर्ड कर सकते हो का उपयोग कर SQL विवरण निम्नलिखित रीसेट
ALTER USER PRATEEK 
IDENTIFIED BY "new_password" 
REPLACE "old_password" 

सत्यापित करने के लिए खाते की स्थिति अभी

SELECT * FROM DBA_USERS. 
के माध्यम से जाना

और आप अपने उपयोगकर्ता की स्थिति देख सकते हैं।

1

अब आप SQL Developer 4.1.0.17 में ऐसा कर सकते हैं, कोई PL/SQL आवश्यक है, यह सोचते हैं आप किसी अन्य खाते प्रशासनिक विशेषाधिकार है कि है:

  1. एक विकल्प के प्रशासनिक साथ SQL डेवलपर 4.1.0.17 में डेटाबेस से संबंध बनाएं उपयोगकर्ता
  2. एक बार कनेक्ट होने वाले "अन्य उपयोगकर्ता" अनुभाग का विस्तार करें, और उस उपयोगकर्ता को राइट-क्लिक करें जिसका पासवर्ड समाप्त हो गया है। "उपयोगकर्ता संपादित करें" चुनें।
  3. "पासवर्ड समाप्त हो गया ..." चेकबॉक्स को अनचेक करें, उपयोगकर्ता के लिए एक नया पासवर्ड टाइप करें, और "सहेजें" दबाएं।
  4. काम किया!आप उस उपयोगकर्ता से कनेक्ट करके परीक्षण कर सकते हैं जिसका पासवर्ड समाप्त हो गया था, यह पुष्टि करने के लिए कि यह अब मान्य है।
0

है का एक और तरीका कमांड प्रॉम्प्ट के माध्यम से पासवर्ड रीसेट ...

1) (प्रारंभ मेनू में Oracle डाटाबेस फ़ोल्डर पर जाएं मेरे मामले Oracle डाटाबेस 11g एक्सप्रेस संस्करण) में ।

2) के भीतर उस फ़ोल्डर क्लिक "रन एसक्यूएल कमांडलाइन"

Oracle Database Folder image

3) प्रकार "कनेक्ट नाम/पासवर्ड" उद्धरण चिह्नों के बिना (अपने उपयोगकर्ता नाम और पुराने पासवर्ड)

4) प्रदर्शित संदेश है ...

ई Rror: ORA-28001: पासवर्ड घंटे के लिए

बदलने पासवर्ड

समाप्त हो गया है

-> नया पासवर्ड:

Enter Username, Password image

5) नया पासवर्ड

6 टाइप करें) नया पासवर्ड दोबारा टाइप करें

7) संदेश प्रदर्शित किया गया है ...

पासवर्ड बदल गया कनेक्ट किया गया।

>

8) SQL डेवलपर के लिए जाना एसक्यूएल -> नई पासवर्ड टाइप करें -> लोगों के लिए जुड़े

+0

का उपयोग करें जबकि ओपी अभी भी सक्रिय है, प्रश्न पूछने के 5 साल बाद, उत्तर अब प्रासंगिक नहीं हो सकता है। – Strawberry

+0

@ स्ट्रॉबेरी अगर यह सवाल का जवाब देता है, क्यों नहीं? !! –

0

एक टिप्पणी जो sysdba या sys के लिए सेट किए गए पासवर्ड नहीं हो सकता और नियमित रूप से एक का उपयोग करें तीसरे पक्ष के ग्राहक। यहां एक पासवर्ड के बिना कमांड लाइन sqlplus में लॉग इन करने के बारे में कुछ जानकारी दी गई है जिसने मेरी मदद की। मैं फेडोरा 21 का उपयोग कर रहा हूं।

locate sqlplus 

मेरे मामले में, sqlplus यहाँ स्थित है:

/u01/app/oracle/product/11.2.0/xe/config/scripts/sqlplus.sh 

अब

cd /u01/app/oracle/product/11.2.0/xe/config/scripts 
./sqlplus.sh/as sysdba 

चलाने अब आप अपने पुराने पहचान के साथ डेटाबेस से कनेक्ट करने की जरूरत है। आप ओरेकल अपने उत्पादन में प्रदान की गई टेम्प्लेट पा सकते हैं:

Use "connect username/[email protected]" to connect to the database. 

मेरे मामले में मैं तो मेरे इनपुट लग रहा है

तरह
connect oracle/[email protected] 

हो गया पासवर्ड "दैवज्ञ" के साथ उपयोगकर्ता "दैवज्ञ" है।अब अपना नया पासवर्ड दो बार टाइप करें। तब यदि आप अपना पासवर्ड अब और समय सीमा समाप्त नहीं करना चाहती आप चला सकते हैं

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; 
2

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

कदम:

  1. , मेरे मामले में मेरे सभी उपयोगकर्ताओं के "प्रणाली" को छोड़कर समाप्त हो गई है मान्य उपयोगकर्ता और पासवर्ड का उपयोग कर एक डेटाबेस से कनेक्ट और मुझे याद है कि पासवर्ड

  2. लगता है "Other_users" वृक्ष के भीतर नोड के रूप में छवि के नीचे प्रदर्शित करता है

enter image description here

"Other_users" पेड़ 3.within अपने उपयोगकर्ताओं है कि आप का पासवर्ड रीसेट करने और सही नोट क्लिक करें और "संपादित करें उपयोगकर्ता"

enter image description here

4.fill बाहर संपादन में नया पासवर्ड चाहते हैं लगता है उपयोगकर्ता संवाद और "लागू करें" पर क्लिक करें। सुनिश्चित करें कि आपने अनचेक किया है "पासवर्ड समाप्त हो गया है (उपयोगकर्ता को अगला लॉगिन बदलना होगा)"।

enter image description here

और वह मेरे लिए काम किया, यह अन्य समाधान के रूप में रूप में अच्छा है क्योंकि आप कम से कम एक खाते में प्रवेश करने में सक्षम होना चाहिए, लेकिन यह काम करता है नहीं है।

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