将Sqlserver7.0的数据库文件在2000中创建一下,2000会自动升级。
Sp_attach_db 'databasename','\\XXX.mdf','\\xxx.ldf'
Sp_attach_db 'databasename','\\XXX.mdf','\\xxx.ldf'
解决方案 »
- 找出唯一的id
- sql触发器 新增记录 如果新增字段大于某个值,自动修改
- 存储过程的应用情况
- 求助:计算机名修改后,sql server 2005不能连接
- 请教:如何建这样的表:输入一个数组,数组的每个元素作为表的列名?
- 高难度查询,求解,99分!
- 求修改字段属性与长度的SQL语句
- 数据库的连接问题
- 在sql7.0中备份的数据库备份文件,能否直接用sql2000恢复
- 怎么样distinct 其中几个字段,而选择所有的字段? 我用了distinct 可是还是全部去来了。高人请帮忙啊!谢谢
- 为什么这个语句无法执行呢
- 请问store procedure 的owner能修该吗,对程序的运行有影响吗??
也可以在查询分析器里输入以下代码执行。
sp_attach_db @dbname='数据库名',@filename1=N'D:\MSSQL7\Data\数据库名.mdf',@filename2=N'D:\MSSQL7\Data\数据库名_log.ldf'
先备份数据库到文件
backup database db to disk='c:\db.bak'copy 文件至其他机器注意一下恢复时的源文件路径和恢复到的路径是否正确
RESTORE FILELISTONLY 命令可以帮助查看源文件路径
如
RESTORE FILELISTONLY
from disk='f:\tdmis.bak' 结果为
tdmis_Data e:\database\tdmis.mdf D PRIMARY 497221632 35184372080640
tdmis_Log e:\database\tdmis_log.ldf L NULL 1048576 35184372080640然后用
restore database tdmis
from disk='f:\tdmis.bak'
with NORECOVERY,
move 'tdmis_Data' to 'e:\database\tdmis.mdf',
move 'tdmis_Log' to 'e:\database\tdmis_log.ldf'
就可以了or1、打开ENTERPRISE MANAGER,展开到DATABASES。
2、在DATABASES上点右键,“所有任务”中选“RESTORY DATABASE”
3、在GENERAL标签页中选择“FROM DEVICE”,再点击“SELECT DEVICE”
4、在出现的窗口中点击“ADD”,再在窗口中选择“FILE NAME”,点击...按钮
5、选中您所创建的备份文件,即可成功。恢复:
右键数据库-->所有任务-->还原数据库-->写入你想要的新的数据库名字-->从设备-->选择设备-->添加-->选择你的文件-->确定-->确定-->选项-->改为现在的data目录的路径-->OK其中:
"写入名字"-->不要与现在的冲突了,或选强制恢复
"改为现在的data目录的路径"-->如默认是"c:\....data\....mdf"而你现在的sql的data目录是d:\....data你就改为d:\...data\...mdf
但原来的 登录,job 需要重新建立
而用备份恢复的方法不需要
转贴我在本机上创建一个数据库DatabaseA,登录名LoginA对应UserA,赋给UserA相应的权限。
然后,把DatabaseA.MDF和DatabaseA.LDF拷到别的服务器B上附加上。
想用LoginA登录到服务器B。
结果失败!
此问题可以解决吗?Answer:
把数据库备份还原到另一个服务器时,可能会遇到孤立用户的问题。下面的方案显示并解决了这个问题: 通过执行 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 sysusersjanetl 登录不能访问 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'