当前位置:首页 » 操作系统 » 远程备份数据库

远程备份数据库

发布时间: 2022-08-24 17:24:38

‘壹’ 如何远程备份sql SERVER数据库

手头上只有C#的代码,不知道对你有没有帮助
远程备份要注意权限的问题,普通的访问帐户没有备份和还原的权限,最好用sa的帐户,并且程序访问的帐户必须添加到远程机器的系统内
你说的远程备份到本地是不可能的,你只有开放远程某个文件夹加入你的特殊访问帐户权限
最好直接用远程桌面,这样最方便

方法一(不使用SQLDMO):

///
///备份方法
///
SqlConnection conn = new SqlConnection("Server=.;Database=master;User ID=sa;Password=sa;");

SqlCommand cmdBK = new SqlCommand();
cmdBK.CommandType = CommandType.Text;
cmdBK.Connection = conn;
cmdBK.CommandText = @"backup database test to disk='C:\ba' with init";

try
{
conn.Open();
cmdBK.ExecuteNonQuery();
MessageBox.Show("Backup successed.");
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
conn.Close();
conn.Dispose();
}

///
///还原方法
///
SqlConnection conn = new SqlConnection("Server=.;Database=master;User ID=sa;Password=sa;Trusted_Connection=False");
conn.Open();

//KILL DataBase Process
SqlCommand cmd = new SqlCommand("SELECTspidFROMsysprocesses ,sysdatabases WHEREsysprocesses.dbid=sysdatabases.dbid AND sysdatabases.Name='test'", conn);
SqlDataReader dr;
dr = cmd.ExecuteReader();
ArrayList list = new ArrayList();
while(dr.Read())
{
list.Add(dr.GetInt16(0));
}
dr.Close();
for(int i = 0; i < list.Count; i++)
{
cmd = new SqlCommand(string.Format("KILL {0}", list[i]), conn);
cmd.ExecuteNonQuery();
}

SqlCommand cmdRT = new SqlCommand();
cmdRT.CommandType = CommandType.Text;
cmdRT.Connection = conn;
cmdRT.CommandText = @"restore database test fromdisk='C:\ba'";

try
{
cmdRT.ExecuteNonQuery();
MessageBox.Show("Restore successed.");
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
conn.Close();
}

方法二(使用SQLDMO):

///
///备份方法
///
SQLDMO.Backup backup = new SQLDMO.BackupClass();
SQLDMO.SQLServer server = new SQLDMO.SQLServerClass();
//显示进度条
SQLDMO.BackupSink_PercentCompleteEventHandler progress = new SQLDMO.BackupSink_PercentCompleteEventHandler(Step);
backup.PercentComplete += progress;

try
{
server.LoginSecure = false;
server.Connect(".", "sa", "sa");
backup.Action = SQLDMO.SQLDMO_BACKUP_TYPE.SQLDMOBackup_Database;
backup.Database = "test";
backup.Files = @"D:\test\myProg\backupTest";
backup.BackupSetName = "test";
backup.BackupSetDescription = "Backup the database of test";
backup.Initialize = true;
backup.SQLBackup(server);
MessageBox.Show("Backup successed.");
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
server.DisConnect();
}
this.pbDB.Value = 0;

///
///还原方法
///
SQLDMO.Restore restore = new SQLDMO.RestoreClass();
SQLDMO.SQLServer server = new SQLDMO.SQLServerClass();
//显示进度条
SQLDMO.RestoreSink_PercentCompleteEventHandler progress = new SQLDMO.RestoreSink_PercentCompleteEventHandler(Step);
restore.PercentComplete += progress;

//KILL DataBase Process
SqlConnection conn = new SqlConnection("Server=.;Database=master;User ID=sa;Password=sa;Trusted_Connection=False");
conn.Open();
SqlCommand cmd = new SqlCommand("SELECTspid FROMsysprocesses ,sysdatabases WHEREsysprocesses.dbid=sysdatabases.dbid AND sysdatabases.Name='test'", conn);
SqlDataReader dr;
dr = cmd.ExecuteReader();
ArrayList list = new ArrayList();
while(dr.Read())
{
list.Add(dr.GetInt16(0));
}
dr.Close();
for(int i = 0; i < list.Count; i++)
{
cmd = new SqlCommand(string.Format("KILL {0}", list[i]), conn);
cmd.ExecuteNonQuery();
}
conn.Close();

try
{
server.LoginSecure = false;
server.Connect(".", "sa", "sa");
restore.Action = SQLDMO.SQLDMO_RESTORE_TYPE.SQLDMORestore_Database;
restore.Database = "test";
restore.Files = @"D:\test\myProg\backupTest";
restore.FileNumber = 1;
restore.ReplaceDatabase = true;
restore.SQLRestore(server);
MessageBox.Show("Restore successed.");
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
server.DisConnect();
}
this.pbDB.Value = 0;

