标签: sql-server

如何测试服务器上是否打开了特定端口,尤其是 1443?

试图在 Windows 盒子上打开一个洞来访问 sql server。

如何测试以查看端口是否打开(不使用 sql 测试登录等)

我正在寻找一种更通用的不涉及 sql server 的测试方法,只是为了隔离无法连接的问题,即它是登录问题还是连接/防火墙问题。

windows-server-2003 sql-server

6
推荐指数
2
解决办法
9万
查看次数

您如何配置 MS SQL Server 以防止将所有数据库名称和登录名暴露给任何经过身份验证的用户?

我是 MS SQL 的新手,作为一名系统管理员经验有限的 Web 开发人员,希望他的服务提供商使用最佳实践,因此提出了这个问题。

我们在托管公司提供的远程 MS SQL 服务器上有一个数据库。我们托管公司的其他客户使用同一台服务器作为他们的数据库。当我使用 Microsoft SQL Server Management Studio Express 登录到服务器时,我可以看到大量信息,包括服务器上所有数据库的名称和所有登录名。

虽然我无法访问其他客户的数据库,也无法看到密码,但我什至能够看到这些信息,这对我来说似乎很奇怪。我当然不希望其他客户知道我的数据库名称或我的登录名。当我向我的服务提供商提出这个问题时,他的回答是:

我咨询了我的 SQL 人员,他说不幸的是 MSSQL Server 的一个限制。尽管数据库名称是可见的,但如果没有该数据库的密码,您将无法访问该数据库。

这是我登录后看到的:

  • mssql.server.com
    • 数据库
      • 系统数据库
      • 一大堆客户数据库...
    • 安全
      • 登录
      • 一大堆客户端登录...
    • 服务器对象
    • 复制
    • 管理

这是设置 SQL Server 的正确方法吗?请确认或否认我的怀疑,答案是否定的,我需要找其他人来托管我们的数据库。

security sql-server ssms

6
推荐指数
1
解决办法
1万
查看次数

相当于 MSSQL 的 phpMyAdmin?

是否有用于管理类似于 phpMyAdmin(用于 MySQL)的 MSSQL 的网络界面?

我想要一个自助服务设置,开发人员可以通过 Web 界面创建数据库,并在没有本地访问的情况下上传/下载数据库备份。

我考虑过phpMSAdmin,但它自 2006 年以来一直没有发布,所以我不确定它是否值得设置它。如果还有其他东西(免费或不那么免费)那就太好了。

我的问题是相似的这一张贴2年前,但是没有很好的webinterface发现当时的情况。SQL Web 数据管理器看起来很有趣,但它缺少一些功能——最显着的是创建新数据库(而且,自 2007 年以来没有更新)。

remote-access web-applications sql-server

5
推荐指数
1
解决办法
3万
查看次数

MSSQL 2008 R2 服务器角色:服务器角色是否对*所有数据库*具有隐式特权?

我正在建立一个涉及 .NET 解决方案和 MSSQL 2008 数据库的持续集成解决方案。

我所有的构建服务器都位于一个名为Build Servers. 我已将DOMAIN\Build Servers对象创建为 MSSQL 登录名并授予该组dbcreator和securityadmin服务器角色。我没有授予任何特定的数据库角色,因为我的理解是这些服务器角色应该让该组中的任何 AD 帐户创建、更改、删​​除和数据库或用户。

我正在运行一个示例作业,它应该对特定数据库应用一些简单的修改。但是,我收到以下错误:

Detailed message Cannot open database "awesome-database" requested by the login. The login failed. 
Database.dbschema : Deploy error TSD01234: Login failed for user 'DOMAIN\BUILDSERVER01$'.
Run Code Online (Sandbox Code Playgroud)

DOMAIN\BUILDSERVER01$ 肯定在 Build Servers 组中,因此它应该能够登录并更改任何数据库。

我是否在这里遗漏了一些明显的内容,或者我是否必须将此登录名映射到存在的每个数据库?

编辑

如果我授予sysadmin,它会起作用。嗯。

security sql-server

5
推荐指数
1
解决办法
888
查看次数

在 MS SQL Server 中保持 100 多个链接服务器对象打开的影响

我管理使用 SQL Server 作为数据库引擎的大型基于云的产品。该模型的设计使得使用该产品的每个客户都有自己的 MS SQL Server 实例。我需要一种从用于处理实例管理的集中式 SQL 实例查询、更新和插入这些实例的方法。我已经确定创建链接服务器对象是可行的方法,而且我已经通过这种方式处理来自这些数据库的临时更新。我正在努力扩展一些功能,这将显着增加从这个集中管理实例执行的查询的数量和频率。

所以,这是我的问题:始终从单个 SQL 实例打开 100 多个链接服务器对象有什么影响?有什么影响吗?到目前为止,我对链接服务器的做法是在完成后删除它们。

sql sql-server

5
推荐指数
1
解决办法
371
查看次数

如何使用 MSSQL 链接服务器功能和 ODBC 成功连接到 Foxpro 数据库文件?

我们正在尝试使用 Foxpro ODBC 驱动程序通过 MSSQL Server 的链接服务器功能访问基于 Foxpro 文件的数据库文件。

为此,我们已经

  • 安装了 Microsoft 最新的 Foxpro ODBC 驱动程序,
  • 制作了一个使用此驱动程序的系统 DSN
  • 在数据库类型下选择“Visual FoxPro 数据库 (.DBC)”选项,而不是“自由表目录”
  • 指定我们的 dbc 文件的路径(在本地机器上)
  • 已安装 MSSQL Server 2008 R2 Express
  • 安装 MSSQL Server Management Studio 2008
  • 尝试使用这样的 GUI 向导创建一个新的链接服务器: 新建链接服务器屏幕截图

