社区
C#
帖子详情
有谁做过数据库备份没啊,教教小弟!!
tuoliao722
2005-05-17 09:20:40
做完了一个小项目,没做过数据库备份,请大哥们指点!
...全文
163
13
打赏
收藏
有谁做过数据库备份没啊,教教小弟!!
做完了一个小项目,没做过数据库备份,请大哥们指点!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yzg100
2005-05-17
打赏
举报
回复
写个存储过程来备份,文件时加上系统时间精确到秒。程序里来执行存储过程就行了。
wh8254
2005-05-17
打赏
举报
回复
backup database dbname
不过楼主要注意了,重复备份时,可能数据库中的数据会重复,而不是覆盖!
可以找个数据库操作下!
liukanghui
2005-05-17
打赏
举报
回复
如果是sql server用自带的备份向导比较好
sea_in_yellow
2005-05-17
打赏
举报
回复
这是从我自己的 SQL-Server 的项目中拷贝下来的原代码,是用 SQL_DMO 来操作的,
你看看对你有没有帮助。
sea_in_yellow
2005-05-17
打赏
举报
回复
public bool BackUpDB( string ServerName, string UserName, string Password, string strDbName,string strFileName )
{
SQLDMO.SQLServer svr = new SQLDMO.SQLServerClass() ;
try
{
svr.Connect(ServerName,UserName,Password) ;
SQLDMO.Backup bak = new SQLDMO.BackupClass();
bak.Action = 0 ;
bak.Initialize = true ;
SQLDMO.BackupSink_PercentCompleteEventHandler pceh = new SQLDMO.BackupSink_PercentCompleteEventHandler(Step);
bak.PercentComplete += pceh;
bak.Files = strFileName;
bak.Database = strDbName;
bak.SQLBackup(svr);
return true ;
}
catch(Exception err)
{
throw(new Exception("数据库备份失败"+err.Message)) ;
}
finally
{
svr.DisConnect() ;
}
}
sea_in_yellow
2005-05-17
打赏
举报
回复
private void btnBackData_Click(object sender, System.EventArgs e)
{
if( ""==strBackPath )
{
MessageBox.Show("请先选择备份路径!");
}
else
{
this.Cursor = Cursors.WaitCursor;
if( BackUpDB( Global.MainIni.IniReadValue("DataBase","Server"),
Global.MainIni.IniReadValue("DataBase","UID"),
Encrypt.Decrypt3DES( Global.MainIni.IniReadValue("DataBase","PWD"), Encrypt.strKey ) ,
Global.MainIni.IniReadValue("DataBase","DataBase"),
strBackPath )
)
{
this.Cursor = Cursors.Arrow;
MessageBox.Show("数据备份成功!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
this.proBar.Value = 0;
}
this.Cursor = Cursors.Arrow;
}
strBackPath = "";
}
private void btnRestoreData_Click(object sender, System.EventArgs e)
{
if(MessageBox.Show("该操作将数据覆盖!!\n\n如果选择[是],将原来的数据覆盖\n\n如果选择[否],将取消恢复","提示",MessageBoxButtons.YesNo,MessageBoxIcon.Warning)==DialogResult.No)
return;
return;
this.Cursor = Cursors.WaitCursor;
if( RestoreData( Global.MainIni.IniReadValue("DataBase","Server"),
Global.MainIni.IniReadValue("DataBase","UID"),
Encrypt.Decrypt3DES( Global.MainIni.IniReadValue("DataBase","PWD"), Encrypt.strKey ) ,
Global.MainIni.IniReadValue("DataBase","DataBase"),
strRestorePath )
)
{
this.Cursor = Cursors.Arrow;
MessageBox.Show("数据恢复成功!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
this.proBar.Value = 0;
}
}
public bool RestoreData( string ServerName, string UserName, string Password,string strDbName,string strFileName )
{
SQLDMO.SQLServer svr = new SQLDMO.SQLServerClass() ;
try
{
svr.Connect(ServerName,UserName,Password) ;
SQLDMO.QueryResults qr = svr.EnumProcesses(-1) ;
int iColPIDNum = -1 ;
int iColDbName = -1 ;
for(int i=1;i<=qr.Columns;i++)
{
string strName = qr.get_ColumnName(i) ;
if (strName.ToUpper().Trim() == "SPID")
{
iColPIDNum = i ;
}
else if (strName.ToUpper().Trim() == "DBNAME")
{
iColDbName = i ;
}
if (iColPIDNum != -1 && iColDbName != -1)
break ;
}
for(int i=1;i<=qr.Rows;i++)
{
int lPID = qr.GetColumnLong(i,iColPIDNum) ;
string strDBName = qr.GetColumnString(i,iColDbName) ;
if (strDBName.ToUpper() == strDbName.ToUpper())
svr.KillProcess(lPID) ;
}
}
catch(Exception err)
{
throw(new Exception("恢复数据库失败,请关闭所有和该数据库连接的程序!"+err.Message)) ;
}
try
{
SQLDMO.Restore res = new SQLDMO.RestoreClass() ;
res.Action = 0 ;
SQLDMO.RestoreSink_PercentCompleteEventHandler pceh = new SQLDMO.RestoreSink_PercentCompleteEventHandler(Step);
res.PercentComplete += pceh;
res.Files = strFileName ;
res.Database = strDbName ;
res.ReplaceDatabase = true ;
res.SQLRestore(svr) ;
return true;
}
catch(Exception err)
{
throw(new Exception("恢复数据库失败,请关闭所有和该数据库连接的程序!"+err.Message)) ;
}
finally
{
svr.DisConnect() ;
}
}
FirstNet
2005-05-17
打赏
举报
回复
csdn上还有会编程的吗,不是来蹭分就是瞎答问题,一群”酒囊饭袋“
koy0755
2005-05-17
打赏
举报
回复
access的话直接copy文件.
如果是sqlserver的话用sql语句如下:
backup database 数据库名 disk='备份的文件名'
tuoliao722
2005-05-17
打赏
举报
回复
写代码
wingnal
2005-05-17
打赏
举报
回复
写代码还是操作?
brando_beat
2005-05-17
打赏
举报
回复
很多的,你在csdn上面搜一下
lindaolong
2005-05-17
打赏
举报
回复
access的话就拷贝文件
copyfile()
fengfangfang
2005-05-17
打赏
举报
回复
backup database dbname
oracle教程很实用
虽然是pdf,这文档中有许多实用的sql语句,关键代码可以直接复制,直接去运行;而且带标签
DB基本概念之 ---
数据库备份
与恢复(实际项目运用)
初次接触
数据库备份
与恢复,目前是应用在这样一个场景: 我们平时开发都是在自己的开发环境中进行,开发完成之后,需要将oracle数据库转到位客户部署的服务器之上。 所以就需要将开发环境中的
数据库备份
出来,然后恢复到新的服务器机器上。 首先确保Oracle安装路径的Bin目录路径(c:\app\Administrator\product\11.2.0\dbhome_1\BIN)已经配置在
MySQL数据库实操教程(23)——
数据库备份
与还原
在操作数据库时难免会发生一些意外造成数据丟失。例如:突然断电、管理员的操 作失误都可能导致数据的丢失。为了确保数据的安全,需要定期对数据库进行备份,从而当遇到数据库中数据丢失或者出错的情况可将数据进行还原。
MySQL数据备份恢复全攻略,让我们通过简单几步找回丢失的数据
编写初衷
没
有人生下来天生就是会计算机的,就拿笔者来说的话,也是从Windows->Centos->Ubuntu一步一步慢慢学习,积累下来的。为了让大家能够更快更高效率的学习,从今天开始,我将每天深入教您1个命令,让我们一起live and study,积少成多! MySQL作为主流的开源数据库,常用于一些创业型公司或者小并发的企业。但是在使用的过程中,难免会遇到误删数据等一系列的情况,本篇文章,我将教您怎样简单几步备份恢复数据。 操作方法 全库备份 mysqldump -uroot
MySQL数据库被黑了
MySQL数据库被黑了黑的方式
没
找到 日志
没
开 但是知道怎么预防了第一种 直接mysql.ini文件里面设置第二种 配置防火墙 tm的倒了血霉了 今天登录测试库发现数据库被黑了,把原来的数据库弄走了只给我创建了个z_readme_to_recover库 里面一张recover_your_data表 表中数据 表里面是勒索信息 让我给他0.1BTC。 谁tm有钱给他!天天想屁吃!! All your data is a backed up. You must pay 0.1 BTC to 12oLb1
C#
111,112
社区成员
642,555
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章