‘贰’ 怎么远程备份oracle数据库到本地

远程Oracle数据库导出到本地用exp命令。
导出一个完整数据库:
1、win键+R键,输入cmd,打开命令提示符。

2、执行

1

exp 用户名/密码@实例名 file=导出路径\文件名 log=导出路径\日志名 full=y

‘叁’ 远程备份mysql数据库,远程mysql5.5,本地mysql5.1,要使用mysqlmp命令,远程及本地都是linux环境

远程备份mysql数据库,远程mysql5.5,本地mysql5.1,要使用mysqlmp命令,远程及本地都是linux环境
mysqlmp在备份远程数据库的时候只比本地备份多了-h或-host参数,该参数后面的等于号后面填写远程主机的主机名或IP地址即可。此外备份操作与本地使用哪种操作系统关系不大。
举例:
$ mysqlmp -uroot -p –host=192.168.100.6 –all-databases > mysql.mp

‘肆’ 怎么备份远程mysql数据库的脚本文件

在MySQL中进行数据备份的方法有两种:
1. mysqlhot
这个命令会在拷贝文件之前会把表锁住,并把数据同步到数据文件中,以避免拷贝到不完整的数据文件,是最安全快捷的备份方法。
命令的使用方法是:
mysqlhot -u root -p<rootpass> db1 db2 … dbn <output_dir>
如果需要备份全部数据库,可以加上–regexp=”.*”参数。
Mysqlhot命令可自动完成数据锁定工作,备份时不用关闭服务器。它还可以刷新日志,使备份文件和日志文件的检查点能保持同步。
2. mysqlmp
这个命令是用来把数据库倒成sql文件的,是非常古老的命令了。
命令的使用方法是:
mysqlmp -u root -p<rootpass> –hex-blob db1 > db1.sql
加上–hex-blob参数以后,blob数据会被类似BASE64的方法转换为文本来存储在sql文件中,就不会导致sql文件格式问题了。经过测试,通过这种方法备份的blob数据再重新恢复回去能够完全正确。
如果要备份所有的数据库,可以加上–all-databases参数。
用mysqlmp命令还可直接把数据库转移到另外一台服务器上,不用生成备份文件。重复执行可定期更新远程数据库。
% mysqladmin -h remote_host create testdb
% mysqlmp –opt testdb | mysql -h remote_host testdb
另外还可通过ssh远程调用服务器上的程序,如:
% ssh remote_host mysqladmin create testdb

‘伍’ DB2中怎么备份远程数据库

步骤:1、设置数据库为归档模式2、完全数据库备份(backup)3、将日志归档(Archive)4、再恢复数据库(Restore)5、前滚数据库(RollForward)6、备份文件用ftp传送!

‘陆’ 如何远程备份SQL2000数据库

1、这里首先确保你的sql2000企业管理器已经连接到远程的sql2000数据库服务器上了,
2、备份数据库
(1)在企业管理器中展开服务器组,展开指定的服务器->选择需要备份的数据库。
(2)右击指定的数据库,在弹出的快捷菜单中选择"所有任务"选项-〉"备份数据库" ,弹出备份数据库对话框。

(3)在对话框中选择"添加",在"选择备份目的"对话框中,选择指定备份的位置和文件名。点击确定。

这样就实现了数据库的备份。
3、还原数据库
(1)在企业管理器中展开服务器组,展开指定的服务器,展开"数据库"-〉找到你的数据库。
(2)右击指定的数据库,在弹出的快捷菜单中选择"所有任务"选项,再选择"还原数据库"命令,弹出还原数据库对话框。

(3)在对话框中选择"从设备",点击"选择设备"按钮,在对话框中,选择还源的文件名和位置,操作和备份数据库过程类似。按提示点击确定。即可实现数据库还原。

‘柒’ 跪求:SQL远程数据库备份到本地数据 的方法

1、可以在远程服务器上备份数据库,然后下载.bak文件在本地恢复
2、链接上远程服务器,选中要备份的数据库--》右击--》任务--》生成脚本
然后根据向导执行,但是在“选择脚本选项”页面要把
编写数据的脚本
的选项
设置成TRUE,
然后下一步,选择你要备份的表、存储过程、视图等
知道最后生成一个.sql文件,在本地执行就好了。

‘捌’ 如何备份远程数据库到本地

