还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)

时间:2022-11-25 20:46:05

如何将数据库还原至任意位置

1、执行

restore filelistonly FROM disk='E:\ChinaValue_db_200612250200.BAK'

获得当前备份文件的逻辑名

2、使用windows账户或者sa登陆执行以下SQL语句:


    
    
    
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)restore DATABASE [ ChinaValue ]
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
FROM disk = ' E:\ChinaValue_db_200612250200.BAK '
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
WITH
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
file = 1 ,
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)move
' ChinaValueTemp ' TO ' F:\Server\SqlData\MSSQL\Data\ChinaValueTemp_Data.MDF ' ,
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)move
' ChinaValueTemp_Log ' TO ' F:\Server\SqlData\MSSQL\Data\ChinaValueTemp_Log.LDF '
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
restore DATABASE [ 还原目的数据库 ]
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
FROM disk = ' E:\ChinaValue_db_200612250200.BAK ' -- 备份文件的路径
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
WITH
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
file = 1 , -- 文件的编号
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
move ' ChinaValueTemp ' TO ' F:\Server\SqlData\MSSQL\Data\ChinaValueTemp_Data.MDF ' , -- 数据库逻辑名 to 还原到的物理文件名
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
move ' ChinaValueTemp_Log ' TO ' F:\Server\SqlData\MSSQL\Data\ChinaValueTemp_Log.LDF ' -- 日志逻辑名 to 还原到的物理文件名
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)

还原数据库后,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法

  
  
  
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)-- 首先创建存储过程
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
CREATE proc p_validatelogin
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
@dbname sysname, -- 孤立用户所在的数据库名
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
@loginame sysname -- 孤立用户名
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
AS
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
IF db_id ( @dbname ) IS NULL
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
begin
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
print ' 无此数据库 '
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
RETURN
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
end
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
declare @s nvarchar ( 4000 ), @sid BINARY ( 16 )
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
IF EXISTS ( SELECT * FROM master..sysxlogins WHERE name = @loginame )
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
begin -- 如果已经有该登录,则直接修改系统表
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
exec sp_configure ' allow updates ' , 1 reconfigure WITH override
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
SELECT @sid = sid FROM master..syslogins WHERE name = @loginame
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
SET @s = ' update [ ' + REPLACE ( @dbname , ' ] ' , ' ]] ' )
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
+ ' ]..sysusers set sid=@sid where name=@loginame and islogin=1 '
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
exec sp_executesql @s
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转),N
' @sid binary(16),@loginame sysname '
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转),
@sid , @loginame
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
exec sp_configure ' allow updates ' , 0 reconfigure WITH override
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
end
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
else
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
begin -- 如果没有该登录,则创建登录
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
SET @s = ' SELECT @sid=sid FROM [ ' + REPLACE ( @dbname , ' ] ' , ' ]] ' )
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
+ ' ]..sysusers WHERE islogin=1 and name=@loginame '
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
exec sp_executesql @s
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转),N
' @sid binary(16) out,@loginame sysname '
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转),
@sid out, @loginame
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
exec sp_addlogin @loginame = @loginame , @sid = @sid
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
end
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
go
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
-- 执行存储过程
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
exec p_validatelogin ' ChinaValueBbs ' , ' chinavaluebbs '
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
go
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
-- 执行重新配置
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)
RECONFIGURE
还原数据库相关,孤立用户无法删除,又无法与新建的同名登陆挂钩的解决办法(转)