我有兴趣编写一个小应用程序来备份USB文件以帮助我的妻子并减少她的压力水平,当她认为她丢失的东西!
我试图找出最好的方法,我想要一些非常简单的东西,但是想要备份更改的文件(有点像SVN).所以我提出了以下想法,但我想知道是否有更好的方式可以建议.
我只想备份不同的文件以提高速度.我不确定是否扫描备份目录并获取FileInfo进行比较是最好的方法(显然是使用相对路径),或者是从上次备份中获取FileInfo的集合,这些集合将保存到某些XML文件或类似文件中.
或者,可能有更好的方法来做到这一点!有人有什么建议吗?
我们正在构建一个ASP.NET应用程序(使用C#.net作为语言),并将在Windows Server 2003操作系统上托管,SQL Server 2008作为数据库.
我们计划将增量数据库备份带到磁盘,并在必要时使用它们进行恢复.
如果你有什么想法的话,请你指导我吗?
如果您还可以提供参考文档或Web引用(如果需要),那将会很棒.
我想用C#备份SQL Server数据库.我编写了一个备份数据库的存储过程:
CREATE PROCEDURE WINC_BackupDatabase
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
BACKUP DATABASE WINC_kentico
TO DISK = 'G:\MSSQL10.MSSQLSERVER\MSSQL\Backup\WINC_kentico_' + NOW() + '.bak'
WITH NOINIT
END
GO
Run Code Online (Sandbox Code Playgroud)
在第10行中,我设置了备份的路径.我想在文件名末尾添加当前的DateTime.如何在文件名末尾设置DataTime?
最好的祝福
嘿,不是100%肯定这个错误意味着什么.
% for f in "*" ; do cp $f ../backup/backup$f ; done
cp: ../backup/backup* not found
Run Code Online (Sandbox Code Playgroud)
目的是将所有文件复制到文件夹中的备份文件夹中,并将文件重命名为备份.
我需要使用pg_dump命令备份本地服务器两个postgresql数据库到远程主机,而不是使用ssh.本地服务器和远程主机都安装postgresql.
我该怎么做 ?
如:
数据库名称:A,B
本地服务器:1.2.3.4
远程服务器:5.6.7.8
谢谢!
我有一个mercurial存储库c:\Dropbox\code.我使用以下方法在本地创建了此repo的克隆:
hg clone -U c:\Dropbox\code c:\GoogleDrive\codeBackup
Run Code Online (Sandbox Code Playgroud)
这个裸仓库仅用于备份.我经常将更改推送到codeBackup.此外,这两个目录都在云中备份(分别是Dropbox和Google Drive).
如果我的repo code变得腐败,codeBackuprepo会自动损坏,因为克隆操作使用硬链接到原始repo?因此,我的双云备份策略将毫无用处?
PS:我知道回退选项是使用云服务来恢复以前已知的良好状态.
更新:在挖掘之后,我将添加这些作为参考
问题是,如果'hg clone'完成(没有--pull选项),那么目标和源repo通过使用硬链接1共享.hg/store内的文件,如果文件系统提供了硬链接功能(NTFS) .
Mercurial旨在打破.hg中的这些硬链接,如果对其中一个克隆进行提交或推送.前提条件是,如果mercurial询问"此文件中有多少个硬链接?",Windows API mercurial正在使用应该给出正确的答案.
我们发现这个答案几乎总是错误的(如果hg进程在一台Windows计算机上运行且存储库文件在另一台Windows计算机上的网络共享上,则总是报告1,即使它实际上> 1).
要避免硬链接(使用--pull):
hg clone -U --pull c:\Dropbox\code c:\GoogleDrive\codeBackup
要检查硬链接:
fsutil hardlink list <file> :显示所有硬链接 <file>
find . -links +1 :显示硬链接> 1的所有文件
ls -l :显示每个文件旁边的硬链接计数
我试图每隔7天通过python将整个目录从一个位置复制到另一个位置,以基本上进行备份......
备份文件夹/树文件夹可能存在也可能不存在,因此如果文件夹不存在则需要创建该文件夹,这就是为什么我认为distutils更适合shutil
注意我是否更好地使用批处理或其他语言进行上述工作?
以下代码:
import distutils
distutils.dir_util.copy_tree("C:\Users\A\Desktop\Test", "C:\Users\A\Desktop\test_new", preserve_mode=1, preserve_times=1, preserve_symlinks=0, update=1, verbose=0, dry_run=0)
Run Code Online (Sandbox Code Playgroud)
返回:
Traceback (most recent call last):
File "C:\Users\A\Desktop\test.py", line 2, in <module>
distutils.dir_util.copy_tree("C:\Users\A\Desktop\test", "C:\Users\A\Desktop\test2", preserve_mode=1, preserve_times=1, preserve_symlinks=0, update=1, verbose=0, dry_run=0)
AttributeError: 'module' object has no attribute 'dir_util'
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
提前谢谢 - Hyflex
您好stackoverflow社区,
我的设置:
问题:
创建GitLab的备份时,我通常转到gitlab目录并使用以下命令:
bundle exec rake gitlab:backup:create RAILS_ENV=production
Run Code Online (Sandbox Code Playgroud)
效果很好。但是,我昨天尝试了此操作,由于未知原因,系统告诉我找不到命令捆绑包。因此,我向Google寻求帮助。Web上的一些文章提到要重新安装Ruby和Bundler,我发现这很奇怪,因为Omnibus GitLab附带了它们自己的版本(并且以前可以使用)。尽管如此,我还是这样做了,当运行上面的命令时,我现在得到消息:
Could not locate Gemfile or .bundle/ directory
Run Code Online (Sandbox Code Playgroud)
即使我在上述备份命令中提供了捆绑的路径,Ruby 2.4.2和Ruby 2.3.6也会发生这种情况。现在,有一些建议,我必须将Gemfile复制(我想这意味着捆绑了它吗?)到特定位置,但是我不知道哪个位置。细节冲突或模糊。所以,我被困住了。
我不太确定,首先在Omnibus GitLab之外摆弄Ruby版本是正确的解决方案。只是感觉不对,但是我没有主意。
谁能帮我吗?