记一次数据库迁移遇到问题

接通知要给客户做演示,要临时搭软件环境。系统是子公司搞出来的。部署后十几个库,几十个站点。到现在还没谁能在一天搭建好的,那个复杂那个狗血,想想都冒汗。

看下大小,12+G!备份再还原懒得搞,所以直接停了服务器。开始压缩文件,又解压,漫长的等待。

用sp_attach_db命令先写好脚本,跑跑秒秒钟的事,数据库部署OK。然后就是部署站点,几十个那叫一个痛苦。
听说可以导出服务器的再导入就好了。可IIS中没看到有这功能,可能是系统或iis版本问题(win7 x64 iis6.1)

一切部署好,接着就是一堆问题出来了。各种问题排查—— 关防火墙,混合模式登录,允许远程连接, IIS应用程序池 fw版本、管道模式、标识、启用32位应用程序

到此常见的问题原因排查得差不多了。登录失败的问题还是存在。

要说明的是,这些库不是SA创建的,是自己创建的特定用户创建。

错误只是简单的登录失败,也没详细原因,只能找搜索引擎了,一个个方法的试。

问题出现的原因是在不同的机器还原或附加数据库后,该数据据库的用户只是孤立用户,只有用户名而没有登录名,
在sqlserver组的安全性里登录里会看不到该用户的名字。

网上给出的解决办法是:使用sp_change_users_login来修复

--列出当前数据库的孤立用户
exec sp_change_users_login 'REPORT'

--可以自动将用户名所对应的同名登录添加到syslogins中
exec sp_change_users_login 'AUTO_FIX','用户名'

--将用户名映射为指定的登录名。
exec sp_change_users_login 'UPDATE_ONE','用户名','登录名'

 

具体步骤:

1.创建同名登录名

2.选择登录失败库,执行脚本一二就可以了。

转载于:https://www.cnblogs.com/lonny/p/sqlserver_login_fail.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值