在企业管理器中:
先在本地建一个目的数据库-》右击该DB-》所有任务-》导入数据-》在源数据库选择对话框中,将“服务器”选择为你所要的Server,填入登录名及密 码,选择要导入的数据库-》在目的数据库选择对话框中,用默认值或再自行选择-》选择“复制数据库间的对象和数据”-》接下来next即可

‘玖’ 如何远程备份和还原sybase数据库

1,确保备份服务器bs的空间足够存放远程数据库服务器ds的备份文件。
df -k (unix)
df -h (linux)
2.检查备份服务器bs的interfaces文件是否正常
sample_bs_backup
master tcp ether 132.230.99.2 4200
query tcp ether 132.230.99.2 4200
3.启动备份服务器bs的backupServer服务
startserver -f RUN_sample_bs_backup >> sample_bs_backup.log
4.在数据库服务器ds的interfaces文件添加备份服务器bs的ip和端口信息,名字须根备份服务器bs的interfaces文件保持一致
sample_bs_backup
master tcp ether 132.230.99.2 4200
query tcp ether 132.230.99.2 4200
5.检查数据库服务器ds的interfaces文件是否正常
sample_ds_backup
master tcp ether 132.230.99.1 4200
query tcp ether 132.230.99.1 4200
6.启动数据库服务器ds的backupServer服务
startserver -f RUN_sample_ds_backup >> sample_ds_backup.log

7.连接数据库服务器ds的数据服务,添加备份服务器sample_bs_backup到master..sysservers表中。
执行 sp_addserver sample_bs_backup,null;
或者
print 'sample_bs_backup' ;
exec sp_addserver sample_bs_backup, sql_server, sample_bs_backup;
exec sp_serveroption sample_bs_backup, 'timeouts', true;
exec sp_serveroption sample_bs_backup, 'net password encryption', false;
exec sp_serveroption sample_bs_backup, 'readonly', false;
exec sp_serveroption sample_bs_backup, 'rpc security model A',true ;
go
并用以下命令用于查看是否添加成功
sp_helpserver;
8. 连接数据库服务器ds的数据库服务,进行备份
isql -Usa -Ssample_ds -P123456
mp database tacdb to "/backup/sybase/20100519db.dmp" at sample_bs_backup
备份完成!

若是还原是数据库,则执行:

load database tacdb from '/backup/sybase/20100519tacdb.dmp' at sample_bs_backup
9. 备份完毕后,连接数据库服务器ds的数据库服务,删除备份服务
sp_dropserver sample_bs_backup
10,删除数据库服务器ds的interfaces文件关于sample_bs_backup的配置
sample_bs_backup
master tcp ether 132.230.99.2 4200
query tcp ether 132.230.99.2 4200

说明:
1.经与SYBASE公司数据库支持工程师联系,跨平台的数据库mp和load是无法进行的,就像我这种情况——从UNIX服务器上mp出来的数据库,无法load到Windows服务器上的数据库中。只能通过bcp来进行。
2.不同版本的数一据库之间无法进行mp和load。

‘拾’ 如何远程把sql server中的数据备份和导入到本地sql server中

一:备份远程数据库,将备份文件拷贝到本地,然后在本地还原数据库。
二:将远程数据库的数据文件跟日志文件拷贝到本地(拷贝之前需要先停止远程数据库服务,否则无法进行拷贝),然后在本地进行附加数据库操作。
三:(需要知道远程数据库的登录名跟密码)打开企业管理器,在“sql server”组上右键选择“新建sql server注册”,点下一步,在“可用的服务器”中输入远程服务器的IP,然后点击“添加”,继续下一步,一步一步按照指导完成。注册完成后就可以像操作本地数据库一样对远程数据库进行操作了backup database sys to disk='\\你的ip\共享目录\a.bak' with init有一点是很关键的,就是启动你远程sql server数据库服务的帐号需要有在本地驱动器共享文件夹写的权限。要不,也是无法进行备份的。

热点内容
大连宾利浴池wifi密码是多少 发布:2025-05-16 01:25:36 浏览:171
缓存数据生产服务 发布:2025-05-16 01:08:58 浏览:583
普通电脑服务器图片 发布:2025-05-16 01:04:02 浏览:970
服务器地址和端口如何区分 发布:2025-05-16 01:03:17 浏览:833
重新编目数据库 发布:2025-05-16 00:54:34 浏览:513
android语音控制 发布:2025-05-16 00:53:50 浏览:265
win8windows无法访问 发布:2025-05-16 00:37:53 浏览:894
八种排序算法 发布:2025-05-16 00:37:17 浏览:55
左旋螺纹数控编程实例 发布:2025-05-16 00:11:49 浏览:10
安卓游戏旧版本从哪个软件下载 发布:2025-05-16 00:00:20 浏览:329