Tag: 数据库恢复

如何将bak文件导入SQL Server Express

我有一个.bak文件,我想用这个文件重新创buildSQL Server 2008 Management Studio的全新安装数据库。 有人能指出我如何做到这一点,在正确的方向吗? 我努力了: 右键单击对象资源pipe理器中的数据库容器 从上下文菜单中selectRestore database 指定为数据库作为新的或现有的数据库 从设备指定恢复源 select备份媒体作为文件 单击添加button并浏览到BAK文件的位置 但我得到的错误 服务器'MyServer-PC'恢复失败。 (Microsoft.SqlServer.SmoExtended) 附加信息: System.Data.SqlClient.SqlError:备份集保存了现有“发明”数据库以外的数据库的备份。 (Microsoft.SqlServer.Smo)

完全自动化的SQL Server还原

我不太熟悉SQL Server命令。 我需要一个脚本来从.bak文件恢复数据库并将logical_data和logical_log文件移动到特定的path。 我可以: restore filelistonly from disk='D:\backups\my_backup.bak' 这将给我一个列LogicalName的结果集,接下来我需要在恢复命令中使用结果集中的逻辑名称: restore database my_db_name from disk='d:\backups\my_backups.bak' with file=1, move 'logical_data_file' to 'd:\data\mydb.mdf', move 'logical_log_file' to 'd:\data\mylog.ldf' 如何将第一个结果集中的逻辑名称捕获到可以提供给“move”命令的variables中? 我认为解决scheme可能是微不足道的,但我是SQL Server的新手。

PostgreSQL 9.1关于PLPGSQL的pg_restore错误

我正在使用Postgres做一个django项目,目前我正在实现一个尽可能简单的数据库备份/恢复系统,当用户单击备份时执行pg_dump,然后在单击还原备份时执行pg_restore。 所有似乎都很好,直到它实际上试图执行pg_restore,在这个时候它给这个错误: pg_restore:[archiver(db)]来自TOC项目3206的错误; 0 0 COMMENT EXTENSION plpgsql pg_restore:[archiver(db)]无法执行查询:ERROR:必须是扩展plpgsql的所有者命令是:COMMENT ON EXTENSION plpgsql是'PL / pgSQL过程语言'; 我已经研究了什么plpgsql是等,我明白了,关于错误,我试图手动设置“扩展的所有者”执行脚本的用户,拥有数据库本身,但没有改变,它真的很烦人,因为它试图对所有事情发表评论的错误 这一切都是由pg_dump自动创build的,所以注释行不能被删除,也没有标志来禁用注释(我知道closures),所以我真的坚持如何解决这个问题。

由于数据库正在使用,无法获得专有访问权限

我正在使用以下代码来恢复数据库, void Restore(string ConnectionString, string DatabaseFullPath, string backUpPath) { string sRestore = "USE [master] RESTORE DATABASE [" + DatabaseFullPath + "] FROM DISK = N'" + backUpPath + "' WITH FILE = 1, NOUNLOAD, STATS = 10"; using (SqlConnection con = new SqlConnection(ConnectionString)) { con.Open(); SqlCommand cmdBackUp = new SqlCommand(sRestore, con); cmdBackUp.ExecuteNonQuery(); } } 但我收到以下例外 […]

SQL Server数据库还原错误:指定的强制转换无效。 (SqlManagerUI)

我使用SQL Server 2008 R2 Standard(版本10.50.1600.1)作为我的生产网站,SQL Server Express版本使用高级服务(v10.50.1600.1)作为数据库的本地主机。 几天后我的SQL Server崩溃了,我不得不在我的本地主机上安装一个新的2008 R2 Express版本。 当我恢复从Express版本采取一些旧版本,但是当我尝试从生产服务器采取.bak文件恢复数据库时,它工作正常,它会导致以下错误: 错误:指定的转换无效。 (SqlManagerUI) 当我尝试使用命令恢复数据库 Use Master Go RESTORE DATABASE Publications FROM DISK = 'C:\Publications.bak' WITH MOVE 'Publications' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS2008R2\MSSQL\DATA\Publications.mdf',–adjust path MOVE 'AlPublications_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS2008R2\MSSQL\DATA\Publications.ldf' 它会产生一个不同的错误 消息3154,等级16,状态4,行1 备份集保存了除现有“出版物”数据库之外的数据库的备份。 消息3013,级别16,状态1,行1 RESTORE DATABASE正在终止exception。 我已经交叉检查版本。 如下图所示,它们都与我相匹配 以前我能够从标准版本恢复数据库来expression版本,但现在失败了。 我删除了数据库,并试图重新创build它。 这也失败了。 我不知道我在做什么错。 我将不胜感激这方面的帮助 问题已解决,因为它似乎.bak文件已损坏。 […]

将.bak文件导入SQL Server中的数据库

我有一个.bak扩展名的文件。 如何将此date导入到SQL Server中的数据库?