UNIX सिस्टम पर, यदि कोई फ़ाइल लॉक होता है, तो त्रुटि संदेश में एक PID शामिल होता है, जैसे:

ERROR: A lock is not available for XXX.XXXX.

ERROR: Lock held by process 4653302.

विंडोज़ के लिए, दोषी प्रक्रिया प्रदान नहीं की जाती है। क्या कोई तरीका है जिससे मैं पता लगा सकता हूं कि टेबल को किसने बंद किया? मैं मशीन पर लॉग इन नहीं कर सकता, हालांकि सर्वर में XCMD सक्षम है।

FWIW, FILELOCKWAIT विकल्प यहां मददगार नहीं है (यह एक लंबे समय तक चलने वाला लॉक है)।

संपादित करें: मैं कोई व्यवस्थापक नहीं हूं, और मैं तृतीय पक्ष टूल डाउनलोड नहीं कर सकता

sas
0
Allan Bowe 12 फरवरी 2019, 11:25

1 उत्तर

सबसे बढ़िया उत्तर

wmic विंडोज़ में चल रही गतिविधियों के बारे में लगभग कुछ भी प्रदान करता है जो आप चाहते हैं।

win32_process आपको बताएगा कि कौन क्या चला रहा है (यदि आपके खाते में उचित नीति सेटिंग है)। SASers ढूंढें और उन्हें कॉल करें?

उदाहरण: Proc IMPORT एक पाइप नहीं पढ़ सकता, इसलिए पहले wmic आउटपुट को एक फाइल में सेव करें।

%let wmic_cmd = wmic path win32_process where "description like '%nrstr(%%sas.exe%%)'";

filename whosas pipe 
   "%superq(wmic_cmd) get /format:csv | findstr /r /v ""^$"" > c:\temp\wmic_whosas.txt"
;

data _null_;
  infile whosas;
  input;
run;

proc import dbms=csv datafile="c:\temp\wmic_whosas.txt" replace out=whosas;
run;

आपको प्रत्येक एसएएस प्रक्रिया के बारे में 47 जानकारी मिलनी चाहिए।

यदि आपके पास अनुमति नहीं है, तो आईटी को उन्हें देना होगा, या आपके साथ इतनी बार जुड़ना होगा कि वे अंततः ऐसा करते हैं :)

1
Richard 12 फरवरी 2019, 12:11