我们公司刚刚被收购,周末我把最后几台机器接入他们的网络(它们位于不同的 Windows 域下)。
最后一台机器是我们的 Vault 系统,SQL Server 使用 Windows 身份验证。
我已将其插入他们的网络并且工作正常,但我无法使用 Management Studio 连接到 SQL Server,而且我担心备份作业也无法正常工作。
当我尝试在 Windows Auth 下登录时,它的用户名是“NEWDOMAIN\Administrator”(灰显),然后显示“登录失败”消息,错误代码为“18456”。
任何人都可以帮助我解决这个问题,还是我只需重新安装 SQL Server、Vault 并恢复我在移动之前进行的备份?
我编写了一个 PS1 脚本,该脚本对文件进行 7-zip 压缩,并使用 PuTTY 的 SCP 将其存储在我的备份服务器上。我已经测试过它并且工作完美。
然后,我登录到 SQL Server 代理,并向备份作业添加一个额外的步骤,以便在备份作业完成后立即执行该脚本。它被正确调用,创建 .7z 文件,并调用 pscp.exe...并停止。我转到 SQL Server 代理的作业活动监视器并找到以下内容:
Message
The server's host key is not cached in the registry. You
have no guarantee that the server is the computer you
think it is.
The server's rsa2 key fingerprint is:
ssh-rsa 2048 b5:f8:d2:5f:be:90:b6:be:15:d3:26:d5:c6:42:59:05
If you trust this host, enter "y" to add the key to
PuTTY's cache and carry on connecting.
If you want to carry on connecting just once, …Run Code Online (Sandbox Code Playgroud) 为了运行第三方 WSUS 脚本(针对 Windows 内部数据库),我下载了 x64 版本的Microsoft Command Line Utilities 14 for SQL Server,但是当我尝试安装时,我收到以下错误消息:
安装程序缺少安装先决条件:Microsoft ODBC Driver 11 for SQL Server。要继续,请为 SQL Server 安装 Microsoft ODBC 驱动程序 11,然后再次运行安装操作。
按照说明安装 ODBC 驱动程序(从此页面下载)无效,尝试安装命令行实用程序时我仍然收到相同的错误消息。
此外,虽然我在运行安装程序时确实下载了“Microsoft Command Line Utilities 14 for SQL Server”,但它的标题是“Microsoft Command Line Utilities 13 for SQL Server”。
(强调我的。)
这里到底发生了什么,我如何才能成功安装最新版本的命令行实用程序?
我们有一个我们出售的 Web 解决方案,它带有 1 个专用的 Azure VM,其中包含运行应用程序所需的一切:
但是,特定客户要求在高可用性设置中运行其应用程序。他想要的是,当一台服务器出现故障时,另一台应该接管,反之亦然。
我对负载平衡/高可用性设置完全陌生,我知道 Azure 支持负载平衡,但我对如何使其工作感到困惑。使用上述设置创建 2 个服务器然后设置高可用性功能是否容易?我关心的是如何在两台服务器之间同步网站数据和 SQL Server 数据?尤其是后者。
或者如果我使用 Azure SQL 服务器而不是本地 SQL 服务器会更容易吗?或者可能引入额外的服务器而不是 2 个?
我在 Azure 中有一个 STAGING 和 PROD 环境、Web 应用程序、SQL 数据库等。目前,PROD 的 SQL db 的规模远高于 STAGING - 这并不奇怪。
我想通过将这些 SQL 资源与 SQL 弹性池汇集在一起可以节省资金。但是我担心它会在 STAGING 和 PROD 之间产生耦合,我内心的一切都在尖叫这是一个坏主意。
可能会合理影响性能、可靠性、安全性等的合法缺陷是什么?
在 SQL Server 2005 / 2008 上设置安全性时。更安全的选项是什么?
服务器是否会被许多桌面客户端(胖客户端)访问,或者少数 Web 服务器将访问它是否重要?
编辑
为什么它更安全?使用 Windows 身份验证确实意味着我们可以避免将连接字符串放在配置文件中,这是一个优点。
Windows 身份验证还允许我们根据他们的 NT 凭据控制谁可以访问,我认为当您的客户端直接连接到服务器时,这是理想的。
然而,我一直想知道的一件事是,当所有客户端都通过 Web 服务等代理时,NT 身份验证有多大用处。
场景:我们希望在 Active Directory 域环境中使用 SQL Server 2005 Standard 版本的数据库镜像以及见证服务器。数据库是从 3rd 方应用服务器提供的,除了数据库连接字符串之外,该服务器无法修改。
与此相关的两个问题:
虽然我了解将权限应用于角色然后将用户添加到角色的目的,但我想知道如果知道每个角色和每个用户之间存在一对一的关系,这样做是否有任何价值.
IE。如果您知道一个角色中永远不会有多个用户,这是否会使角色变得多余,而您最好直接向用户应用权限。
我有一个 SQL Server 2008 数据库,带有一个 VARCHAR(MAX) FILESTREAM 列。我可以使用以下语法将记录加载到其中:
`INSERT INTO DocumentRepository(DocumentExtension, DocumentName, Document)
SELECT
'doc' AS DocumentExtension
, 'Hamlet.doc' AS DocumentName
, * FROM OPENROWSET(BULK 'D:\Docs\Hamlet.doc', SINGLE_BLOB)
AS Document;`
Run Code Online (Sandbox Code Playgroud)
这很好地加载了我的 Word 文档。我想知道的是如何使用 SQL Server 提供的工具将数据提取回磁盘。可能是 T-SQL、bcp 等,并不在乎我只想知道一种无需编写 .NET 应用程序就可以做到这一点的方法。
我已经尝试过 bcp,使用 -c、-n、-N 和 -w 开关,它会提取文档,但格式不正确。当我在 Word 中打开它时,开头有很多二进制乱码,而文本在那里时,所有格式都消失了。
谢谢!
我们需要在内部实现一个新的 MS-SQL/IIS 服务器,为 Intranet 页面提供服务。目前我们平均每秒看到 22 次点击,但每个请求都非常小。
您推荐的服务器配置是什么?
a) 具有两个应用程序的单个服务器
b) 两台物理服务器,每个应用程序一台
c) 两台 VMware 服务器,每个应用程序一台
d) 其他
另外,此时您会选择哪个版本的 Windows 和 MS-SQL,为什么?