Install SQL Server 2012 on Server Core

Starting with SQL Server 2012, you can install SQL Server on a Server Core installation of Windows Server 2008 R2 SP1 or Windows Server 2012. This topic provides setup-specific details for installing SQL Server 2012 on Server Core.

The Server Core installation option for the Windows Server 2008 R2 or Windows Server 2012 operating system provides a minimal environment for running specific server roles. This helps to reduce maintenance and management requirements and the attack surface for those server roles. For more information on Server Core as implemented on Windows Server 2008 R2, see Server Core for Windows Server 2008 R2 (https://go.microsoft.com/fwlink/?LinkId=202439). For more information on Server Core as implemented on Windows Server 2012, see Server Core for Windows Server 2012 (https://msdn.microsoft.com/library/hh846323(VS.85).aspx).

Prerequisites

Requirement

How to install

.NET Framework 2.0 SP2

Included in Server Core installation of Windows Server 2008 R2 SP1 and Windows Server 2012. If it is not enabled, Setup enables it by default.

It is not possible to run versions 2.0, 3.0, and 3.5 side by side on a computer. When you install the .NET Framework 3.5 SP1, you get the 2.0 and 3.0 layers automatically.

.NET Framework 3.5 SP1 Full Profile

Included in Server Core installation of Windows Server 2008 R2 SP1. If it is not enabled, Setup enables it by default.

On a computer with Server Core installation of Windows Server 2012, the SQL Server Setup automatically downloads and installs the .NET Framework 3.5 SP1. This process requires internet access.

If there is no internet access, it is required to download and install .NET Framework 3.5 SP1 before you run Setup, to install components dependent on .NET 3.5 SP1.

For more information about the recommendations and guidance on how to acquire and enable .NET Framework 3.5 in Windows Server 2012, see Microsoft .NET Framework 3.5 Deployment Considerations (https://msdn.microsoft.com/library/windows/hardware/hh975396).

.NET Framework 4 Server Core Profile

For all editions of SQL Server 2012 except SQL Server Express, Setup installs the .NET Framework 4 Server Core Profile as a prerequisite.

For SQL Server 2012 Express, download the .NET Framework 4 Server Core Profile from Microsoft .NET Framework 4 (Standalone Installer) for Server Core (https://go.microsoft.com/fwlink/?LinkId=220467), and install it before you proceed with the setup.

Windows Installer 4.5

Shipped with Server Core installation of Windows Server 2008 R2 SP1 and Windows Server 2012.

Windows PowerShell 2.0

Shipped with Server Core installation of Windows Server 2008 R2 SP1 and Windows Server 2012.

Supported Features

Use the following table to find which features are supported in SQL Server 2012 on a Server Core installation of Windows Server 2008 R2 SP1 and Windows Server 2012.

Feature

Supported

Database Engine Services

Yes

SQL Server Replication

Yes

Full Text Search

Yes

Analysis Services

Yes

Reporting Services

No

SQL Server Data Tools (SSDT)

No

Client Tools Connectivity

Yes

Integration Services Server[1]

Yes

Client Tools Backward Compatibility

No

Client Tools SDK

No

SQL Server Books Online

No

Management Tools - Basic

Remote Only[2]

Management Tools – Complete

Remote Only[2]

Distributed Replay Controller

No

Distributed Replay Client

Remote Only[2]

SQL Client Connectivity SDK

Yes

Microsoft Sync Framework

Yes[3]

Master Data Services

No

Data Quality Services

No

[1]For more information about the new Integration Services Server and its features in SQL Server 2012, see Integration Services (SSIS) Server.

[2]Installation of these features on Server Core is not supported. These components can be installed on a different server that is not Windows Server 2008 R2 Server Core SP1 or Windows Server 2012 Server Core, and connected to the Database Engine services installed on Server Core.

[3]Microsoft Sync Framework is not included in the SQL Server 2012 installation package. You can download the appropriate version of Sync Framework from this Microsoft Download Center (https://go.microsoft.com/fwlink/?LinkId=221788) page and install it on a computer that is running Server Core installation of Windows Server 2008 R2 SP1 or Windows Server 2012.

Supported Scenario Matrix

The following table shows the supported scenario matrix for installing SQL Server 2012 on a Server Core installation of Windows Server 2008 R2 SP1 and Windows Server 2012.

SQL Server editions

All SQL Server 2012 64-bit editions[1]

SQL Server language

All languages

SQL Server language on OS language/locale (combination)

  • ENG SQL Server on JPN (Japanese) Windows

  • ENG SQL Server on GER (German) Windows

  • ENG SQL Server on CHS (Chinese-China) Windows

  • ENG SQL Server on ARA (Arabic (SA)) Windows

  • ENG SQL Server on THA (Thai) Windows

  • ENG SQL Server on TRK (Turkish) Windows

  • ENG SQL Server on pt-PT (Portuguese Portugal) Windows

  • ENG SQL Server on ENG (English) Windows

Windows edition

  • Windows Server 2012 64-bit x64 Datacenter

  • Windows Server 2012 64-bit x64 Standard

  • Windows Server 2008 R2 SP1 64-bit x64 Data Center Server Core

  • Windows Server 2008 R2 SP1 64-bit x64 Enterprise Server Core

  • Windows Server 2008 R2 SP1 64-bit x64 Standard Server Core

  • Windows Server 2008 R2 SP1 64-bit x64 Web Server Core

[1]Installing the 32-bit version of SQL Server 2012 editions is not supported on Server Core.

Upgrading

On Server Core installations, upgrade of an earlier version of SQL Server to SQL Server 2012 is not supported.

Installation

SQL Server 2012 does not support setup by using the installation wizard on the Server Core operating system. When installing on Server Core, SQL Server Setup supports full quiet mode by using the /Q parameter, or Quiet Simple mode by using the /QS parameter. For more information, see Install SQL Server 2012 from the Command Prompt.

Important

SQL Server 2012 cannot be installed side-by-side with earlier versions of SQL Server on a computer that is running Windows Server 2008 R2 Server Core SP1 or Windows Server 2012 Server Core.

Regardless of the installation method, you are required to confirm acceptance of the software license terms as an individual or on behalf of an entity, unless your use of the software is governed by a separate agreement such as a Microsoft volume licensing agreement or a third-party agreement with an ISV or OEM.

The license terms are displayed for review and acceptance in the Setup user interface. Unattended installations (using the /Q or /QS parameters) must include the /IACCEPTSQLSERVERLICENSETERMS parameter. You can review the license terms separately at Microsoft Software License Terms.

Note

Depending on how you received the software (for example, through Microsoft volume licensing), your use of the software may be subject to additional terms and conditions.

To install specific features, use the /FEATURES parameter and specify the parent feature or feature values. For more information about feature parameters and their use, see the following sections.

Feature Parameters

Feature parameter

Description

SQLENGINE

Installs only the Database Engine.

REPLICATION

Installs the Replication component along with Database Engine.

FULLTEXT

Installs the FullText component along with Database Engine.

AS

Installs all Analysis Services components.

IS

Installs all Integration Services components.

CONN

Installs the connectivity components.

See the following examples of the usage of feature parameters:

Parameter and values

Description

/FEATURES=SQLEngine

Installs only the Database Engine.

/FEATURES=SQLEngine,FullText

Installs the Database Engine and full-text.

/FEATURES=SQLEngine,Conn

Installs the Database Engine and the connectivity components.

/FEATURES=SQLEngine,AS,IS,Conn

Installs the Database Engine, Analysis Services, Integration Services, and the connectivity components.

Installation Options

The Setup supports the following installation options while installing SQL Server 2012 on a Server Core operating system:

  1. Installation from Command Line

    To install specific features using the command prompt installation option, use the /FEATURES parameter and specify the parent feature or feature values. The following is an example of using the parameters from the command line:

    Setup.exe /qs /ACTION=Install /FEATURES=SQLEngine,Replication /INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="<StrongPassword>" /SQLSYSADMINACCOUNTS="<DomainName\UserName>" /AGTSVCACCOUNT="NT AUTHORITY\Network Service" /TCPENABLED=1 /IACCEPTSQLSERVERLICENSETERMS
    
  2. Installation using Configuration File

    Setup supports the use of the configuration file only through the command prompt. The configuration file is a text file with the basic structure of a parameter (name/value pair) and a descriptive comment. The configuration file specified at the command prompt should have an .INI file name extension. See the following examples of ConfigurationFile.INI:

    Installing Database Engine

    The following example shows how to install a new stand-alone instance that includes the SQL Server Database Engine:

    ; SQL Server 2012 Configuration File
    [OPTIONS]
    

    ; Specifies a Setup work flow, like INSTALL, UNINSTALL, or UPGRADE. This is a required parameter.

    ACTION="Install"

    ; Specifies features to install, uninstall, or upgrade. The lists of features include SQLEngine, FullText, Replication, AS, IS, and Conn.

    FEATURES=SQLENGINE

    ; 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, and Analysis Services (AS).

    INSTANCENAME="MSSQLSERVER"

    ; 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.

    INSTANCEID="MSSQLSERVER"

    ; Account for SQL Server service: Domain\User or system account.

    SQLSVCACCOUNT="NT Service\MSSQLSERVER"

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

    SQLSYSADMINACCOUNTS="<DomainName\UserName>"

    ; Accept the License agreement to continue with Installation

    IAcceptSQLServerLicenseTerms="True"

    Installing connectivity components

    The following example shows how to install the connectivity components:

    ; SQL Server 2012 Configuration File
    [OPTIONS]
    

    ; Specifies a Setup work flow, like INSTALL, UNINSTALL, or UPGRADE. This is a required parameter.

    ACTION="Install"

    ; Specifies features to install, uninstall, or upgrade. The lists of features include SQLEngine, FullText, Replication, AS, IS, and Conn.

    FEATURES=Conn

    ; Specifies acceptance of License Terms

    IAcceptSQLServerLicenseTerms="True

    Installing all supported features

    The following example shows how to install all supported features of SQL Server 2012 on Server Core:

    ;SQL Server 2012 Configuration File
    [OPTIONS]
    ; Specifies a Setup work flow, like INSTALL, UNINSTALL, or UPGRADE. This is a required parameter. 
    

    ACTION="Install"

    ; Specifies features to install, uninstall, or upgrade. The lists of features include SQLEngine, FullText, Replication, AS, IS, and Conn.

    FEATURES=SQLENGINE,FullText,Replication,AS,IS,Conn

    ; 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), or Analysis Services (AS).

    INSTANCENAME="MSSQLSERVER"

    ; 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.

    INSTANCEID="MSSQLSERVER"

    ; Account for SQL Server service: Domain\User or system account.

    SQLSVCACCOUNT="NT Service\MSSQLSERVER"

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

    SQLSYSADMINACCOUNTS="<DomainName\UserName>"

    ; The name of the account that the Analysis Services service runs under.

    ASSVCACCOUNT= "NT Service\MSSQLServerOLAPService"

    ; Specifies the list of administrator accounts that need to be provisioned.

    ASSYSADMINACCOUNTS="<DomainName\UserName>"

    ; Specifies the server mode of the Analysis Services instance. Valid values are MULTIDIMENSIONAL, POWERPIVOT or TABULAR. ASSERVERMODE is case-sensitive. All values must be expressed in upper case.

    ASSERVERMODE="MULTIDIMENSIONAL"

    ; Optional value, which specifies the state of the TCP protocol for the SQL Server service. Supported values are: 0 to disable the TCP protocol, and 1 to enable the TCP protocol.

    TCPENABLED=1

    ;Specifies acceptance of License Terms

    IAcceptSQLServerLicenseTerms="True"

    The following table shows how you can launch the Setup using a configuration file.

    Installation option

    Examples

    Configuration file

    Following are some examples of how to use the configuration file:

    • To specify the configuration file at the command prompt:

    Setup.exe /QS /ConfigurationFile=MyConfigurationFile.INI
    • To specify passwords at the command prompt instead of in the configuration file:

    Setup.exe /QS /SQLSVCPASSWORD="************" /ASSVCPASSWORD="************"  /ConfigurationFile=MyConfigurationFile.INI

    DefaultSetup.ini

    If you have the DefaultSetup.ini file in the \x86 and \x64 folders at the root level of the SQL Server source media, open the DefaultSetup.ini file, and then add the Features parameter to the file.

    If the DefaultSetup.ini file does not exist, you can create it and copy it to the \x86 and \x64 folders at the root level of the SQL Server source media.

Configuring Remote Access of SQL Server Running on Server Core

Perform the actions described below to configure remote access of a SQL Server 2012 instance that is running on a Server Core installation of Windows Server 2008 R2 SP1 or Windows Server 2012.

Enable remote connections on the instance of SQL Server

To enable remote connections, use SQLCMD.exe locally and execute the following statements against the Server Core instance:

  • EXEC sys.sp_configure N'remote access', N'1'

    GO

  • RECONFIGURE WITH OVERRIDE

    GO

Enable and start the SQL Server Browser service

By default, the Browser service is disabled. If it is disabled on an instance of SQL Server running on Server Core, run the following command from the command prompt to enable it:

sc config SQLBROWSER start= auto

After it is enabled, run the following command from the command prompt to start the service:

net start SQLBROWSER

Create exceptions in Windows Firewall

To create exceptions for SQL Server access in Windows Firewall, follow the steps specified in Configure the Windows Firewall to Allow SQL Server Access.

Enable TCP/IP on the instance of SQL Server

The TCP/IP protocol can be enabled through Windows PowerShell for an instance of SQL Server on Server Core. Follow these steps:

  1. On the computer that is running Windows Server 2008 R2 Server Core SP1 or Windows Server 2012 Server Core, launch Task Manager.

  2. On the Applications tab, click New Task.

  3. In the Create New Task dialog box, type sqlps.exe in the Open field and then click OK. This opens the Microsoft SQL Server Powershell window.

  4. In the Microsoft SQL Server Powershell window, run the following script to enable the TCP/IP protocol:

$smo = 'Microsoft.SqlServer.Management.Smo.'
$wmi = new-object ($smo + 'Wmi.ManagedComputer')
# Enable the TCP protocol on the default instance.  If the instance is named, replace MSSQLSERVER with the instance name in the following line.
$uri = "ManagedComputer[@Name='" + (get-item env:\computername).Value + "']/ServerInstance[@Name='MSSQLSERVER']/ServerProtocol[@Name='Tcp']"
$Tcp = $wmi.GetSmoObject($uri)
$Tcp.IsEnabled = $true
$Tcp.Alter()
$Tcp

Uninstallation

After you log on to a computer that is running Windows Server 2008 R2 Server Core SP1 or Windows Server 2012 Server Core, you have a limited desktop environment with an Administrator command prompt. You can use this command prompt to initiate uninstallation of an instance of SQL Server 2012. To uninstall an instance of SQL Server 2012, launch the uninstallation from the command prompt in full quiet mode by using the /Q parameter, or quiet simple mode by using the /QS parameter. The /QS parameter shows progress through the UI, but does not accept any input. /Q runs in a quiet mode without any user interface.

To uninstall an existing instance of SQL Server.

Setup.exe /Q /Action=Uninstall /FEATURES=SQLEngine,AS,IS /INSTANCENAME=MSSQLSERVER

Note

To remove a named instance, specify the name of the instance instead of "MSSQLSERVER" in the preceding example.

Warning

If you accidentally close the command prompt, you can start a new command prompt by following these steps:

  1. Press Ctrl+Shift+Esc to display Task Manager.

  2. On the Applications tab, click New Task.

  3. In the Create New Task dialog box, type cmd in the Open field and then click OK.

See Also

Concepts

Install SQL Server 2012 Using a Configuration File

Install SQL Server 2012 from the Command Prompt

Other Resources

Features Supported by the Editions of SQL Server 2012

Server Core Installation Option Getting Started Guide

Configuring a Server Core installation: Overview

Failover Cluster Cmdlets in Windows PowerShell Listed by Task Focus

Mapping Cluster.exe Commands to Windows PowerShell Cmdlets for Failover Clusters