C#备份Oracle代码

来源:互联网 发布:网络通信工程师 编辑:程序博客网 时间:2024/05/22 06:47

项目开发中,需要远程备份数据库,以下为C#远程备份数据库的代码

/// <summary>        /// 数据库备份        /// </summary>        /// <param name="fileName">dmp文件名称</param>        /// <param name="logFileName">log文件名称</param>        /// <returns>true:备份成功;false:备份失败</returns>        public static bool DBBackup(string dmpFileName, string logFileName)        {            // 返回值            bool result = false;            // 备份命令,从xml文件中获取 "/c EXP 用户名/密码@数据库服务名 FULL=Y INCTYPE=COMPLETE "            string backupCmd = MsgXml.GetConfig(XMLKey.BackupCommand.ToString());            // cmd中输入的参数内容            string arg = backupCmd + " FILE= " + dmpFileName + " LOG= " + logFileName;            try            {                // 如果dmp文件不存在,创建文件并释放                if (!File.Exists(dmpFileName))                {                    File.Create(dmpFileName).Dispose();                }                // 如果log文件不存在,创建文件并释放                if (!File.Exists(logFileName))                {                    File.Create(logFileName).Dispose();                }                // 开启新进程                Process process = new Process();                // 打开运行cmd                process.StartInfo.FileName = "cmd.exe";                // 要运行的命令                process.StartInfo.Arguments = arg;                // 关闭shell的使用                process.StartInfo.UseShellExecute = false;                // 重定向标准输入                process.StartInfo.RedirectStandardInput = true;                process.StartInfo.RedirectStandardError = true;                // 设置不显示cmd运行界面                process.StartInfo.CreateNoWindow = true;                                // 启动进程                process.Start();                // TODO 进程条 正在备份,请稍候...                process.WaitForExit();                process.Dispose();                result = true;                // 日志文件                LogHelper.info(arg);            }            catch (Exception ex)            {                 // 错误日志                LogHelper.error(ex.Message);            }            return result;        }


0 0
原创粉丝点击