问题标签 [copy-database-wizard]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
776 浏览

sql-server - 在两个 SQL 2008R2 服务器之间复制数据库向导出现问题

我正在尝试使用复制数据库向导从我的实时服务器(共享主机)复制到我的本地计算机。实时服务器和本地服务器都是 SQL 2008 R2。

在从实时 SQL 2000 服务器复制到本地 2008 R2 时,我已经使用 CDW 多年并取得了完美的成功。但是现在我已经将我的实时数据库迁移到 SQL 2008 R2,CDW 给了我这个错误:

无法读取元数据,可能是由于访问权限不足。

我了解到,甚至在您完成 CDW 设置之前就可以预测到此错误:在 CDW 要求您提供所需目标数据库名称的页面上,应该使用它们的名称填充 .mdf 和 .ldf 文件-be 和大小(例如 MB、GB)。

但在我的情况下,这些文件名和大小没有显示(向导中的区域只是空白),当然,当我尝试执行包时,它会给我错误。


经过大量研究,我认为此错误的原因是由于 CDW 要求“您必须是源服务器和目标服务器上 sysadmin 固定服务器角色的成员”。

在我的本地服务器上,我的 Windows 身份验证登录被列为 sysadmin 服务器角色的角色成员。但是,在我的实时服务器上(请记住,它是一个具有 250 多个数据库的共享 SQL 服务器)列出的唯一角色成员是 [sa]。

我是否认为满足此要求的唯一方法是将我的特定 SQL 用户添加到 live/source Server > Security > Server Roles > sysadmin 角色?我猜这永远不会在共享服务器上完成,对吧?还是有其他方法可以通过弄乱特定的数据库属性/用户/角色来使其工作?

我无法解释为什么 CDW 在实时 SQL 2000 服务器而不是 2008 R2 上工作。我希望这只是在实时数据库上没有正确设置某些东西,但可能是由于多年来对 SQL 安全性所做的更改。

万一这很重要,我必须使用 SMO 方法而不是分离/附加,因为它是一个我不想删除的实时数据库。从历史上看,SQL 2000 的 CDW 使用 SMO 方法只需 3 分钟,因此速度无论如何都不是问题。


这是我对解决方案的偏好:

  1. 找到一种让 CDW 工作的方法,很可能是通过更改实时服务器上的某些内容。这可能吗?那会是什么?

如果失败了,那么...

  1. 使用 CDW 创建包的想法如何,然后进入 BIDS 并操作包中的某些内容以规避系统管理员角色要求。(它真的需要元数据吗?除了实际的数据表之外我不需要任何东西。)这可能吗?

    2016 年 6 月 14 日更新:在 BIDS 中编辑 CDW 包不起作用,因为它似乎只是使用 .mdf 和 .ldf 文件,当然我无法在共享服务器上访问这些文件。我认为另一种方法是使用导入/导出向导创建一个包,然后在 BIDS 中进行编辑。烦人的部分是,如果无法访问元数据,导入/导出向导似乎不知道外键,因此不知道处理表的顺序。

如果失败了,那么...

  1. 有没有其他方法可以轻松地将每日副本从我的实时服务器自动复制到本地机器?我喜欢 CDW 的原因是因为它使用起来超级简单(当它工作时),它可以安排为每天作为 SQL 代理作业运行,并且我不需要手动工作。如果不能使 CDW 工作,是否有“下一个最好的事情”?

你会认为所有网站的一个非常常见的场景是“我如何每天自动将我的实时数据库副本放到我的本地 SQL 服务器上”?但也许我是那个奇怪的人!

0 投票
2 回答
678 浏览

sql-server - SQL Server 2016 复制数据库向导错误

我正在尝试将 SQL Server 数据库从 sql server 2016 开发版复制到 SQL Server 2014 开发版。

它失败并显示以下日志:

请问这是产品的问题,还是我做错了什么?

0 投票
1 回答
360 浏览

sql - 更改复制数据库向导的默认目标文件夹

是否有可能更改 SQL Server Management Studio 17 中复制数据库向导的默认目标文件夹?

通过数据库属性更改数据库默认位置不起作用。

向导

这是为数据库服务器配置的默认路径: 默认路径

0 投票
1 回答
859 浏览

sql-server - MSSQL 2016 包执行失败 | SSIS 错误:索引超出范围