但是最后一步永远不会完成(永远显示“Executing”)。当 Management Studio 被强制关闭并重新启动时,新的链接服务器就在那里,但只包含 Catalogs 子项。如果我们尝试扩展它,Management Studio 将再次进入循环。

linked-server sql-server erp

5
推荐指数
1
解决办法
5万
查看次数

威胁管理网关 2010 正在终止 SQL 连接

我的公司刚刚开始在 Windows 2008 R2 服务器上使用 TMG 2010 作为我们的防火墙/Web 代理。自移动以来,与 SQL Server 的所有连接都在大约 30 秒后关闭。

例如:

  1. 从 SSMS 运行查询将成功运行
  2. 等待 30+ 秒
  3. 再次运行查询,它将失败并显示以下错误

    A transport-level error has occurred when sending the request to the server.
    (provider: TCP Provider, error: 0 - An existing connection was forcibly closed by the remote host.
    
    Run Code Online (Sandbox Code Playgroud)
  4. 再次运行查询,它将正常工作。

运行时间超过 30 秒的查询也会出现同样的问题。

我假设第 3 步中的错误是因为 SSMS 没有意识到现有连接已关闭。

查看 TMG 日志,我可以看到 SQL 连接正在关闭,其中包含以下信息:

Closed Connection
Log type: Firewall service
Status: Unspecified error
Rule: Internal Internet Access
Source: Internal (xx.xx.xx.xx) …
Run Code Online (Sandbox Code Playgroud)

sql-server microsoft-ftmg-2010

5
推荐指数
1
解决办法
1751
查看次数

SQL Server 2012 的目标目录是灰色的

我尝试在 Windows 2008 和 Windows 7 上安装 SQL Server 2012 Standard(我只想在 Win7 上安装 management studio)。相同的 ISO;两台机器都是新建的。但是,在 Windows 7 上C:\Program Files...,即使没有选中任何选项,共享功能目录也会设置为灰色。C:是操作系统驱动器;然而,它是一个相当小的 SSD,所以我正在尝试将我能安装的所有东西都安装到另一个驱动器上。

在 Win2008 上,它不会变灰(不幸的是,我不需要在那里更改任何内容)。

什么可能导致共享目录在 Windows 7 上变灰?

sql-server sql-server-2012

5
推荐指数
1
解决办法
1万
查看次数

当操作系统发出内存不足的信号时,SQL Server 释放 RAM 的速度有多快?

来自 SQL Server 2008 R2 联机丛书:

服务器内存选项

当 SQL Server 动态使用内存时,它会定期查询系统以确定可用的物理内存量。SQL Server 使用内存通知 APIQueryMemoryResourceNotification来确定缓冲池何时可以分配内存和释放内存。

来自 SQL Server 2005/2008 联机丛书:

服务器内存选项

当 SQL Server 动态使用内存时,它会定期查询系统以确定可用的物理内存量。在 Microsoft Windows 2000 下,SQL Server 会根据服务器活动增大或缩小缓冲区缓存以将可用物理内存保持在 4 MB 到 10 MB 之间。维护此可用内存可防止 Windows 2000 分页。如果可用内存较少,SQL Server 会将内存释放给 Windows 2000。

在 Windows Server 2003 下,SQL Server 使用内存通知 APIQueryMemoryResourceNotification来确定缓冲池何时可以分配内存和释放内存。

我知道 SQL Server 管理自己的内存使用情况。如果服务器的可用内存不足,SQL Server 会释放一些内存(自己饿死)。这是默认的、理想的、首选的行为。但我已经看到了很多的地方时,有SQL Server未释放内存的情况下是其他饥饿的应用程序(从大量的寻呼故障即痛苦)。

然后我发现有人提到SQL Server 实际释放内存可能需要几天时间:

专业的 Microsoft SQL Server 2008 管理,内存使用

在此处输入图片说明

SQL Server 是目前性能最好的服务器应用程序之一。当操作系统触发内存不足通知事件时,SQL 将释放内存供其他应用程序使用,如果机器上正在运行另一个内存贪婪的应用程序,则它实际上会耗尽自己的内存。好消息是 SQL …

memory-usage sql-server sql-server-2008-r2

5
推荐指数
1
解决办法
2860
查看次数

连接到 VPN 后,到 SQL 的可信连接失败

我有一个运行着 SQL 2008 EXPRESS 实例的开发服务器。该域称为 DEVAD,该实例已启用共享内存、命名管道和 TCP/IP。

我的工作站 PC 位于另一个名为 AD 的域中。

我在 AD 和 DEVAD 之间设置了域信任,我可以使用我的 AD 凭据通过 SSMS 或 .NET 程序连接到 DEVAD 实例。

不幸的是,当我使用不同域的凭据通过 VPN 连接到另一个网络时,我收到以下错误“登录失败。登录来自不受信任的域,无法与 Windows 身份验证一起使用。(Microsoft SQL Server,错误: 18452)”。

我的 VPN 连接有一个“在远程网络上使用默认网关”选项,未选中 IPv4 和 IPv6。

关于如何防止 VPN 连接破坏信任的任何想法?


更新:我有一个额外的 VPN,我偶尔会连接到它,当这个 VPN 处于活动状态时,我在连接到 SQL 的同时没有问题。

我在连接和未连接各种 VPN 的 SQL 主机上做了一些 nslookup 测试。我的问题 VPN 以 DNS 超时而告终,这可能意味着 VPN 上的 DNS 配置错误并吞掉了请求,而不是提供不存在的域响应(就像我的其他 VPN 那样),并让系统继续运行查询确实知道它的 DNS。

vpn active-directory sql-server

5
推荐指数
1
解决办法
8850
查看次数