शीघ्र जवाब
बस निम्नलिखित चलाएँ:
{InstanceHome}\MSSQL\Binn\sqlservr.exe -v [-s InstanceName]
NOTE ABOUT SQL Server Express LocalDB: LocalDB can only be determined by the
existence of the following folder:
C:\Program Files\Microsoft SQL Server\{SQL Server Version: 110, 120, etc}\LocalDB\Binn
Running "sqlserver.exe -v" doesn't help as it reports as being "Developer Edition", and
searching the Registry it reports as being "Express Edition".
यह विधि हमेशा अन्य समाधानों के विपरीत काम करती है, जो तब काम नहीं करेंगे जब:
- आप एक कार्यक्रम (उदाहरण के लिए, PowerShell) लिखना नहीं चाहते हैं?
- क्लाइंट उपकरण स्थापित नहीं किया गया है (SQLCMD.EXE का उपयोग करने के लिए आवश्यक)?
- कोई SQL सर्वर लॉग फ़ाइल नहीं है, या कोई लॉग फ़ाइल नहीं है जिसमें कोई प्रारंभ / पुनरारंभ ईवेंट हों?
- SQL सर्वर नहीं चल रहा है (इसलिए
SELECT @@VERSION;
कोई विकल्प नहीं है)?
उदाहरण 1
यदि आपके पास केवल एक ही इंस्टेंस है, तो आपको -s
स्विच का उपयोग करने की आवश्यकता नहीं है :
C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Binn>sqlservr.exe -v
यह दिखाता है:
2015-08-01 11:40:11.63 Server Logging to event log is disabled. Startup option '-v' is supplied, either from the registry or the command prompt.
2015-08-01 11:40:11.63 Server Microsoft SQL Server 2012 - 11.0.5343.0 (X64)
May 4 2015 19:11:32
Copyright (c) Microsoft Corporation
Developer Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: )
2015-08-01 11:40:11.63 Server (c) Microsoft Corporation.
2015-08-01 11:40:11.63 Server All rights reserved.
2015-08-01 11:40:11.63 Server Server process ID is 3824.
2015-08-01 11:40:11.63 Server System Manufacturer: '{CompanyName}', System Model: '{ModelNumber}'.
2015-08-01 11:40:11.63 Server Authentication mode is MIXED.
2015-08-01 11:40:11.63 Server The service account is '{AccountName}'. This is an informational message; no user action is required.
2015-08-01 11:40:11.63 Server SQL Server shutdown has been initiated
उदाहरण 2
यदि आपके पास मशीन पर कई इंस्टेंसेस स्थापित हैं, तो आपको यह -s
निर्दिष्ट करने के लिए भी स्विच का उपयोग करने की आवश्यकता है कि आप किस इंस्टेंस में रुचि रखते हैं, अन्यथा यह संस्करण जानकारी को इंटरमिट कर सकता है:
C:\Program Files\Microsoft SQL Server\MSSQL12.SQLEXPRESS2014\MSSQL\Binn>sqlservr.exe -v
-s SQLEXPRESS2014
यह दिखाता है:
2015-08-01 12:01:13.13 Server Logging to event log is disabled. Startup option '-v' is supplied, either from the registry or the command prompt.
2015-08-01 12:01:13.13 Server Microsoft SQL Server 2014 - 12.0.4213.0 (X64)
Jun 9 2015 12:06:16
Copyright (c) Microsoft Corporation
Express Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: )
2015-08-01 12:01:13.13 Server UTC adjustment: -4:00
2015-08-01 12:01:13.13 Server (c) Microsoft Corporation.
2015-08-01 12:01:13.13 Server All rights reserved.
2015-08-01 12:01:13.13 Server Server process ID is 1712.
2015-08-01 12:01:13.13 Server System Manufacturer: '{CompanyName}', System Model: '{ModelNumber}'.
2015-08-01 12:01:13.13 Server Authentication mode is WINDOWS-ONLY.
2015-08-01 12:01:13.13 Server The service account is '{AccountName}'. This is an informational message; no user action is required.
2015-08-01 12:01:13.13 Server SQL Server shutdown has been initiated
अतिरिक्त जानकारी
किसी प्रोग्राम की संस्करण जानकारी को निर्धारित करने का सबसे तेज़, सबसे आसान और सबसे विश्वसनीय तरीका बस उस प्रोग्राम से जानकारी का अनुरोध करना है। अधिकांश कार्यक्रमों ( * .COM और * .EXE ) में एक कमांड-लाइन स्विच / फ्लैग / पैरामीटर / विकल्प / बहरी-मा-बॉब है जो मदद और / या संस्करण जानकारी प्रदर्शित करेगा।
कार्यक्रम के आधार पर, कमांड-लाइन स्विच निम्नलिखित में से एक के साथ उपसर्ग किया जाएगा:
- [कुछ भी नहीं / नाडा]
- -
- -
- /
और, फिर से कार्यक्रम के आधार पर, कमांड-लाइन स्विच निम्न में से एक होगा:
- सबसे आम:
- कभी-कभी सामान्य सहायता जानकारी में शामिल होते हैं:
{SQL सर्वर उदाहरण ऊपर दिखाए गए}
दूसरी ओर, कमांड-लाइन उपयोगिता SQLCMD.EXE, -v
चर स्क्रिप्ट को SQL स्क्रिप्ट में पारित करने के लिए स्विच का उपयोग करता है , इसलिए यह केवल सामान्य जानकारी डिस्प्ले में संस्करण जानकारी प्रदर्शित करता है:
C:\>sqlcmd /?
Microsoft (R) SQL Server Command Line Tool
Version 11.0.2100.60 NT x64
Copyright (c) 2012 Microsoft. All rights reserved.
usage: Sqlcmd [-U login id] [-P password]
[-S server] [-H hostname] [-E trusted connection]
...
[-v var = "value"...] ...
...
[-? show syntax summary]
नोटपैड, हालांकि, केवल कमांड-लाइन स्विच का एक बहुत सीमित सेट है , और उनमें से कोई भी संस्करण जानकारी प्रदर्शित नहीं करता है।
वैकल्पिक, नहीं-उपद्रव के तरीके:
रजिस्ट्री की जाँच करें:
कुंजी: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Microsoft SQL सर्वर \ {VersionNumber} \ Tools \ सेटअप
नाम: संस्करण :
यदि आप संस्करण संख्या (उदाहरण के लिए SQL Server 2012 = 110, SQL सर्वर 2014 = 120, आदि) जानते हैं, तो आप इसके लिए विशेष रूप से कमांड प्रॉम्प्ट पर निम्नलिखित को चलाकर संस्करण को ले सकते हैं:
REG QUERY "HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\{VersionNumber}\Tools\Setup" /v /e /f Edition
निम्नलिखित के समान एक प्रविष्टि लौटाता है:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\110\Tools\Setup
Edition REG_SZ Developer Edition
यदि आप जो कुछ भी स्थापित करने के लिए संस्करण देखना चाहते हैं, तो कमांड प्रॉम्प्ट पर निम्नलिखित को चलाएँ:
REG QUERY "HKLM\SOFTWARE\Microsoft\Microsoft SQL Server" /s /v /e /f Edition
ऊपर और नीचे दिखाए गए के समान एक या अधिक प्रविष्टियाँ लौटाता है:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL11E.LOCALDB\Setup
Edition REG_SZ Express Edition
स्थापना लॉग की जाँच करें:
C: \ Program Files \ Microsoft SQL Server \ {SQL Server संस्करण: 110, 120, आदि} \ Setup बूटस्ट्रैप \ Log \ {date_time} \ Detail.txt
"IsExpressSku" स्ट्रिंग के लिए:
(०३) २०१४-०९ -१५ १६:५३:४४ वर्ग: - प्रभावी जासूस: इस्सप्रसेस्कु = सच