我已经使用 SMO 使用复制数据库向导进行了复制作业(让数据库联机)。数据库将被复制到同一个 SQL 实例。这失败了

包执行失败。步骤失败。

如果我执行它创建的 SSIS 包,则会发生以下情况:

事件名称:OnError 消息:索引超出范围。必须是非负数且小于集合的大小。参数名称:索引 StackTrace:在 Microsoft.SqlServer.Management.Smo.PermissionWorker.GetPermissionSetBase(PermissionEnumKind kind, Int32 i) 在 Microsoft.SqlServer.Management.Smo.SqlSmoObject 的 System.Collections.BitArray.Set(Int32 index, Boolean value) .GetPermissionsFromCache(PermissionEnumKind kind) 在 Microsoft.SqlServer.Management.Smo.Database.AddScriptPermission(StringCollection query, ScriptingPreferences sp) 在 Microsoft.SqlServer.Management.Smo.SqlSmoObject.AddScriptPermissions(StringCollection sc, PermissionEnumKind kind, ScriptingPreferences sp)。 SqlServer.Management.Smo.ScriptMaker.ScriptCreateSpecialUrn(Urn urn,ScriptingPreferences sp,ObjectScriptingType&1 urns) at Microsoft.SqlServer.Management.Smo.ScriptMaker.ScriptUrns(List1 orderedUrns) 在 Microsoft.SqlServer.Management.Smo.ScriptMaker.DiscoverOrderScript(IEnumerable 1 urns) at Microsoft.SqlServer.Management.Smo.ScriptMaker.ScriptWorker(List1 urns, ISmoS​​criptWriter writer) 在 Microsoft.SqlServer.Management.Smo.ScriptMaker.Script(UrnCollection list, ISmoS​​criptWriter writer) 在 Microsoft.SqlServer.Management.Smo .DataTransferBase.GetScriptLoadedTransferWriter() 在 Microsoft.SqlServer.Management.Smo.Transfer.TransferData() 在 Microsoft.SqlServer.Dts.Tasks.TransferObjectsTask.TransferObjectsTask.TransferDatabasesUsingSMOTransfer()

我也尝试过从 SQLCMD 开始工作。结果相同。我也尝试过分离/附加方法。但是,这很好,这不是一个理想的选择,因为它使数据库在传输期间处于脱机状态。

我对服务器(Windows)和实例也有管理员权限。在 SSMS 之外执行包(使用包执行实用程序的 .dtsx 文件)会产生相同的错误。我创建了一个空数据库,其中只有一个表。发生同样的错误。

请帮忙..

操作系统:Windows Server 2012 MSSQL:2016 SP1

0 投票
2 回答
102 浏览

sql-server - 需要我的 SQL Server 数据库的 10% 副本用于开发工作

我想在生产数据库中获取 10% 的数据副本,保持其完整性并将其还原到新数据库中。

是否有允许在 SQL Server 中完成此操作的方法?我已经研究过创建一个导出数据库模式和数据的 SSIS,然后放置一个行采样任务来减少流入新数据库的数据量,但我想知道是否有更好的方法来做到这一点?

0 投票
0 回答
802 浏览

sql-server - SQL Server 复制数据库向导错误:对象引用未设置为对象的实例

尝试使用复制数据库向导复制数据库,使用 drop/re-attach 方法并收到此错误。

“对象引用未设置为对象的实例”错误。

OnInformation,SQLSERVER2017,NT Service\SQLSERVERAGENT,CDW_AVP_SQLSERVER2017_2,{44AD0789-418F-4C5E-BE71-587407A7F9A2},{CA7C84F2-2DD7-4878-9407-85A2E05C093C},2019 年 3 月 22 日下午 9:11: /2019 9:11:46 PM,0,0x,将文件 \AVP\C$_DB\MyDB_meta.mdf 复制到 C:\DB\DATA\MyDB_meta.mdf 覆盖设置为 False

OnError,SQLSERVER2017,NT Service\SQLSERVERAGENT,AVP_SQLSERVER2017_Transfer Objects Task,{309A0DE4-3854-43EF-A7B7-9826AC31C363},{CA7C84F2-2DD7-4878-9407-85A2E05C093C},2019 年 3 月 22 日 9:11:46 /22/2019 9:11:46 PM,0,0x,对象引用未设置为对象的实例。

