9.5 sqlcmd 实用工具

9.5  sqlcmd 实用工具


9.5.1 安装 sqlcmd

  sqlcmd 实用工具是一个 Windows 命令行提示符运行的应用程序,用于启动和停止 SQL Server 实例,以及交互执行 T-SQL 语句和脚本。

  sqlcmd 实用工具是伴随 SQL Server 实例时同时安装的。对于 SQL Server 2014,sqlcmd.exe 文件默认位于 C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\110\Tools\Binn 文件夹。对于 SQL Server 2012 以及更早的产品,sqlcmd.exe 文件的位置则有所不同,例如:C:\Program Files\Microsoft SQL Server\100\Tools\Binn 文件夹。

技术分享



9.5.2 查询数据库引擎列表

  sqlcmd 通过“-L”选项可以查询本地计算机已经安装了的数据库引擎服务,不论这些实例的服务是否已经启动,但是运行此查询需要启动 SQL Server Browser 服务。sqlcmd 的选项区分大小写。

  下例是在某计算机运行此查询的结果。

C:\> sqlcmd -L


服务器:

    PC2014

    PC2014\SQL2008R2

    PC2014\SQL2012



9.5.3 连接到 SQL Server 实例

  sqlcmd 使用以下选项连接到 SQL Server 实例。

  “-S”选项指定要连接的 SQL Server 实例。格式为:-S [protocol:]server[\instance_name][,port]。如果不指定服务器,sqlcmd 将默认连接到本地计算机上的默认实例。protocol 可以是 tcp (TCP/IP)、lpc (shared memory) 或 np (named pipes)。

  如果没有指定连接到 SQL Server 实例所使用的凭据,则默认使用“-E”选项,表示使用当前的 Windows 凭据(即运行 sqlcmd 的用户的 Windows 帐户)进行身份验证。如果需要指定凭据,可以使用“-U”选项指定用户名,以及使用“-P”选项指定密码。一旦使用了“-E”选项,就不能使用任何“-U”选项或“-P”选项,否则将报错。

  在下面的示例中,sqlcmd 使用当前的 Windows 凭据连接到 PC2014 计算机的 SQL2008R2 命名实例。

C:\> sqlcmd -S PC2014\SQL2008R2



9.5.4 打开 DAC

  如果将 SQL Server 配置为接受远程管理连接,则必须使用显式端口号启动 DAC。格式为: 

C:\> sqlcmd –Stcp:<server>,<port>


  SQL Server 错误日志列出了 DAC 的端口号,默认情况下为 1434。 如果将 SQL Server 配置为仅接受本地 DAC 连接,请使用以下命令和环回适配器(IP 地址为 127.0.0.1)进行连接。 

C:\> sqlcmd –S 127.0.0.1,1434 


  在下面的示例中,sqlcmd 通过“-A”选项打开了 DAC并且默认连接到 master 数据库。

C:\> sqlcmd -S 127.0.0.1 -A -d master



9.5.5 使用 OSQL.exe

  SQL Server 2014 的 OSQL.exe 文件位于 C:\Program Files\Microsoft SQL Server\120\Tools\Binn 文件夹。(对于SQL Server 2012 以及更早的版本,OSQL.exe与sqlcmd.exe都位于这个文件夹。)

技术分享

  这是一个通过 ODBC 与 SQL Server 实例进行通讯的应用程序。OSQL 实用工具的使用方法基本上与 sqlcmd 相同。只是为了与旧产品兼容而保留了这个工具。


本文出自 “SQLServer2014丛书” 博客,谢绝转载!

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。