代码改变世界

The Windows account sa does not exist and cannot be provisioned as a SQL Server system administrator

2017-10-16 23:21  潇湘隐者  阅读(2028)  评论(0编辑  收藏  举报

今天遇到一个案例,在使用命令修改一个测试服务器(SQL Server 2014标准版)的服务器排序规则时,遇到了下面错误信息

(具体账号信息脱敏处理,随机生成一个账号密码)

The Windows account sa does not exist and cannot be provisioned as a SQL Server system administrator

 

clip_image001

 

c:\SQLServer_12.0_Full>Setup /QUIET /ACTION=REBUILDDATABASE  /INSTANCENAME=MSSQL

SERVER /SQLSYSADMINACCOUNTS=sa   /SAPWD=Sa!y#456  /SQLCOLLATION=Chinese_PRC_CI_AS

 

Microsoft (R) SQL Server 2014 12.00.5000.00

Copyright (c) Microsoft Corporation.  All rights reserved.

 

The following error occurred:

The Windows account sa does not exist and cannot be provisioned as a SQL Server

system administrator.

 

Error result: -2061893626

Result facility code: 1306

Result error code: 6

 

Please review the summary.txt log for further details

 

 

后面折腾了很久后,发现这种写法居然是错误的,由于自己在动手之前参考了自己以前写的MS SQL 排序规则总结这篇博文,结果发现自己一些不严谨/错误的地方把自己也给坑了。希望不要把别人也坑了!!!时间太久远了,怎么也想不起当初怎么造就了这样一个错误, 总之,那篇博文里面确实有一个错误的地方。希望以后要引以为戒!

 

正确的写法为/SQLSYSADMINACCOUNTS参数后指定域账号或本机NT账号,这个可以通过查看帮助信息

 

 

c:\SQLServer_12.0_Full>Setup /QUIET /ACTION=REBUILDDATABASE  /INSTANCENAME=MSSQLSERVER

 /SQLSYSADMINACCOUNTS=azrnt18\azrnt18    /SAPWD="Sa!y#456" /SQLCOLLATION=Chinese_PRC_CI_AS

Microsoft (R) SQL Server 2014 12.00.5000.00

Copyright (c) Microsoft Corporation.  All rights reserved.

 

 

image

 

 

setup /? setup  /help查看参数信息,SQLSYSADMINACCOUNTS的介绍、解释如下所示:

 

SQLSYSADMINACCOUNTS    Windows account(s) to provision as SQL Server system administrators.

 

 

也就是说SQLSYSADMINACCOUNTS参数后指定的是有SQL Server管理员权限的Windows账号,由于最上面最上面指定参数的值为sa,所以才会一直报这个错误。

 

c:\SQLServer_12.0_Full>setup /help
Microsoft (R) SQL Server 2014 12.00.5000.00
Copyright (c) Microsoft Corporation.  All rights reserved.
 
Usage:
 setup.exe /[option]={value} /[option]={value} ...
 
 Options:
 ACTION                       Specifies a Setup work flow, like INSTALL,
                              UNINSTALL, or UPGRADE. This is a required
                              parameter.
 ADDCURRENTUSERASSQLADMIN     Provision current user as a Database Engine
                              system administrator for %SQL_PRODUCT_SHORT_NAME%
                              Express.
 AGTDOMAINGROUP               Either domain user name or system account
 AGTSVCACCOUNT                Either domain user name or system account
 AGTSVCPASSWORD               Password for domain user name. Not required for
                              system account
 AGTSVCSTARTUPTYPE            Startup type for the SQL Server Agent service.
                              Supported values are Manual, Automatic or
                              Disabled.
 ALLINSTANCES                 Specifies that all instances are to be included
                              in the Setup operation. This parameter is
                              supported only when applying a patch.
 ALLOWUPGRADEFORSSRSSHAREPOIN
                              RSInputSettings_AllowUpgradeForSSRSSharePointMode_
Description
 ASBACKUPDIR                  The location for the Analysis Services backup
                              files.
 ASCOLLATION                  The collation used by Analysis Services.
 ASCONFIGDIR                  The location for the Analysis Services
                              configuration files.
 ASDATADIR                    The location for the Analysis Services data
                              files.
 ASLOGDIR                     The location for the Analysis Services log files.
 ASPROVIDERMSOLAP             Specifies if the MSOLAP provider can run in
                              process.
 ASSERVERMODE                 Specifies the server mode of the Analysis
                              Services instance. Valid values are
                              MULTIDIMENSIONAL and TABULAR. The default value
                              is MULTIDIMENSIONAL.
 ASSVCACCOUNT                 The account used by the Analysis Services
                              service.
 ASSVCPASSWORD                The password for the Analysis Services service
                              account.
 ASSVCSTARTUPTYPE             Controls the service startup type setting for the
                              service.
 ASSYSADMINACCOUNTS           Specifies the list of administrator accounts to
                              provision.
 ASTEMPDIR                    The location for the Analysis Services temporary
                              files.
 BROWSERSVCSTARTUPTYPE        Startup type for Browser Service.
 CLTCTLRNAME                  The computer name that the client communicates
                              with for the Distributed Replay Controller
                              service.
 CLTRESULTDIR                 The result directory for the Distributed Replay
                              Client service.
 CLTSTARTUPTYPE               The startup type for the Distributed Replay
                              Client service.
 CLTSVCACCOUNT                The account used by the Distributed Replay Client
                              service.
 CLTSVCPASSWORD               The password for the Distributed Replay Client
                              service account.
 CLTWORKINGDIR                The working directory for the Distributed Replay
                              Client service.
 CLUSTERPASSIVE               Specifies that SQL Server Setup should not manage
                              the SQL Server services. This option should be
                              used only in a non-Microsoft cluster environment.
 COMMFABRICENCRYPTION         MATRIXCOMMMESSAGEPROTECTION {0,1}
 COMMFABRICNETWORKLEVEL       MATRIXCOMMNETWORKISOLATION {0,1}
 COMMFABRICPORT               MATRIXCOMMPORT <port>
 CONFIGURATIONFILE            Specifies the configuration file to be used for
                              Setup.
 CONFIRMIPDEPENDENCYCHANGE    Indicates that the change in IP address resource
                              dependency type for the SQL Server multi-subnet
                              failover cluster is accepted.
 CTLRSTARTUPTYPE              The startup type for the Distributed Replay
                              Controller service.
 CTLRSVCACCOUNT               The account used by the Distributed Replay
                              Controller service.
 CTLRSVCPASSWORD              The password for the Distributed Replay
                              Controller service account.
 CTLRUSERS                    The Windows account(s) used to grant permission
                              to the Distributed Replay Controller service.
 ENABLERANU                   Set to "1" to enable RANU for SQL Server Express.
 ENU                          Use the /ENU parameter to install the English
                              version of SQL Server on your localized Windows
                              operating system.
 ERRORREPORTING               Specify if errors can be reported to Microsoft to
                              improve future SQL Server releases. Specify 1 or
                              True to enable and 0 or False to disable this
                              feature.
 FAILOVERCLUSTERDISKS         Specifies a cluster shared disk to associate with
                              the SQL Server failover cluster instance.
 FAILOVERCLUSTERGROUP         Specifies the name of the cluster group for the
                              SQL Server failover cluster instance.
 FAILOVERCLUSTERIPADDRESSES   Specifies an encoded IP address. The encodings
                              are semicolon-delimited (;), and follow the
                              format <IP Type>;<address>;<network name>;<subnet
                              mask>. Supported IP types include DHCP, IPV4, and
                              IPV6.
 FAILOVERCLUSTERNETWORKNAME   Specifies the name of the SQ LServer failover
                              cluster instance.  This name is the network name
                              that is used to connect to SQL Server services.
 FAILOVERCLUSTERROLLOWNERSHIP Specifies whether the upgraded nodes should take
                              ownership of the failover instance group or not.
                              Use 0 to retain ownership in the legacy nodes, 1
                              to make the upgraded nodes take ownership, or 2
                              to let SQL Server Setup decide when to move
                              ownership.
 FEATURES                     Specifies features to install, uninstall, or
                              upgrade. The list of top-level features include
                              SQL, AS, RS, IS, MDS, and Tools. The SQL feature
                              will install the Database Engine, Replication,
                              Full-Text, and Data Quality Services (DQS)
                              server. The Tools feature will install Management
                              Tools, Books online components, SQL Server Data
                              Tools, and other shared components.
 FILESTREAMLEVEL              Level to enable FILESTREAM feature at (0, 1, 2 or
                              3).
 FILESTREAMSHARENAME          Name of Windows share to be created for
                              FILESTREAM File I/O.
 FTSVCACCOUNT                 User account for Full-text Filter Daemon Host.
 FTSVCPASSWORD                User password for Full-text Filter Daemon Host
                              account.
 FTUPGRADEOPTION              Full-text catalog upgrade option.
 HELP                         Displays the command line parameters usage
 IACCEPTSQLSERVERLICENSETERMS By specifying this parameter and accepting the
                              SQL Server license terms, you acknowledge that
                              you have read and understood the terms of use.
 INDICATEPROGRESS             Specifies that the detailed Setup log should be
                              piped to the console.
 INSTALLSHAREDDIR             Specify the root installation directory for
                              shared components.  This directory remains
                              unchanged after shared components are already
                              installed.
 INSTALLSHAREDWOWDIR          Specify the root installation directory for the
                              WOW64 shared components.  This directory remains
                              unchanged after WOW64 shared components are
                              already installed.
 INSTALLSQLDATADIR            The Database Engine root data directory.
 INSTANCEDIR                  Specify the instance root directory.
 INSTANCEID                   Specify the Instance ID for the SQL Server
                              features you have specified. SQL Server directory
                              structure, registry structure, and service names
                              will incorporate the instance ID of the SQL
                              Server instance.
 INSTANCENAME                 Specify a default or named instance. MSSQLSERVER
                              is the default instance for non-Express editions
                              and SQLExpress for Express editions. This
                              parameter is required when installing the SQL
                              Server Database Engine (SQL), Analysis Services
                              (AS), or Reporting Services (RS).
 ISSVCACCOUNT                 Either domain user name or system account.
 ISSVCPASSWORD                Password for domain user.
 ISSVCSTARTUPTYPE             Automatic, Manual or Disabled.
 MATRIXCMBRICKCOMMPORT        MATRIXCMBRICKCOMMPORT portNumber
 MATRIXCMSERVERNAME           MATRIXCMSERVERNAME hostName\instanceName
 MATRIXNAME                   MATRIXNAME=<name>
 NPENABLED                    Specify 0 to disable or 1 to enable the Named
                              Pipes protocol.
 PID                          Specify the SQL Server product key to configure
                              which edition you would like to use.
 QUIET                        Setup will not display any user interface.
 QUIETSIMPLE                  Setup will display progress only, without any
                              user interaction.
 ROLE                         Detailed help for command line argument ROLE has
                              not been defined yet.
 RSCATALOGSERVERINSTANCENAME  The SQL Server server for the report server
                              catalog database.
 RSINSTALLMODE                RSInputSettings_RSInstallMode_Description
 RSSHPINSTALLMODE             RSInputSettings_RSInstallMode_Description
 RSSVCACCOUNT                 Specify the service account of the report server.
                              This value is required. If you omit this value,
                              Setup will use the default built-in account for
                              the current operating system (either
                              NetworkService or LocalSystem). If you specify a
                              domain user account, the domain must be under 254
                              characters and the user name must be under 20
                              characters. The account name cannot contain the
                              following characters:
                              " / \ [ ] : ; | = , + * ? < >
 RSSVCPASSWORD                Specify a strong password for the account. A
                              strong password is at least 8 characters and
                              includes a combination of upper and lower case
                              alphanumeric characters and at least one symbol
                              character. Avoid spelling an actual word or name
                              that might be listed in a dictionary.
 RSSVCSTARTUPTYPE             Specifies the startup mode for the Report Server
                              service. Valid values include Manual, Automatic,
                              and Disabled. The default value for StartupType
                              is Manual, where the server is started when a
                              request is received.
 RSUPGRADEDATABASEACCOUNT     RSInputSettings_RSInstallMode_Description
 RSUPGRADEPASSWORD            RSInputSettings_RSInstallMode_Description
 RULES                        Specifies the list of rule IDs or rule group IDs
                              to run.
 SAPWD                        Password for SQL Server sa account.
 SECURITYMODE                 The default is Windows Authentication. Use "SQL"
                              for Mixed Mode Authentication.
 SQLBACKUPDIR                 Default directory for the Database Engine backup
                              files.
 SQLCOLLATION                 Specifies a Windows collation or an SQL collation
                              to use for the Database Engine.
 SQLSVCACCOUNT                Account for SQL Server service: Domain\User or
                              system account.
 SQLSVCPASSWORD               A SQL Server service password is required only
                              for a domain account.
 SQLSVCSTARTUPTYPE            Startup type for the SQL Server service.
 SQLSYSADMINACCOUNTS          Windows account(s) to provision as SQL Server
                              system administrators.
 SQLTEMPDBDIR                 Directory for Database Engine TempDB files.
 SQLTEMPDBLOGDIR              Directory for the Database Engine TempDB log
                              files.
 SQLUSERDBDIR                 Default directory for the Database Engine user
                              databases.
 SQLUSERDBLOGDIR              Default directory for the Database Engine user
                              database logs.
 SQMREPORTING                 Specify that SQL Server feature usage data can be
                              collected and sent to Microsoft. Specify 1 or
                              True to enable and 0 or False to disable this
                              feature.
 TCPENABLED                   Specify 0 to disable or 1 to enable the TCP/IP
                              protocol.
 UIMODE                       Parameter that controls the user interface
                              behavior. Valid values are Normal for the full
                              UI,AutoAdvance for a simplied UI, and
                              EnableUIOnServerCore for bypassing Server Core
                              setup GUI block.
 UpdateEnabled                Specify whether SQL Server Setup should discover
                              and include product updates. The valid values are
                              True and False or 1 and 0. By default SQL Server
                              Setup will include updates that are found.
 UpdateSource                 Specify the location where SQL Server Setup will
                              obtain product updates. The valid values are "MU"
                              to search Microsoft Update, a valid folder path,
                              a relative path such as .\MyUpdates or a UNC
                              share. By default SQL Server Setup will search
                              Microsoft Update or a Windows Update service
                              through the Window Server Update Services.
 USEMICROSOFTUPDATE           If this parameter is provided, then this computer
                              will use Microsoft Update to check for updates.
 X86                          Specifies that Setup should install into WOW64.
                              This command line argument is not supported on an
                              IA64 or a 32-bit system.
 
Full unattended installation example, showing all required parameters:
 
 
setup.exe /Q /IACCEPTSQLSERVERLICENSETERMS /ACTION=install /PID=<validpid> /FEAT
URES=SQL,AS,RS,IS,Tools
/INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="MyDomain\MyAccount"
/SQLSVCPASSWORD="************" /SQLSYSADMINACCOUNTS="MyDomain\MyAccount "
/AGTSVCACCOUNT="MyDomain\MyAccount" /AGTSVCPASSWORD="************"
/ASSVCACCOUNT="MyDomain\MyAccount" /ASSVCPASSWORD="************"
/RSSVCACCOUNT="MyDomain\MyAccount" /RSSVCPASSWORD="************"
/ISSVCAccount="MyDomain\MyAccount" /ISSVCPASSWORD="************"
/ASSYSADMINACCOUNTS="MyDomain\MyAccount"
 
Press any key to exit...