在使用SQL Server数据库中,有时在复制时会出现错误,下面就为你分类介绍SQL Server数据库复制错误的原因及解决方法,希望对您学习SQL Server数据库有所帮助。
错误 | 消息 |
---|---|
MSSQL_ENG002601 |
不能在具有唯一索引 ‘%.*ls’ 的对象 ‘%.*ls’ 中插入重复键的行。 |
MSSQL_ENG002627 |
违反了 %ls 约束 ‘%.*ls’。不能在对象 ‘%.*ls’ 中插入重复键。 |
MSSQL_ENG003165 |
数据库 ‘%ls’ 已还原,但在还原/删除复制时出错。该数据库仍保留为离线状态。请参阅 SQL Server 联机丛书中的主题 MSSQL_ENG003165。 |
MSSQL_ENG003724 |
无法对 %S_MSG ‘%.*ls’ 执行 %S_MSG,因为它正用于复制。 |
MSSQL_ENG004929 |
无法更改 %S_MSG ‘%.*ls’,因为正在为复制而发布它。 |
MSSQL_ENG007395。请参阅对 Oracle 发布 服务器 进行故障排除。 |
无法启动链接服务器“%ls”的 ole DB 访问接口“%ls”的嵌套事务。由于 XACT_ABORT 选项已设置为 OFF,因此必须使用嵌套事务。 |
MSSQL_ENG014005 |
无法删除发布。该发布已有订阅。 |
MSSQL_ENG014010 |
未将服务器“%s”定义为订阅服务器。 |
MSSQL_ENG014114 |
未将 ‘%s’ 配置为分发服务器。 |
MSSQL_ENG014117 |
未将 ‘%s’ 配置为分发数据库。 |
MSSQL_ENG014120 |
无法删除分发数据库 ‘%s’。此分发服务器数据库与发布服务器相关联。 |
![]() MSSQL_ENG014121 |
无法删除分发服务器 ‘%s’。此分发服务器与分发数据库相关联。 |
MSSQL_ENG014144 |
无法删除订阅服务器 ‘%s’。在发布数据库“%s”中已有此服务器的订阅。 |
MSSQL_ENG014150 |
复制 – %s:代理 %s 成功。%s |
MSSQL_ENG014151 |
复制 – %s: 代理 %s 失败。%s |
MSSQL_ENG014152 |
复制 – %s:代理 %s 计划重试。%s |
MSSQL_ENG014157 |
由发布 ‘%s’ 的订阅服务器 ‘%s’ 创建的订阅已过期,且已停止。 |
MSSQL_ENG014160 |
已设置发布 [%s] 的阈值 [%s:%s]。此发布的一个或多个订阅已过期。 |
MSSQL_ENG014161 |
已设置发布 [%s] 的阈值 [%s:%s]。请确保日志读取器和分发代理正在运行并且可以满足滞后时间要求。 |
MSSQL_ENG014162 |
已设置发布 [%s] 的阈值 [%s:%s]。请确保合并代理正在运行且符合要求。 |
MSSQL_ENG014163 |
已设置发布 [%s] 的阈值 [%s:%s]。请确保合并代理正在运行且符合要求。 |
MSSQL_ENG014164 |
已设置发布 [%s] 的阈值 [%s:%s]。请确保合并代理正在运行且符合要求。 |
MSSQL_ENG014165 |
已设置发布 [%s] 的阈值 [%s:%s]。请确保合并代理正在运行且符合要求。 |
MSSQL_ENG018456 |
用户 ‘%.*ls’.%.*ls 登录失败 |
MSSQL_ENG018752 |
一 次只能有一个日志读取器代理或日志相关过程(sp_repldone、sp_replcmds 和 sp_replshowcmds)连接到某个数据库。如果执行了一个日志相关过程,那么在启动日志读取器代理或者执行另一个日志相关过程之前,请删除执行 ***个过程时所用的连接,或者在该连接上执行 sp_replflush。 |
MSSQL_ENG020554 |
复制代理在 %ld 分钟内没有记录任何进度消息。这表明代理已停止响应或系统活动过多。请确保正在将记录复制到目标,并且与订阅服务器、发布服务器和分发服务器的连接仍然是活动的。 |
MSSQL_ENG020557 |
代理关闭。有关详细信息,请参阅作业 ‘%s’ 的 SQL Server 代理作业历史记录。 |
MSSQL_ENG020572 |
在验证失败之后,订阅服务器“%s”对发布“%s”中项目“%s”的订阅已被重新初始化。 |
MSSQL_ENG020574 |
订阅服务器“%s”对发布“%s”中项目“%s”的订阅未通过数据验证。 |
MSSQL_ENG020575 |
订阅服务器“%s”对发布“%s”中项目“%s”的订阅已通过数据验证。 |
MSSQL_ENG020596 |
只有 ‘%s’ 或 db_owner 的成员可以删除匿名代理。 |
MSSQL_ENG020598 |
应用复制的命令时在订阅服务器上找不到该行。 |
MSSQL_ENG021075 |
发布 ‘%s’ 的初始快照尚不可用。 |
MSSQL_ENG021076 |
项目 ‘%s’ 的初始快照尚不可用。 |
MSSQL_ENG021286 |
冲突表 ‘%s’ 不存在。 |
MSSQL_ENG021330 |
无法在复制工作目录下创建子目录。(%ls) |
MSSQL_ENG021331 |
无法将用户脚本文件复制到分发服务器。(%ls) |
MSSQL_ENG021385 |
快照无法处理发布 ‘%s’。可能是由于活动架构的更改操作或者是所添加的新项目所致。 |
MSSQL_ENG021617。请参阅对 Oracle 发布服务器进行故障排除。 |
无法运行 SQL*PLUS。请确保分发服务器上安装了***版本的 Oracle 客户端代码。 |
MSSQL_ENG021620。请参阅对 Oracle 发布服务器进行故障排除。 |
通过系统 Path 变量获得的 SQL*PLUS 版本不够新,无法支持 Oracle 发布。请确保分发服务器上安装了***版本的 Oracle 客户端代码。 |
MSSQL_ENG021624。请参阅对 Oracle 发布服务器进行故障排除。 |
在 分发服务器 ‘%s’ 上找不到已注册的 Oracle OLEDB 访问接口 OraOLEDB.Oracle。请确保分发服务器上安装并注册了***版本的 Oracle OLEDB 访问接口。有关其他信息,请参阅 SQL Server 联机丛书中“排除 Oracle 发布服务器故障”中的“SQL Server 错误 21624”。 |
MSSQL_ENG021626。请参阅对 Oracle 发布服务器进行故障排除。 |
无法使用 Oracle OLEDB 访问接口 OraOLEDB.Oracle 连接到 Oracle 数据库服务器 ‘%s’。 |
MSSQL_ENG021627。请参阅对 Oracle 发布服务器进行故障排除。 |
无法使用 Microsoft OLEDB 访问接口 MSDAORA 连接到 Oracle 数据库服务器 ‘%s’。 |
MSSQL_ENG021628。请参阅对 Oracle 发布服务器进行故障排除。 |
无法更新分发服务器 ‘%s’ 的注册表,以允许 Oracle OLEDB 访问接口 OraOLEDB.Oracle 与 SQL Server 一起在进程中运行。请确保当前登录名有权修改 SQL Server 拥有的注册表项。 |
MSSQL_ENG021629。请参阅对 Oracle 发布服务器进行故障排除。 |
指示 Oracle 的 Oracle OLEDB 访问接口 OraOLEDB.Oracle 已注册的 CLSID 注册表项不在分发服务器上。请确保分发服务器上安装并注册了 Oracle OLEDB 访问接口。 |
MSSQL_ENG021642。请参阅对 Oracle 发布服务器进行故障排除。 |
异类发布服务器需要链接服务器。已有一个名为 ‘%s’ 的链接服务器。请删除链接服务器或另选一个发布服务器名称。 |
MSSQL_ENG021663。请参阅对 Oracle 发布服务器进行故障排除。 |
找不到源表 [%s].[%s] 的有效主键。 |
MSSQL_ENG021684。请参阅对 Oracle 发布服务器进行故障排除。 |
“Oracle 发布服务器 “%s” 的复制管理用户权限不足。有关所需权限,请参阅脚本 /MSSQL/Install/oracleadmin.sql。” |
MSSQL_ENG021797 |
‘%s’ 必须是有效的 Windows 登录名,且格式为:’计算机\登录名’ 或 ‘域\登录名’。请参阅 ‘%s’ 的文档。 |
MSSQL_ENG021798 |
在继续操作之前,必须通过“%s”添加“%s”代理作业。请参阅 ‘%s’ 的文档。 |
MSSQL_ENG024070 |
客户端没有所需的特权。 |
MSSQL_REPL020011 |
进程无法在“%2”上执行“%1”。 |
MSSQL_REPL027056 |
合并进程无法更改“%1”上的生成历史记录。进行故障排除时,请使用详细的历史日志记录来重新启动同步,并指定要写入的输出文件。 |
MSSQL_REPL027183 |
合并进程未能使用参数化的行筛选器来枚举项目中的更改。如果此操作仍失败,请增大该进程的查询超时值,缩短发布的保持期,并改进对已发布表的索引。 |
【编辑推荐】远程连接sql server服务器的方法
SQL Server中不同用户的权限
测试SQL语句执行时间的方法
sql server端口号配置的方法详解
SQL中CONVERT函数详解
数据库连接失败,如何重新进行正确配置?
方法如下:检查服务是否启动1、在sqlserver服务器中, 打开SQLServer服务管理器。 单击【开始】-【程序】-【Microsoft SQLServer】-【服务管理器】菜单命令。 2、打开【SQLServer服务管理器】,单击【服务器】,选择要检查的SQLServer的实例名【abc10-1DA235E90】,单击【服务】,选择【SQLServer】选项,如果此时暂停或者停止按钮可用,说明服务已经启动;否则则没有启动,启动即可。 3、最好在【SQLServer服务管理器】中将选择随系统启动而启动服务。 选择【当启动OS时自动启动服务】选择框,完成让MSSQLSERVER服务随操作系统启动而自动启动。 4、再次打开SQL Server 数据库,选择连接数据库服务器实例,可以正常连接打开数据库了。 5、SQL Server数据库能正常连接得保证网络通畅,操作过程中还需要进行网络测试,可以通过PING命令实现。 如下图所示,表示网络通畅。
SQL数据库如何自动备份和恢复?
一、备份数据库1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server2、SQL Server组-->双击打开你的服务器-->双击打开数据库目录3、选择你的数据库名称(如论坛数据库Forum)-->然后点上面菜单中的工具-->选择备份数据库4、备份选项选择完全备份,目的中的备份到如果原来有路径和名称则选中名称点删除,然后点添加,如果原来没有路径和名称则直接选择添加,接着指定路径和文件名,指定后点确定返回备份窗口,接着点确定进行备份二、还原数据库1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server2、SQL Server组-->双击打开你的服务器-->点图标栏的新建数据库图标,新建数据库的名字自行取3、点击新建好的数据库名称-->然后点上面菜单中的工具-->选择恢复数据库4、在弹出来的窗口中的还原选项中选择从设备-->点选择设备-->点添加-->然后选择你的备份文件名-->添加后点确定返回,这时候设备栏应该出现您刚才选择的数据库备份文件名,备份号默认为1(如果您对同一个文件做过多次备份,可以点击备份号旁边的查看内容,在复选框中选择最新的一次备份后点确定)-->然后点击上方常规旁边的选项按钮5、在出现的窗口中选择在现有数据库上强制还原,以及在恢复完成状态中选择使数据库可以继续运行但无法还原其它事务日志的选项。在窗口的中间部位的将数据库文件还原为这里要按照你SQL的安装进行设置(也可以指定自己的目录),逻辑文件名不需要改动,移至物理文件名要根据你所恢复的机器情况做改动,如您的SQL数据库装在D:\Program FILEs\Microsoft SQL Server\MSSQL\Data,那么就按照您恢复机器的目录进行相关改动改动,并且最后的文件名最好改成您当前的数据库名(如原来是,现在的数据库是zw0002,就改成),日志和数据文件都要按照这样的方式做相关的改动(日志的文件名是结尾的),这里的恢复目录您可以自由设置,前提是该目录必须存在(如您可以指定d:\sqldata\或者d:\sqldata\),否则恢复将报错6、修改完成后,点击下面的确定进行恢复,这时会出现一个进度条,提示恢复的进度,恢复完成后系统会自动提示成功,如中间提示报错,请记录下相关的错误内容并询问对SQL操作比较熟悉的人员,一般的错误无非是目录错误或者文件名重复或者文件名错误或者空间不够或者数据库正在使用中的错误,数据库正在使用的错误您可以尝试关闭所有关于SQL窗口然后重新打开进行恢复操作,如果还提示正在使用的错误可以将SQL服务停止然后重起看看,至于上述其它的错误一般都能按照错误内容做相应改动后即可恢复
怎样快速检测与sql数据库是否能正常连接
1、右键计算机,点击管2113理。 2、如图找到5261SQL Server配置管理器。 3、如图找到SQL Server网络配置下的MSSQLSERVER,然4102后把TCP/IP状态1653改为启用。 4、打开SQL server数据库,按照图内进行操作,然后点击连接,那么就可以连接到别人(容或自己)的数据库
发表评论