Questions tagged «database-restore»


17
从SQL转储还原数据库时启用二进制模式
我对MySQL非常陌生,并且正在Windows上运行它。我正在尝试从MySQL中的转储文件还原数据库,但是出现以下错误: $ >mysql -u root -p -h localhost -D database -o < dump.sql ERROR: ASCII '\0' appeared in the statement, but this is not allowed unless option --binary-mode is enabled and mysql is run in non-interactive mode. Set --binary-mode to 1 if ASCII '\0' is expected. Query: 'SQLite format 3'. …

4
SQL Server数据库还原错误:指定的转换无效。(SqlManagerUI)
我将SQL Server 2008 R2 Standard(版本10.50.1600.1)用于我的生产网站,并将SQL Server Express版本和具有Advanced Services(v10.50.1600.1)的localhost作为数据库使用。 几天后,我的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正在异常终止。 我已经交叉检查了版本。如下图所示,它们似乎都与我匹配 以前,我能够将数据库从标准版还原为快速版,但现在失败了。我删除了数据库并尝试重新创建它。那也失败了。 我不确定自己在做什么错。在此方面,我将不胜感激 该问题已解决,因为.bak文件似乎已损坏。当我尝试使用其他文件进行工作时。

6
Android备份/还原:如何备份内部数据库?
我已经实现了BackupAgentHelper使用提供的FileBackupHelper来备份和还原我拥有的本机数据库。这是您通常与一起使用ContentProviders并驻留在中的数据库/data/data/yourpackage/databases/。 有人会认为这是一种常见的情况。但是文档尚不清楚该怎么做:http : //developer.android.com/guide/topics/data/backup.html。这些典型数据库没有BackupHelper专门针对的数据库。因此,我使用了FileBackupHelper“ /databases/”,将其指向“ ”中的.db文件,在我的所有db操作(例如db.insert)中引入了锁定ContentProviders,甚至尝试在创建“ /databases/”目录之前使用onRestore()它,因为安装后该目录不存在。 过去,我已经SharedPreferences在其他应用程序中成功实现了类似的解决方案。但是,当我在模拟器2.2中测试我的新实现时,我看到正在LocalTransport从日志执行备份,以及正在执行(并onRestore()调用)还原。但是,永远不会创建db文件本身。 请注意,所有这些都是在安装之后,在首次启动应用程序之前,在执行还原之后。除此之外,我的测试策略基于http://developer.android.com/guide/topics/data/backup.html#Testing。 另请注意,我并不是在谈论我自己管理的一些sqlite数据库,也不是在备份到SDcard,自己的服务器或其他地方。 我确实在文档中看到有关数据库建议使用自定义的提及,BackupAgent但它似乎并不相关: 但是,如果需要执行以下操作,则可能需要直接扩展BackupAgent:*备份数据库中的数据。如果您有要在用户重新安装应用程序时还原的SQLite数据库,则需要构建一个自定义的BackupAgent,该备份代理在备份操作期间读取适当的数据,然后创建表并在还原操作期间插入数据。 请清楚一些。 如果我真的需要自己做到SQL级别,那么我担心以下主题: 打开数据库和事务。我不知道如何在应用程序工作流程之外从此类单例类关闭它们。 如何通知用户正在进行备份并且数据库已锁定。这可能需要很长时间,所以我可能需要显示进度条。 恢复时该如何做。据我了解,仅当用户已经开始使用该应用程序(并将数据输入数据库)时,还原才可能发生。因此,您不能假定只将备份的数据还原到位(删除空白或旧数据)。您必须以某种方式将其加入其中,由于id的原因,对于任何不重要的数据库都是不可能的。 还原完成后如何刷新应用程序而又不会使用户陷入某些无法访问的点。 我可以确定数据库已在备份或还原中升级吗?否则,预期的架构可能不匹配。

1
PostgreSQL-备份数据库并在其他所有者上还原?
我使用以下命令在不同服务器上的数据库上进行了备份,该角色具有与我所需角色不同的角色: pg_dump -Fc db_name -f db_name.dump 然后,我将备份复制到需要还原数据库的另一台服务器上,但是没有用于该数据库的所有者。假设数据库具有owner owner1,但是在另一台服务器上只有owner2我,并且我需要还原该数据库并更改所有者。 还原时我在另一台服务器上执行的操作: createdb -p 5433 -T template0 db_name pg_restore -p 5433 --role=owner2 -d db_name db_name.dump 但是运行还原时,出现以下错误: pg_restore: [archiver (db)] could not execute query: ERROR: role "owner1" does not exist 如何指定它以便更改所有者?还是不可能?

6
关于PLPGSQL的PostgreSQL 9.1 pg_restore错误
我正在将Postgres用于django项目,并且当前正在实现一个数据库备份/还原系统,该系统尽可能简单,当用户单击“备份”时执行pg_dump,然后在用户单击“还原备份”时执行pg_restore。 一切看起来不错,直到它实际上尝试执行pg_restore时才给出此错误: pg_restore:[归档器(db)]来自TOC条目3206的错误;0 0 COMMENT EXTENSION plpgsql pg_restore:[存档(db)]无法执行查询:错误:必须是扩展plpgsql的所有者命令是:COMMENT ON EXTENSION plpgsql是'PL / pgSQL程序语言'; 我研究了plpgsql是什么,我理解了这一点,对于错误,我尝试手动将“扩展所有者”设置为执行脚本并拥有数据库本身的用户,但并没有改变,这确实令人讨厌试图对所有事物设置注释的错误 这都是由pg_dump自动创建的,因此不能删除注释行,并且没有禁用注释的标志(我知道这些标志已经关闭),因此我对于解决该问题确实很执着。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.