SQL Server 2017 Installation Step by Step
Database administrators can use this setup guide for SQL Server 2017 installation which has been released by Microsoft recently as the next data platform solution. SQL Server 2017 takes attention of especially data scientist with its new tools provided for Machine Learning and Artificial Intelligence besides the Database Management tools (disk based or in-memory databases), Business Intelligence tools (Reporting, Analysis and Integration Services), Big Data and R development. Especially Python development on SQL Server enables tools for developing machine learning solutions on SQL Server.
Within this SQL Server setup guide I will demonstrate step by step SQL Server 2017 installation as a stand-alone server also as a named instance only for Database Engine setup.
Launch SQL Server 2017 Installer
I assume you followed the steps in download SQL Server 2017 guide. I downloaded the SQL Server 2017 setup file in .ISO format and map as a disk drive.
Run SQL Server 2017 installer program setup.exe as administrator
SQL Server Installation Center will be displayed for SQL Server 2017 setup and configuration.
Switch to Installation tab
Maintenance options include:
Tools,
Resources,
Advanced configuration options for SQL Server 2017 setup.
Since I want to evaluate the new features coming with SQL Server 2017, I chosed a stand-alone SQL Server 2017 installation.
If you prefer the same setup option, switch to Installation tab and click on New SQL Server stand-alone installation or add features to an existing installation
Setup administrator can choose one of the three free editions: Evaluation, Developer, Express
Or if you have already own a SQL Server 2017 product key, it can be specified as well
Next screen in the wizard will be asking the setup administrator to accept the SQL Server license terms for SQL Server 2017 installation
Before setup process starts installing the binaries, it is a good practise to check for updates that might affect the health of the installation
At Install Setup Files step, if there is an update to installation files that update will be downloaded. If there is no update, this step will be passed
The following wizard step checks the Install Rules
System Configuration Check Report is created at "C:\Program Files\Microsoft SQL Server\140\Setup Bootstrap\Log\20170806_224959\SystemConfigurationCheck_Report.htm"
Now we came to the most important step Feature Selection
Soon I will be listing the features of SQL Server 2017 which can be selected seperately for installation or as an addon to an existing SQL Server instance.
Please note that there is a special note for SQL Server Reporting Services, SSRS can be downloaded at Microsoft Downloads portal.
But for simplicity I'll not deal with Reporting Services. Instead I'll concantrate on installing SQL Server Database Engine setup.
SQL Server Features to Install
Instance Features
The configuration and operation of each instance feature of a SQL Server instance is isolated from other SQL Server instances. SQL Server instances can operate side-by-side on the same computer.
Database Engine Services
Includes the Database Engine, the core service for storing, processing and securing data. The Database Engine provides controlled access and rapid transaction processing and also provides rich support for sustaining high availability. The Database Engine also provides support for the utility control point in the SQL Server Utility. Only Database Engine Services and Analysis Services can be clustered.
SQL Server Replication
Includes a set of technologies for copying and distributing data and database objects from one database to another and synchronizing between the databases for consistency. You can use replication to distribute data to different locations, and to remote and mobile users over local and wide area networks, dial-up connections, wireless connections and the Internet.
Machine Learning Services (In-Database)
Includes extensions that enable integration with R and Python languages using standard T-SQL statements.
R
Includes extensions that enable integration with R language using standard T-SQL statements.
Python
Includes extensions that enable integration with Python language using standard T-SQL statements.
Full-Text and Semantic Extractions for Search
Includes the Search engine that supports Full-Text Extraction for fast text search as well as Semantic Extraction for key phrases (likely tags) and similarity search on content stored in SQL Server.
Data Quality Services
Includes Data quality database objects.
PolyBase Query Service for External Data
Includes PolyBase technology that enables truly integrated querying across Hadoop non-relational data and SQL Server relational data using standard T-SQL statements.
Analysis Services
Includes Analysis Services and tools used to support online analytical processing (OLAP) and data mining. Only Database Engine Services and Analysis Services can be clustered.
Shared Services
Each shared feature is installed once within a defined scope and operates within that scope. The defined scope can span all SQL Server versions on a computer (e.g., SQL Server Browser), can be isolated to one major version of SQL Server, or can be isolated to one or more minor versions.
Machine Learning Server (Standalone)
Includes Microsoft Machine Learning Server for Windows that provides parallelized big data analysis, transformation, modeling and operationalization capabilities.
R, and
Python
Data Quality Client
Includes Data quality client objects.
Client Tools Connectivity
Includes components for communication between clients and servers.
Integration Services
Includes the designer, runtime, and utilities that enable Integration Services to move, integrate, and transform data between data stores.
Scale Out Master
Includes Scale Out Master for Integration Services Scale Out.
Scale Out Worker
Includes Scale Out Worker for Integration Services Scale Out.
Client Tools Backwards Compatibility
Client Tools SDK
Includes the software development kit containing resources for programmers.
Distributed Replay Controller
Includes the Distributed Replay Controller which orchestrates the actions of the distributed replay clients.
Distributed Replay Client
Includes the Distributed Replay Client. Multiple Distributed Replay Clients work together to simulate a workload against an instance of SQL Server.
SQL Server Connectivity SDK
Includes SQL Server Native Client (ODBC / OLE DB) SDK for database application development.
Master Data Services
Includes Master Data Services, the platform for integrating data from disparate systems across an organization into a single source of master data for accuracy and auditing purposes. Installs the Master Data Services Configuration Manager, assemblies, PowerShell snap-in, and folders and files for Web applications and services.
Redistributable Features
SQL Server redistributable and shared features are installed when needed: Error and Usage Reporting, SQL Server Native Client, MSXML version 6.0, Sync Services for ADO.NET, and SQL Server Browser.
SQL Server Database Engine Services Setup
Just for now I'll only choose to install the Database Engine Services without any other features.
All other features can be installed later.
Server administrator or setup admin can choose to change the default instance root directory. But for a Developer Edition I'll keep it unchanged.
SQL Server 2017 Database Engine Services requries 1 GB (1001 MB) disk space.
Press Next button to continue with next step in the setup wizard.
Instance Configuration enables database professionals to configure the SQL Server as the default instance on the server or as a named instance.
Since I have already an other SQL Server version (SQL Server 2016) installed as default instance on my development computer, I had to install the new SQL Server 2017 instance as named instance.
I called it "SQL2017". So I can reach the SQL Server instance later as "local\SQL2017" on the database server, or using the computer name in front of the instance name like "kodyaz\SQL2017" for remote connections in database connection strings or SSMS login screens.
As seen in the screenshot, installed SQL Server instances from different SQL Server versions are listed.
MSSQLSERVER is the default instance for version 13 which maps to SQL Server 2016 and is Developer Edition.
After the setup is completed successfully, database administrators will be able to see the named instance added here..
Of course, if you have no SQL Server installed on the server or on your computer, the installed instances list will be empty. So you are free to choose default instance or even name your instance.
The following step in setup process is the Server Configuration where the service accounts and the default server collation settings are defined.
I left the default options unchanged for the Service Accounts
SQL Server administrators might require to configure these accounts if they want to enable these services to reach resources on the networks, etc for such specific cases or for security reasons.
Database Engine Collation configuration is an other step here.
If you are developing a database solution for example to be used in Turkish, so the data stored in database tables will be all in Turkish you can configure to choose one of the Turkish collations as the database engine collation.
But it is also possible to configure collation on the database level.
I am choosing the "Latin1_General_CI_AS" as the default database engine collation for now.
There are a big number of collations for database administrators to choose if they need to change the database engine default collation
In Database Engine Configuration step, the first tab enables setup administrator to configure Authentication Mode and specify the SQL Server administrators.
I always choose to configure the SQL Server authentication by using the Mixed Mode of course by providing a strong password for the sa user (SQL Server system administrator account).
There are two authentications modes: Windows authentication mode and Mixed mode (SQL Server authentication and Windows authentication running at the same time)
And press "Add Current User" to add your Windows user to the SQL Server administrators list to gain system administration permissions on the SQL Server instance. Of course you can specify additional users as administrator by adding their accounts with the "Add..." button.
The second tab in the Database Engine Configuration screen is the Data Directories tab where system administrators can configure the folders and directories to be used for special purposes.
I leave unchanged the default directory settings.
But it is critical for performance to arrange data directories and log directories separate from each other.
Default Data Directories offered by setup wizard are:
Data root directory:
C:\Program Files\Microsoft SQL Server\
User database directory:
C:\Program Files\Microsoft SQL Server\MSSQL14.SQL2017\MSSQL\Data
User database log directory:
C:\Program Files\Microsoft SQL Server\MSSQL14.SQL2017\MSSQL\Data
Backup directory:
C:\Program Files\Microsoft SQL Server\MSSQL14.SQL2017\MSSQL\Backup
In fact, MSSQL14 is a hint for the SQL Server version so namely pointing to SQL Server 2017. The second part after the "." is the instance of the SQL Server installation, namely SQL2017 which I named previously. If you are installing default instance, you will only see the version identifier in the directory names.
TempDB configuration can be managed on a separate tab.
With enhancements introduced by SQL Server in previous versions, administrators can specify more than 1 TempDB data files for their server.
The initial size of the tempdb files and autogrowth options can be specified too.
AS seen in the below screenshot, TempDB Log directory can be configured too.
C:\Program Files\Microsoft SQL Server\MSSQL14.SQL2017\MSSQL\Data
FileStream configuration can be managed in the FileStream tab.
Although FileStream can be easily configured later on the SQL Server, since I am a fan of FileStream solutions, I always enable it immediately during installation.
But it is disabled by default on the setup wizard.
I mark checkboxes "Enable FileStream for Transact-SQL access", "Enable FileStream for file I/O access" and "Allow remote clients access to FileStream data"
After SQL Server 2017 installation, you will see a virtual file share named as here in the "Windows share name" which enables data write and read by putting files into the FileStream folder.
With completing Database Engine configuration, we can continue SQL Server 2017 installation with the next step "Feature Configuration Rules"
A list of rules defined by the features selected will be checked at this step and a visual and a detailed report will be created automatically. If you see all listed item in green then you can continue to install SQL Server instance.
The "Detailed Report" can be viewed in its default place:
C:\Program Files\Microsoft SQL Server\140\Setup Bootstrap\Log\20170807_202247\SystemConfigurationCheck_Report.htm
Now SQL Server setup administrators and SQL developers who want their new SQL Server 2017 database up and running, are very close to complete installation process.
On "Ready to install" step, a list of selected options and features selected, etc will be displayed.
The configuration is also visible in the ConfigurationFile.ini file which is stored at "C:\Program Files\Microsoft SQL Server\140\Setup Bootstrap\Log\20170807_202247\ConfigurationFile.ini"
This verification step is the last stop where you can go back to previous steps and change your SQL Server 2017 installation options.
Of course after the setup is completed, you can add or remove SQL Server features using the SQL Server Installer but that might be a second task consuming additional time.
Start installing the binaries for the SQL Server 2017 by pressing the "Install" button.
On my development computer, the setup of SQL Server 2017 database engine is completed only in 3 minutes.
An installation log file is created as a result of the setup process which can be viewed for setup details.
C:\Program Files\Microsoft SQL Server\140\Setup Bootstrap\Log\20170808_091703\Summary_ISBWCN0047_20170808_091703.txt
SQL Server Version Information
As I always do, after installing a new SQL Server version I logged on to SQL Server 2017 and checked the server version information.
Here is the SQL Server version information displayed on SQL Server Management Studio 17
By the way installing SQL Server Management Studio for SQL Server 2017 is a common task after SQL Server setup. So SQL developer can also check the installation guide for the SSMS for SQL Server 2017.