【问题标题】:Backup and Restore MS SQL Server database through Java Program通过 Java 程序备份和恢复 MS SQL Server 数据库
【发布时间】:2012-12-12 22:08:35
【问题描述】:

我已经开发了一个带有 MS-SQL Server 数据库的 Java Swing 应用程序,现在我想在我的 Java Swing 应用程序中提供备份和恢复选项,单击按钮它应该备份数据库并恢复数据库的任何可能性我怎么能通过java做到这一点。请帮忙

【问题讨论】:

  • 请帮助...我该怎么做

标签: java sql-server-2005 backup restore


【解决方案1】:

您可以编写一个简单的script 来备份您的数据库并从java 调用它。

【讨论】:

  • 脚本中应该包含什么
【解决方案2】:

有两种方法可以做到这一点。备份和恢复只是 sql 命令,因此您可以像执行任何其他 sql 一样执行它们,例如一个 sql 插入语句,不幸的是,您需要对系统有一些了解才能执行它们,而且您不会得到任何进度指示器。使用 SQLSMO 是另一种可能性,但不确定是否从 java 中访问 .net dll。您可以使用 SQLDMO(pre.net),但您需要安装向后兼容工具,而且您会因为 SQL2012 不支持 DMO(虽然它似乎可以工作)而让自己升级头疼。两者都有一个您可以在进度条上打勾的事件,当然,如果备份速度相当快,您可以不用理会它。

但是,还有更多需要考虑的问题。您可以在系统运行时进行备份,但您无法清楚地知道系统运行时的位置。

恢复需要独占访问权限和高级别的权限,所以这不是你分发的东西,你需要让每个人都离开数据库。

最后但并非最不重要的是,如果您无意中恢复了与应用程序不再匹配的数据库版本......

就我个人而言,我认为有权执行此操作的人应该能够在没有您的工具的情况下执行此操作。简化它意味着需要大量代码来确保他们不会从您在八个版本之前发布的试用版中恢复 sql2000 备份。

我们做了类似的备份恢复代码大约占应用程序的 2%。例如,我们使用 dbcc 等进行备份前检查,以确保他们没有成功备份损坏的数据库...

【讨论】:

  • 先生,因为我是 Microsoft SQL Server 的新手,我只知道创建表插入更新和删除和编写程序。所以 cud u 请告诉我这样做的分步过程
  • 我不做java,但是你会从你的代码中执行一些sql,用于备份的sql是Backup Database [somedatabasename] To Disk = 'somefilename' 还有一点,帐户需要对数据库的备份权限,并且帐户 sql server 正在运行,因为需要对正在使用的文件夹的写入权限。这并不难,只需要一些设置。虽然它是非常特定的设置,所以你必须在你的系统上解决它。
【解决方案3】:

你真的需要在这里付出一点努力。

由于您已经可以连接到数据库服务器并向其发送 SQL 命令,请阅读 this 以使用 TSQL 进行备份。

对于数据库还原,请阅读 this

您需要拥有适当的权限和对硬件的访问权限才能使其正常工作。

【讨论】:

    猜你喜欢
    • 2011-12-10
    • 1970-01-01
    • 2014-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-16
    • 1970-01-01
    相关资源
    最近更新 更多