视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
[SQLServer]非域环境下,配置数据库镜像时的1418错误处理.
2020-11-09 07:29:05 责编:小采
文档


在非域环境下,配置SQL Server 2008 数据库镜像服务的时候,在最后一步(即下图中,点击开始镜像按钮之后),遇到报错1418错误, 1418: 服务器网络地址 tcp://xiaoxu:5022 无法访问或不存在。请检查网络地址名称,并检查本地和远程端点的端口是否正常运行。

在非域环境下,配置SQL Server 2008 数据库镜像服务的时候,在最后一步(即下图中,点击"开始镜像"按钮之后),遇到报错1418错误,

1418: 服务器网络地址 "tcp://xiaoxu:5022" 无法访问或不存在。请检查网络地址名称,并检查本地和远程端点的端口是否正常运行。

在“镜像服务器”的日志中有如下错误:

Database Mirroring login attempt failed with error: 'Connection handshake failed. An OS call failed: (8009030c) 0x8009030c(登录没有成功). State 67.'. [CLIENT: 192.168.1.8]

在试着两台机器上,修改hosts文件,修改SQL Server启动账户为同一账户密码,互相telnet 1433和5022端口都通(在windows防火墙把这两个端口添加到“例外”), 互相“ping 主机名”也是通的. 然后删除endpoint,再重新配置镜像,仍然报同样的错误。

解决方法为:配置两台机器上,启动sql server为同一名字账户,且密码要相同;重启SQL Server服务; 然后在两机器上,都删除端点(drop endpoint ...),再重启配置。

用T-SQL的方式配置镜像,参见:http://msdn.microsoft.com/en-us/library/ms179306.aspx

图形界面配置,可参见:非域环境下SqlServer2005镜像安装配置步骤

另外,“高性能模式(异步)”不支持手动“故障转移”,“高安全(同步)”支持手动“故障转移”。两种方式可以通过在主体服务器上执行如下T-SQL实现修改:

ALTER DATABASE testdb SET PARTNER SAFETY { FULL | OFF }

“高安全(同步)”模式,是指主体服务器提交了一个事务之后,将事务日志发给镜像服务器,同时在一个队列中等待镜像的响应,而不是在镜像服务器响应之后,主体服务器才提交事务。 (即就算镜像服务器挂了, 主体服务器也照常运行)

下载本文
显示全文
专题