title: "SQL Tools and Utilities for SQL Server, Azure SQL Database, and Azure SQL Data Warehouse | Microsoft Docs" ms.custom: "" ms.date: "02/22/2018" ms.prod: sql ms.prod_service: "sql-tools" ms.component: "misc" ms.reviewer: "" ms.suite: "sql" ms.technology:
- "database-engine" ms.tgt_pltfrm: "" ms.topic: conceptual ms.assetid: caps.latest.revision: 0 author: "stevestein" ms.author: "sstein" manager: craigg monikerRange: ">=aps-pdw-2016||=azuresqldb-current||=azure-sqldw-latest||>=sql-server-2016||=sqlallproducts-allversions||>=sql-server-linux-2017"
[!INCLUDEappliesto-ss-asdb-asdw-pdw-md]
To manage (query, monitor, etc.) your database you need a tool. There are several database tools available. While your databases can be running in the cloud, on Windows, or on Linux, your tool doesn't need to run on the same platform as the database.
This article provides information about the available tools for working with your SQL databases.
| Tool | Description |
|---|---|
| [[!INCLUDEname-sos]](../sql-operations-studio/download.md) | [!INCLUDEname-sos] is a free, light-weight tool, for managing databases wherever they're running. This preview release provides database management features, including an extended Transact-SQL editor and customizable insights into the operational state of your databases. [!INCLUDEname-sos] runs on Windows, macOS, and Linux. |
| SQL Server Management Studio (SSMS) | Use SQL Server Management Studio (SSMS) to query, design, and manage your SQL Server, Azure SQL Database, and Azure SQL Data Warehouse. SSMS runs on Windows. |
| SQL Server Data Tools (SSDT) | Turn Visual Studio into a powerful development environment for SQL Server, Azure SQL Database, and Azure SQL Data Warehouse. SSDT runs on Windows. |
| mssql-cli | mssql-cli is an interactive command-line tool for querying SQL Server. mssql-cli runs on Windows, macOS, and Linux |
| Visual Studio Code | After installing Visual Studio Code, install the mssql extension for developing Microsoft SQL Server, Azure SQL Database, and SQL Data Warehouse. Visual Studio Code runs on Windows, macOS, and Linux. |
- Do you want to manage a SQL Server instance or database, in a light-weight editor on Windows, Linux or Mac? Choose [[!INCLUDEname-sos]](../sql-operations-studio/download.md)
- Do you want to manage a SQL Server instance or database on Windows with full GUI support? Choose SQL Server Management Studio (SSMS)
- Do you want to create or maintain database code, including compile time validation, refactoring and designer support on Windows? Choose SQL Server Data Tools (SSDT)
- Do you want to query SQL Server with a command-line tool that features IntelliSense, syntax high-lighting, and more? Choose mssql-cli
- Do you want to write T-SQL scripts in a light-weight editor on Windows, Linux or Mac? Choose Visual Studio Code and the mssql extension
| Tool | Description |
|---|---|
| Configuration Manager | Use SQL Server Configuration Manager to configure SQL Server services and configure network connectivity. Configuration Manager runs on Windows |
| mssql-conf | Use mssql-conf to configure SQL Server running on Linux. |
| SQL Server Migration Assistant | Use SQL Server Migration Assistant to automate database migration to SQL Server from Microsoft Access, DB2, MySQL, Oracle, and Sybase. |
| Distributed Replay | Use the Distributed Replay feature to help you assess the impact of future SQL Server upgrades. Also use Distributed Replay to help assess the impact of hardware and operating system upgrades, and SQL Server tuning. |
| ssbdiagnose | The ssbdiagnose utility reports issues in Service Broker conversations or the configuration of Service Broker services. |
Command line utilities enable you to script [!INCLUDEssNoVersion] operations. The following table contains a list of command prompt utilities that ship with [!INCLUDEssNoVersion].
| Utility | Description | Installed in |
|---|---|---|
| bcp Utility | Used to copy data between an instance of [!INCLUDEmsCoName] [!INCLUDEssNoVersion] and a data file in a user-specified format. | <drive:>\Program Files\[!INCLUDEmsCoName][!INCLUDEssNoVersion]\Client SDK\ODBC\110\Tools\Binn |
| dta Utility | Used to analyze a workload and recommend physical design structures to optimize server performance for that workload. | [!INCLUDEssInstallPathVar]Tools\Binn |
| dtexec Utility | Used to configure and execute an [!INCLUDEssISnoversion] package. A user interface version of this command prompt utility is called DTExecUI, which brings up the Execute Package Utility. | [!INCLUDEssInstallPathVar]DTS\Binn |
| dtutil Utility | Used to manage SSIS packages. | [!INCLUDEssInstallPathVar]DTS\Binn |
| Deploy Model Solutions with the Deployment Utility | Used to deploy [!INCLUDEssASnoversion] projects to instances of [!INCLUDEssASnoversion]. | [!INCLUDEssInstallPathVar]Tools\Binn\VShell\Common7\IDE |
| mssql-scripter (Public Preview) | Used to generate CREATE and INSERT T-SQL scripts for database objects in SQL Server, Azure SQL Database, and Azure SQL Data Warehouse. | See our GitHub repo for download and usage information. |
| osql Utility | Allows you to enter [!INCLUDEtsql] statements, system procedures, and script files at the command prompt. | [!INCLUDEssInstallPathVar]Tools\Binn |
| Profiler Utility | Used to start [!INCLUDEssSqlProfiler] from a command prompt. | [!INCLUDEssInstallPathVar]Tools\Binn |
| RS.exe Utility (SSRS) | Used to run scripts designed for managing [!INCLUDEssRSnoversion] report servers. | [!INCLUDEssInstallPathVar]Tools\Binn |
| rsconfig Utility (SSRS) | Used to configure a report server connection. | [!INCLUDEssInstallPathVar]Tools\Binn |
| rskeymgmt Utility (SSRS) | Used to manage encryption keys on a report server. | [!INCLUDEssInstallPathVar]Tools\Binn |
| sqlagent90 Application | Used to start [!INCLUDEssNoVersion] Agent from a command prompt. | <drive>:\Program Files\Microsoft SQL Server\<instance_name>\MSSQL\Binn |
| sqlcmd Utility | Allows you to enter [!INCLUDEtsql] statements, system procedures, and script files at the command prompt. | <drive:>\Program Files\[!INCLUDEmsCoName][!INCLUDEssNoVersion]\Client SDK\ODBC\110\Tools\Binn |
| SQLdiag Utility | Used to collect diagnostic information for [!INCLUDEmsCoName] Customer Service and Support. | [!INCLUDEssInstallPathVar]Tools\Binn |
| sqllogship Application | Used by applications to perform backup, copy, and restore operations and associated clean-up tasks for a log shipping configuration without running the backup, copy, and restore jobs. | [!INCLUDEssInstallPathVar]Tools\Binn |
| SqlLocalDB Utility | An execution mode of [!INCLUDEssNoVersion] targeted to program developers. | [!INCLUDEssInstallPathVar]Tools\Binn| |
| sqlmaint Utility | Used to execute database maintenance plans created in previous versions of [!INCLUDEssNoVersion]. | <drive>:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn |
| sqlps Utility | Used to run PowerShell commands and scripts. Loads and registers the [!INCLUDEssNoVersion] PowerShell provider and cmdlets. | [!INCLUDEssInstallPathVar]Tools\Binn |
| sqlservr Application | Used to start and stop an instance of [!INCLUDEssDE] from the command prompt for troubleshooting. | <drive>:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn |
| Ssms Utility | Used to start [!INCLUDEssManStudioFull] from a command prompt. | [!INCLUDEssInstallPathVar]Tools\Binn\VSShell\Common7\IDE |
| tablediff Utility | Used to compare the data in two tables for non-convergence, which is useful when troubleshooting a replication topology. | [!INCLUDEssInstallPathVar]COM |
| Convention | Used for |
|---|---|
| UPPERCASE | Statements and terms used at the operating system level. |
monospace |
Sample commands and program code. |
| italic | User-supplied parameters. |
| bold | Commands, parameters, and other syntax that must be typed exactly as shown. |