1
#region
/*备份还原操作*/
/// <summary>
/// 备份
/// </summary>
/// <param name="username"> 用户名 </param>
/// <param name="pwd"> 密码 </param>
/// <param name="dbServer"> 数据库 </param>
/// <param name="pathName"> 路径 </param>
/// <param name="databaseFileName"> 备份的文件名 </param>
/// <param name="appendCommand"> 备用参数 </param>
/// <param name="logName"> 日志文件名 </param>
/// <returns></returns>
public bool BackupORACLEDatabase( string username, string pwd, string dbServer, string pathName, string databaseFileName, string appendCommand, string logName, string sqlTextConfig)
{
this .SQLTextFileName = pathName + " \\ " + sqlTextConfig;
#region /*XMLSQL角本生成*/
if (File.Exists(SQLTextFileName))
{
File.Delete(SQLTextFileName);
}
// 备份库信息
DBEntity dbentity = new DBEntity();
dbentity.DBServer = dbServer;
dbentity.UserName = username;
dbentity.Pwd = pwd;
WriteXMLUserSpaceConfig(dbentity);
#endregion
// exp userid=system/zhice@jc full=y INDEXES=n grants=y rows=y compress=N file=d:\demo.dmp log=d:\demo.log
string loginString = string .Format( " userid={0}/{1}@{2} " , username, pwd, dbServer);
string fileName = " EXP " ;
string arguments = string .Format( " {0} full=y file={1} log={2} " , loginString, pathName + " \\ " + databaseFileName, pathName + " \\ " + logName);
string backupCommand = string .Format( " {0} {1} " , fileName, arguments);
try
{
System.Diagnostics.Process bakupProcess = new System.Diagnostics.Process();
bakupProcess.StartInfo.FileName = fileName;
bakupProcess.StartInfo.Arguments = arguments;
bakupProcess.Start();
return true ;
}
catch (Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex);
return false ;
}
}
/// <summary>
/// 还原
/// </summary>
/// <param name="username"> 用户名 </param>
/// <param name="pwd"> 密码 </param>
/// <param name="dbServer"> 数据库 </param>
/// <param name="pathName"> 路径 </param>
/// <param name="databaseFileName"> 备份的文件名 </param>
/// <param name="appendCommand"> 备用参数 </param>
/// <param name="logName"> 日志文件名 </param>
/// <returns></returns>
public bool ImpORACLEDatabase( string username, string pwd, string dbServer, string pathName, string databaseFileName, string appendCommand, string logName, string sqlTextConfig)
{
this .SQLTextFileName = sqlTextConfig;
#region /*XMLSQL角本执行*/
// 备份库信息
DBEntity dbentity = new DBEntity();
dbentity.DBServer = dbServer;
dbentity.UserName = username;
dbentity.Pwd = pwd;
if (File.Exists(SQLTextFileName) && SQLTextFileName != string .Empty)
{
ExeUserSpaceSQL(dbentity);
}
#endregion
// imp userid=system/zhice@jc ignore=y rows=y indexes=n full=y file=d:\demo.dmp log=d:\demo.log
string loginString = string .Format( " userid={0}/{1}@{2} " , username, pwd, dbServer);
string fileName = " IMP " ;
string arguments = string .Format( " {0} full=y file={1} log={2} " , loginString, pathName + " \\ " + databaseFileName, pathName + " \\ " + logName);
string backupCommand = string .Format( " {0} {1} " , fileName, arguments);
try
{
System.Diagnostics.Process bakupProcess = new System.Diagnostics.Process();
bakupProcess.StartInfo.FileName = fileName;
bakupProcess.StartInfo.Arguments = arguments;
bakupProcess.Start();
return true ;
}
catch (Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex);
return false ;
}
}
#endregion
/// <summary>
/// 备份
/// </summary>
/// <param name="username"> 用户名 </param>
/// <param name="pwd"> 密码 </param>
/// <param name="dbServer"> 数据库 </param>
/// <param name="pathName"> 路径 </param>
/// <param name="databaseFileName"> 备份的文件名 </param>
/// <param name="appendCommand"> 备用参数 </param>
/// <param name="logName"> 日志文件名 </param>
/// <returns></returns>
public bool BackupORACLEDatabase( string username, string pwd, string dbServer, string pathName, string databaseFileName, string appendCommand, string logName, string sqlTextConfig)
{
this .SQLTextFileName = pathName + " \\ " + sqlTextConfig;
#region /*XMLSQL角本生成*/
if (File.Exists(SQLTextFileName))
{
File.Delete(SQLTextFileName);
}
// 备份库信息
DBEntity dbentity = new DBEntity();
dbentity.DBServer = dbServer;
dbentity.UserName = username;
dbentity.Pwd = pwd;
WriteXMLUserSpaceConfig(dbentity);
#endregion
// exp userid=system/zhice@jc full=y INDEXES=n grants=y rows=y compress=N file=d:\demo.dmp log=d:\demo.log
string loginString = string .Format( " userid={0}/{1}@{2} " , username, pwd, dbServer);
string fileName = " EXP " ;
string arguments = string .Format( " {0} full=y file={1} log={2} " , loginString, pathName + " \\ " + databaseFileName, pathName + " \\ " + logName);
string backupCommand = string .Format( " {0} {1} " , fileName, arguments);
try
{
System.Diagnostics.Process bakupProcess = new System.Diagnostics.Process();
bakupProcess.StartInfo.FileName = fileName;
bakupProcess.StartInfo.Arguments = arguments;
bakupProcess.Start();
return true ;
}
catch (Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex);
return false ;
}
}
/// <summary>
/// 还原
/// </summary>
/// <param name="username"> 用户名 </param>
/// <param name="pwd"> 密码 </param>
/// <param name="dbServer"> 数据库 </param>
/// <param name="pathName"> 路径 </param>
/// <param name="databaseFileName"> 备份的文件名 </param>
/// <param name="appendCommand"> 备用参数 </param>
/// <param name="logName"> 日志文件名 </param>
/// <returns></returns>
public bool ImpORACLEDatabase( string username, string pwd, string dbServer, string pathName, string databaseFileName, string appendCommand, string logName, string sqlTextConfig)
{
this .SQLTextFileName = sqlTextConfig;
#region /*XMLSQL角本执行*/
// 备份库信息
DBEntity dbentity = new DBEntity();
dbentity.DBServer = dbServer;
dbentity.UserName = username;
dbentity.Pwd = pwd;
if (File.Exists(SQLTextFileName) && SQLTextFileName != string .Empty)
{
ExeUserSpaceSQL(dbentity);
}
#endregion
// imp userid=system/zhice@jc ignore=y rows=y indexes=n full=y file=d:\demo.dmp log=d:\demo.log
string loginString = string .Format( " userid={0}/{1}@{2} " , username, pwd, dbServer);
string fileName = " IMP " ;
string arguments = string .Format( " {0} full=y file={1} log={2} " , loginString, pathName + " \\ " + databaseFileName, pathName + " \\ " + logName);
string backupCommand = string .Format( " {0} {1} " , fileName, arguments);
try
{
System.Diagnostics.Process bakupProcess = new System.Diagnostics.Process();
bakupProcess.StartInfo.FileName = fileName;
bakupProcess.StartInfo.Arguments = arguments;
bakupProcess.Start();
return true ;
}
catch (Exception ex)
{
System.Diagnostics.Debug.WriteLine(ex);
return false ;
}
}
#endregion