社区
应用实例
帖子详情
关于SQL数据库备份和恢复问题,请教高手指点
rzh123
2003-07-28 04:25:10
我在一台服务器上建立了一个数据库并且用了一段时间,现在把它备份下来,然后在另一台机器上也建立一个同样的数据库并且还原备份却发现还原后数据库的登陆用户没有设置上,只有用户名没有登陆用户名。在安全性的登陆用户里设置后,提示此用户已经存在,可是在数据库的用户中却没有登陆用户名只有用户名,请问有什么方法可以解决此问题或者有什么好的备份还原数据库的方法?
请问有其他的备份还原数据库的方法吗?在此过程中保证数据库的结构和数据已经试图和存储过程都正确。
...全文
68
5
打赏
收藏
关于SQL数据库备份和恢复问题,请教高手指点
我在一台服务器上建立了一个数据库并且用了一段时间,现在把它备份下来,然后在另一台机器上也建立一个同样的数据库并且还原备份却发现还原后数据库的登陆用户没有设置上,只有用户名没有登陆用户名。在安全性的登陆用户里设置后,提示此用户已经存在,可是在数据库的用户中却没有登陆用户名只有用户名,请问有什么方法可以解决此问题或者有什么好的备份还原数据库的方法? 请问有其他的备份还原数据库的方法吗?在此过程中保证数据库的结构和数据已经试图和存储过程都正确。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wwooqqoo
2003-08-01
打赏
举报
回复
就是孤立用户的问题,我是这样解决的:先设置服务器“允许对系统目录直接进行修改”,然后delete from sysusers where name = 'test'
USE testDB
--grant access to database eview to user scm
exec sp_grantdbaccess 'test'
--make user scm the owner of database eview
exec sp_addrolemember 'db_owner','test'
记得给我分哦!
CrazyFor
2003-07-28
打赏
举报
回复
Transact-SQL 参考
sp_changedbowner
更改当前数据库的所有者。
语法
sp_changedbowner [ @loginame = ] 'login'
[ , [ @map = ] remap_alias_flag ]
参数
[@loginame =] 'login'
当前数据库新所有者的登录 ID。login 的数据类型为 sysname,没有默认值。login 必须是已存在的 Microsoft® SQL Server™ 登录或 Microsoft Windows NT® 用户。如果 login 通过当前数据库内的现有别名或用户安全帐户已拥有访问该数据库的权限,则不能成为该数据库的所有者。为了避免这种情况,应先除去当前数据库中的别名或用户。
[@map =] remap_alias_flag
值为 true 或 false,表示旧数据库所有者 (dbo) 的现有别名是映射到当前数据库的新所有者还是要除去。remap_alias_flag 的数据类型为 varchar(5),默认值为 NULL,表示旧 dbo 的任何现有别名均映射到当前数据库的新所有者。false 表示除去旧数据库所有者的现有别名。
返回代码值
0(成功)或 1(失败)
注释
执行 sp_changedbowner 之后,新所有者称为数据库中的 dbo 用户。dbo 拥有执行数据库中所有活动的暗示性权限。
不能更改 master、model 或 tempdb 系统数据库的所有者。
若要显示有效 login 值的列表,请执行 sp_helplogins 存储过程。
执行只有 login 参数的 sp_changedbowner 会将数据库所有权改为 login,并将先前别名为 dbo 的用户别名映射到新数据库所有者。
权限
只有 sysadmin 固定服务器角色成员的成员或当前数据库的所有者才能执行 sp_changedbowner。
示例
下面的示例使用户 Albert 成为当前数据库的所有者,并将旧数据库所有者的现有别名映射到 Albert。
EXEC sp_changedbowner 'Albert'
请参见
CREATE DATABASE
sp_dropalias
sp_dropuser
sp_helpdb
sp_helplogins
系统存储过程
©1988-2000 Microsoft Corporation。保留所有权利。
pengdali
2003-07-28
打赏
举报
回复
把数据库备份还原到另一个服务器时,可能会遇到孤立用户的问题。下面的方案显示并解决了这个问题:
通过执行 sp_addlogin,把登录 janetl 改名为 dbo。
sp_addlogin 'janetl', 'dbo'
备份数据库。在本例中,备份 Northwind。
BACKUP DATABASE Northwind
TO DISK = 'c:\mssql\backup\northwnd'
除去刚刚备份的数据库。
DROP DATABASE Northwind
除去登录。
sp_droplogin 'janetl'
还原备份的数据库。
RESTORE DATABASE Northwind
FROM DISK = 'c:\mssql\backup\northwnd'
select * from sysusers
janetl 登录不能访问 Northwind 数据库,除非允许 guest 登录。尽管 janetl 登录已经删除,它仍然(作为一个孤立行)显示在 sysusers 表中:
USE Northwind
SELECT *
FROM sysusers
WHERE name = 'janetl'
解决孤立用户问题
用 sp_addlogin 添加一个临时登录。为孤立用户指定安全标识符 (SID)(从 sysusers)。
sp_addlogin @loginame = 'nancyd',
@sid = 0x32C864A70427D211B4DD00104B9E8A00
用 sp_dropalias 除去属于别名 SID 的临时别名。
sp_dropalias 'nancyd'
用 sp_dropuser 除去原始用户(即现在的孤立用户)。
sp_dropuser 'janetl'
用 sp_dropuser 除去原始登录。
sp_droplogin 'nancyd'
rzh123
2003-07-28
打赏
举报
回复
用户名删不掉
friendliu
2003-07-28
打赏
举报
回复
把用户名删掉
重新建立。。
VBA从入门到精通(控件+类模块+ADO+
SQL
数据库)
VBA中比较高阶的课程,主要讲解关于各种事件的应用,各种控件的应用,如果使用类模块,如果在VBA用调用
SQL
语句去处理数据库中的数据等操作。学习完成本课后,你可以在Excel中开发各种小型应用系统。以下是课程主要...
通过
SQL
Server 2008数据库复制实现数据库同步备份
下载网站:www.SyncNavigator.CN客服QQ1793040-----------------------------...关于HKROnline SyncNavigator 注册机价格的
问题
HKROnline SyncNavigator 8.4.1 非破解版 注册机 授权激活教程 最近一直在研究数...
浅谈如何保障自建数据库的备份
恢复
机制
下载网站:www.SyncNavigator.CN客服QQ1793040-------------------------------------------...关于HKROnline SyncNavigator 注册机价格的
问题
HKROnline SyncNavigator 8.4.1 非破解版 注册机 授权激活教程 ...
sql
server 远程速度慢
分析
问题
查阅资料发现:ADSL连相当于两个公网IP(我的IP和数据库服务IP)连接,类似于局域网,所以能连接;但是,在此之前加了 怎样编程连接远程的
sql
server解决办法 怎样编程连接远程的
sql
se
SQL
Server 跨服务器同步或定时同步数据库
下载网站:www.SyncNavigator.CN客服QQ1793040-----------------------------------------...关于HKROnline SyncNavigator 注册机价格的
问题
HKROnline SyncNavigator 8.4.1 非破解版 注册机 授权激活教程 ...
应用实例
27,579
社区成员
68,558
社区内容
发帖
与我相关
我的任务
应用实例
MS-SQL Server 应用实例
复制链接
扫一扫
分享
社区描述
MS-SQL Server 应用实例
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章