关于如何解决这个问题的任何想法?

0 投票
1 回答
139 浏览

azure-sql-database - 跨订阅复制 Azure 数据库

我正在尝试将现有 AzureSQL(单例)数据库从 PRODUCTION 订阅复制到不同订阅中的 NON-PRODUCTION 数据库中。我需要每晚重复这个过程,以便我们的生产支持环境(非生产环境)拥有前一天晚上生产的最新副本。由于在 AzureSQL 中无法覆盖数据库,因此我想将 PROD 服务器中的“DBProd”作为“DBProd2”复制到我的非 Prod 服务器(在不同的订阅中),然后从目标服务器中删除现有的“DBProd”并将“DBProd2”重命名为“DBProd”。

我已经通过这个网站搜索找到答案,我找到的最接近的是下面的这个链接......

Windows Azure SQL 数据库上的数据库交叉订阅复制

在该链接中,用户@PaulH 提交了以下答案...

“这适用于我的订阅,无需匹配 SQL Server 帐户。我是源服务器和目标服务器上的服务器活动目录管理组的成员,并使用 AD 身份验证与 MFA 进行连接。– paulH 3 月 25 日 11:22”

但是,我无法弄清楚它是如何实现的细节。我的偏好是使用 power shell 脚本来完成这项工作。如果你们中的任何人以前这样做过,我将不胜感激一段示例代码,或任何实现这一点的指针。

我的另一个选择是走 BACPAC 路线(导出和导入),但我只想在无法跨订阅复制数据库的情况下诉诸于此。

提前感谢!

赫利俄斯

通过链接... Windows Azure SQL 数据库上数据库的交叉订阅复制

0 投票
1 回答
357 浏览

sql-server - SQL Server 复制数据库向导 -w/o- 登录提示错误 (SMO) 用户、组或角色“x”已存在于当前数据库中

我想将数据库从服务器 a(2008)复制到 b(2012)。通常我只是做一个备份并在目标上恢复它。

拥有功能 - 复制数据库向导 - 将使我的任务更容易一些,因为我必须移动相当多的数据库。我正在使用SMO 方法,遇到了几个可以解决的问题,但现在我遇到了以下错误:

在向导中,我选择不复制登录对象或其他任何内容。所以据我了解,它应该做一个数据库的“普通”副本,而不是别的。

如果您对为什么会发生此错误有任何建议,我将不胜感激!

0 投票
0 回答
266 浏览

mongodb - 同步数据时 Azure Datafactory 中的 MongoDb 连接超时

我在 azure datafactory 中为连接 mongodb 创建了一个数据集。

在配置时,我添加了 MongoDb 连接字符串,它显示连接成功。如图像视图所示

之后,我用正确的配置配置了整个管道。

现在我在运行该管道时遇到问题。

由于 Mongodb 连接无效,我收到以下错误。

对目标Copydataset1的操作失败:“源”端发生故障。ErrorCode=UserErrorMongoDbConnectionTimeout,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=与 MongoDB 服务器的连接超时。这通常是由无效的连接字符串引起的。,Source=Microsoft.DataTransfer.Runtime.MongoDbV2Connector,''Type=System.TimeoutException,Message=使用 CompositeServerSelector 选择服务器 30000 毫秒后发生超时{ Selectors = ReadPreferenceServerSelector{ ReadPreference = { Mode :主要 } },LatencyLimitingServerSelector{ AllowedLatencyRange = 00:00:00.0150000 } }。集群状态的客户端视图是 { ClusterId : "1", ConnectionMode : "Automatic", Type : "Unknown", State : "Disconnected", Servers : [{ ServerId:192.0.0.1:27017 “}”,端点:“ 192.0.0.1:27017 ”,状态:“断开连接”,类型:“未知”}] }.,Source=MongoDB.Driver.Core,'

注意:此 ip 192.0.0.1:27017 仅作为示例。

0 投票
1 回答
36 浏览

azure-data-factory - Azure 数据工厂声明可在管道上重复使用的“复制数据”

我制作了一个复制数据对象,将有关管道的进程信息记录到 SQL 表中。此复制数据活动在使用中是通用的,可以应用于我的所有管道......但是我如何将这个特定的复制数据声明为我所有管道的可重用对象?