MSSQL远程连接,没有SSMS,使用sqlcmd

@


前言

服务器存储空间受限,只安装数据库引擎服务,不安装管理工具SSMS。本文使用 SQL Server 2019 Express,


一、安装SQL服务,不安装SSMS(管理工具)

1.下载MSSQL 2019

Microsoft官网下载或csdn下载

2.安装MSSQL,不安装SSMS

在这里插入图片描述
其他的默认。
在这里插入图片描述
身份验证模式,使用【Windows 身份验证模式】。如果使用【混合模式】,后面不需要再使用sqlcmd修改sa密码

3.启动SQL Server Browser

cmd -> services.msc -> 选中【SQL Server Browser】
在这里插入图片描述
在这里插入图片描述

二、下载sqlcmd,测试连接

1.下载sqlcmd

github下载sqlcmd或csdn下载sqlcmd

2.测试连接

sqlcmd -S "WIN-RQ3DAT9LM9U\MSSQLSERVER"
-- 查看版本
select @@version
go

在这里插入图片描述
WIN-RQ3DAT9LM9U 是计算机名
MSSQLSERVER 是实例名

三、修改SQL的身份验证模式,默认为1

1表示Windows身份验证模式,2表示SQL Server和Windows身份验证模式
修改注册表

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQLServer

LoginMode的键值,1修改为2
在这里插入图片描述
记得重启SQL服务

四、sqlcmd连接sa账户

1.连接默认数据库引擎

-- 连接默认数据库引擎
sqlcmd -S "WIN-RQ3DAT9LM9U\MSSQLSERVER"
-- 启用sa用户
ALTER LOGIN sa ENABLE
GO
-- 设置sa用户的密码
alter login sa with password='@123456ChaoJun'
GO
-- 退出sqlcmd
exit

2.登录sa账户

sqlcmd -S "WIN-RQ3DAT9LM9U\MSSQLSERVER" -U "sa" -P "@123456ChaoJun"
-- 查看数据库
select name from master.dbo.sysdatabases
go
-- 查看表
use master
go
select name from sysobjects where xtype='U'
go
-- 查看字段
select c.name,c.length from syscolumns c inner join sysobjects t on c.id = t.id and t.name='spt_monitor'
go

五、SSMS远程数据库

1.数据库所在计算机,启动TCP/IP

在这里插入图片描述
在这里插入图片描述
记得重启SQL服务

2.数据库所在计算机,关闭防火墙

测试用,直接关闭防火墙。
生产环境,不建议关闭防火墙,建立入站规则
2.1 端口(Port) -> TCP -> 1433 -> 选中三个(Domain, Private, and Public) -> 名称【SQL - TCP 1433】
2.2 端口(Port) -> UDP -> 1433 -> 选中三个(Domain, Private, and Public) -> 名称【SQL - UDP 1433】
2.3 开放程序sqlservr.exe:
程序(Program) ->【安装路径】-> 选中三个(Domain, Private, and Public) -> 名称【SQL – Sqlservr.exe】
C:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Binn\sqlservr.exe
2.4 开放程序sqlservr.exe:
程序(Program) ->【安装路径】-> 选中三个(Domain, Private, and Public) -> 名称【SQL – Sqlbrowser.exe】
C:\Program Files (x86)\Microsoft SQL Server\90\Shared\sqlbrowser.exe
在这里插入图片描述

参考:Configuring a SQL Server for Remote Connections

3.本地计算机查看远程端口是否开放(非必要)

-- 192.168.1.108 为远程计算机IP
telnet 192.168.1.108 1433

4.本地计算机SSMS远程数据库

在这里插入图片描述

六、其他端口连接,请参考文章配置

Access Microsoft SQL Server remotely with command prompt - Remote SQLCMD

总结

在不适合安装SSMS管理工具的情况,理论上可使用sqlcmd对数据库进行全部操作,实际操作过程感觉不是很方便。

参考文章:

1.sqlcmd启用并连接sa用户
2.SQL Server: enable remote connections without SSMS
3.sqlcmd命令介绍

posted @ 2023-10-02 14:03  Fork  阅读(549)  评论(0编辑  收藏  举报