SqlServer2008镜像证书过期处理
发布时间:2020-12-12 14:23:27 所属栏目:MsSql教程 来源:网络整理
导读:今天在例行sql server的巡检时发现,主机上的状态都成了(主体,已断开连接),这说明镜像出了问题了。马上登陆服务器检查,结果如下: 1.telnet 镜像服务器IP port,是正常的 2.主机和镜像的数据库都是正常的,这样子看来是两台主机的证书出了问题了。 3.查看
今天在例行sql server的巡检时发现,主机上的状态都成了(主体,已断开连接),这说明镜像出了问题了。马上登陆服务器检查,结果如下:
1.telnet 镜像服务器IP port,是正常的 2.主机和镜像的数据库都是正常的,这样子看来是两台主机的证书出了问题了。 3.查看主机和镜像DB的日志,终于在镜像端有收获, Database Mirroring login attempt failed with error: 'Connection handshake failed. The certificate used by this endpoint was not found: Certificate expired. Use DBCC CHECKDB in master database to verify the metadata integrity of the endpoints. State 85.'. [CLIENT: xxx.xxx.xxx.xxx]标注了颜色的字体说明,证书失效了。 因为主机和镜像是一起做的,所以证书都失效了 4.查看证书 select name,start_date,expiry_date from sys.certificates where name not like '##%';发现其失效时间已经过去2个多礼拜了,但是日志错误今天才爆出,预计是镜像没有断开之前DB是允许一段时间用户去调整证书的,直到镜像断开 解决方案: 需要对证书进行重新生成更新,重做对生产并不会产生影响,但为了尽避免高峰操作,选择晚上处理。 系统里总共有4个DB涉及镜像,重做证书再切换发现切不过去,索性重新做了一遍镜像。 ?1.删除镜像 --删除镜像过程 --删除端点 select * from sys.endpoints; drop endpoint Endpoint_Mirroring; --删除证书 select * from sys.certificates drop certificate HOST_A_cert; drop certificate HOST_B_cert; --删除master key select * from sys.symmetric_keys ; DROP MASTER KEY; select * from sys.syslogins ; select * from sysusers; --删除登陆和用户 DROP LOGIN HOST_A_login drop user HOST_A_user --取消镜像 alter database eol_xcsh set partner off;2.生成镜像 参考:http://my.oschina.net/Kenyon/blog/53469 注意:重新生成证书的时候最好指定失效日期,并设大一点,不然默认是一年的,时间到了再去重设就麻烦了。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读