<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sybase数据库技术，数据库恢复专家 &#187; 备份</title>
	<atom:link href="http://www.dbainfo.net/tag/%e5%a4%87%e4%bb%bd/feed" rel="self" type="application/rss+xml" />
	<link>https://www.dbainfo.net</link>
	<description>提供Sybase ASE及Sybase SQL Anywhere数据库修复服务，电话：13811580958(微信)，QQ：289965371！We have many years of experience in recovering data from damanged Sybase devices. Contact us by Phone: +86 13811580958 Wechat: 13811580958 Email: 289965371@qq.com</description>
	<lastBuildDate>Sat, 14 Jun 2025 16:28:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>数据库备份策略中删除N天前的备份文件</title>
		<link>https://www.dbainfo.net/database-backup-strategy-delete-n-days-ago-files-for.htm</link>
		<comments>https://www.dbainfo.net/database-backup-strategy-delete-n-days-ago-files-for.htm#comments</comments>
		<pubDate>Tue, 19 Oct 2010 10:42:10 +0000</pubDate>
		<dc:creator>dbainfo</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[Sybase ASE]]></category>
		<category><![CDATA[bat]]></category>
		<category><![CDATA[备份]]></category>
		<category><![CDATA[脚本]]></category>

		<guid isPermaLink="false">http://www.dbainfo.net/?p=355</guid>
		<description><![CDATA[在数据库备份策略中，因为磁盘空间所限，需要删除N天前的备份文件。 本博客中有篇：实现连续N次备份数据库的脚本 其中有删除七日前的数据库备份文件的命令。那篇博客中利用了vbs处理日期的方法。但是，有点不妥当的地方，假如近七日内没有备份成功，或者说近七日内没有任何备份文件。如果删除了七日前的备份文件，那么就没有任何一个有效的备份文件了。这在数据库备份策略中是尤其需要注意的。 &#160; 下面的命令不仅仅能够删除4天前的备份文件，而且能够保证有4天的备份文件。说白了也就是保留4份备份文件。呵呵。 del /f d:\123.txt &#38;&#38; FOR /F &#34;usebackq tokens=1,2,3*&#34; %i IN (`dir E:\oracle\oradata\orcl /A-D /O-D ^&#124; find &#34;:&#34;`) DO @echo %i %j=%l &#62;&#62;d:\123.txt for /F &#34;usebackq skip=5 delims== tokens=1*&#34; %i in (d:\123.txt) do echo del /f %j &#160; 注释：skip=5表示跳过前4行记录。d:\123.txt是保存临时数据的文件，可以改成其他，比如： %temp%\123.txt 目录E:\oracle\oradata\orcl为备份文件所在路径。 如果放在bat脚本文件中执行上面的2行命令。需要将 %i之类的替换成 %%i 将上面2行命令的第2行中加粗字体的echo去掉，就能够实现删除操作了。 为了保险起见，先打印出删除文件的语句。 另：关于for循环命令的用法可以参考：CMD命令行:for命令详解[转] &#160; &#160; &#160; &#160; [...]]]></description>
			<content:encoded><![CDATA[<p>在数据库备份策略中，因为磁盘空间所限，需要删除N天前的备份文件。</p>
<p>本博客中有篇：<a href="https://www.dbainfo.net/script-backup-db-many-times.htm" title="实现连续N次备份数据库的脚本">实现连续N次备份数据库的脚本</a></p>
<p>其中有删除七日前的数据库备份文件的命令。那篇博客中利用了vbs处理日期的方法。但是，有点不妥当的地方，假如近七日内没有备份成功，或者说近七日内没有任何备份文件。如果删除了七日前的备份文件，那么就没有任何一个有效的备份文件了。这在数据库备份策略中是尤其需要注意的。</p>
<p>&nbsp;</p>
<p>下面的命令不仅仅能够删除4天前的备份文件，而且能够保证有4天的备份文件。说白了也就是保留4份备份文件。呵呵。</p>
<p>del /f d:\123.txt &amp;&amp; FOR /F &quot;usebackq tokens=1,2,3*&quot; %i IN (`dir E:\oracle\oradata\orcl /A-D /O-D ^| find &quot;:&quot;`) DO @echo %i %j=%l &gt;&gt;d:\123.txt <br />
	for /F &quot;usebackq skip=5 delims== tokens=1*&quot; %i in (d:\123.txt) do <strong>echo </strong>del /f %j</p>
<p>&nbsp;</p>
<p>注释：skip=5表示跳过前4行记录。d:\123.txt是保存临时数据的文件，可以改成其他，比如： %temp%\123.txt</p>
<p>目录E:\oracle\oradata\orcl为备份文件所在路径。</p>
<p>如果放在bat脚本文件中执行上面的2行命令。需要将 %i之类的替换成 %%i</p>
<p>将上面2行命令的第2行中加粗字体的echo去掉，就能够实现删除操作了。 为了保险起见，先打印出删除文件的语句。</p>
<p>另：关于for循环命令的用法可以参考：<a href="https://www.dbainfo.net/windows-dos-command-for-loop-control-advance.htm" style="display: block; color: rgb(255, 2, 66);" title="CMD命令行:for命令详解[转]">CMD命令行:for命令详解[转]</a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<div style="clear: both; margin: 10px 0pt; border: 1px dashed rgb(153, 153, 153); font-size: 12px; padding: 5px 10px;">
<li>本文链接地址：<a href="https://www.dbainfo.net/database-backup-strategy-delete-n-days-ago-files-for.htm">https://www.dbainfo.net/database-backup-strategy-delete-n-days-ago-files-for.htm</a>；</li>
<li>本文为dbainfo个人原创，请在尊重作者劳动成果的前提下进行转载；</li>
<li>转载务必注明原始出处 : <a href="https://www.dbainfo.net/">Sybase数据库技术，数据库恢复专家</a>；</li>
<li>对《<a href="https://www.dbainfo.net/database-backup-strategy-delete-n-days-ago-files-for.htm">数据库备份策略中删除N天前的备份文件</a>》有何疑问或见解，请在本文下方发表；</li>
<li>对网站还有其他问题或建议，请提交在<a href="https://www.dbainfo.net/messages" target="_blank">留言板</a>，谢谢！</li>
</div>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2010-08-11 -- <a href="https://www.dbainfo.net/sybase-ase-auto-backup-shell-scripts-at-unix-linux.htm" title="sybase ASE在unix&#038;linux上的自动备份脚本">sybase ASE在unix&#038;linux上的自动备份脚本</a> (1)</li><li>2009-11-18 -- <a href="https://www.dbainfo.net/script-backup-db-many-times.htm" title="实现连续N次备份数据库的脚本">实现连续N次备份数据库的脚本</a> (0)</li><li>2011-11-17 -- <a href="https://www.dbainfo.net/get-oracle_home-by-reg-query.htm" title="使用bat批处理读取注册表来提取Oracle环境变量的方法">使用bat批处理读取注册表来提取Oracle环境变量的方法</a> (0)</li><li>2010-12-19 -- <a href="https://www.dbainfo.net/imgrate-ase-database-referencial-table-scripts-execute-twice.htm" title="迁移ASE数据库的表之间存在引用时脚本执行情况">迁移ASE数据库的表之间存在引用时脚本执行情况</a> (0)</li><li>2010-12-15 -- <a href="https://www.dbainfo.net/windows-cmd-bat-extract-date-time-format.htm" title="windows cmd下的date，time格式的提取">windows cmd下的date，time格式的提取</a> (0)</li><li>2010-10-19 -- <a href="https://www.dbainfo.net/windows-dos-command-for-loop-control-advance.htm" title="[转]CMD命令行:for命令详解">[转]CMD命令行:for命令详解</a> (0)</li><li>2010-09-12 -- <a href="https://www.dbainfo.net/sybase-ase-auto-create-database-login-user-scripts.htm" title="Sybase ASE自动创建数据库、登录以及用户的脚本">Sybase ASE自动创建数据库、登录以及用户的脚本</a> (0)</li><li>2010-08-09 -- <a href="https://www.dbainfo.net/sqlserver2008-backup-database-with-compression-options.htm" title="sql server 2008中的备份压缩特性">sql server 2008中的备份压缩特性</a> (0)</li><li>2010-07-27 -- <a href="https://www.dbainfo.net/windows-command-batch-notes.htm" title="windows的cmd命令行备忘，bat命令">windows的cmd命令行备忘，bat命令</a> (0)</li><li>2010-07-22 -- <a href="https://www.dbainfo.net/one-problem-about-sqlserver-backup-strategy.htm" title="关于sqlserver2005备份策略的一个问题">关于sqlserver2005备份策略的一个问题</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>https://www.dbainfo.net/database-backup-strategy-delete-n-days-ago-files-for.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>sybase ASE在unix&amp;linux上的自动备份脚本</title>
		<link>https://www.dbainfo.net/sybase-ase-auto-backup-shell-scripts-at-unix-linux.htm</link>
		<comments>https://www.dbainfo.net/sybase-ase-auto-backup-shell-scripts-at-unix-linux.htm#comments</comments>
		<pubDate>Wed, 11 Aug 2010 06:00:54 +0000</pubDate>
		<dc:creator>dbainfo</dc:creator>
				<category><![CDATA[Sybase ASE]]></category>
		<category><![CDATA[Unix&Linux]]></category>
		<category><![CDATA[备份]]></category>
		<category><![CDATA[脚本]]></category>

		<guid isPermaLink="false">http://www.dbainfo.net/?p=827</guid>
		<description><![CDATA[以下操作均由sybase用户来做： 新建一个脚本文件，譬如/sybase/script/dump.sh 类容如下 $ cat dump.sh /sybase/OCS-12_5/bin/isql -Usa -P******* -S******* -i /sybase/script/dump.sql -o /sybse/script/dump.log mv /caiwubackup/backup/cwbase1.bak /caiwubackup/backup/cwbase1_`date +%Y%m%d`.bak mv /caiwubackup/backup/cwbase2.bak /caiwubackup/backup/cwbase2_`date +%Y%m%d`.bak mv /caiwubackup/backup/cwbase3.bak /caiwubackup/backup/cwbase3_`date +%Y%m%d`.bak mv /caiwubackup/backup/cwmaster.bak /caiwubackup/backup/cwmaster_`date +%Y%m%d`.bak mv /caiwubackup/backup/master.bak /caiwubackup/backup/master_`date +%Y%m%d`.bak （注意：`号是在键盘左上角和波浪线在一起的那个键上，不是单引号） 在同一个目录下新建脚本dump.sql 类容如下 $ cat dump.sql dump database cwbase1 to &#34;/caiwubackup/backup/cwbase1.bak&#34; go dump database cwbase2 to &#34;/caiwubackup/backup/cwbase2.bak&#34; go dump database cwbase3 [...]]]></description>
			<content:encoded><![CDATA[<p>以下操作均由sybase用户来做：</p>
<p>	新建一个脚本文件，譬如/sybase/script/dump.sh<br />
	类容如下</p>
<blockquote>
<p>$ cat dump.sh<br />
		/sybase/OCS-12_5/bin/isql -Usa -P******* -S******* -i /sybase/script/dump.sql -o /sybse/script/dump.log<br />
		mv /caiwubackup/backup/cwbase1.bak /caiwubackup/backup/cwbase1_`date +%Y%m%d`.bak<br />
		mv /caiwubackup/backup/cwbase2.bak /caiwubackup/backup/cwbase2_`date +%Y%m%d`.bak<br />
		mv /caiwubackup/backup/cwbase3.bak /caiwubackup/backup/cwbase3_`date +%Y%m%d`.bak<br />
		mv /caiwubackup/backup/cwmaster.bak /caiwubackup/backup/cwmaster_`date +%Y%m%d`.bak<br />
		mv /caiwubackup/backup/master.bak /caiwubackup/backup/master_`date +%Y%m%d`.bak</p>
</blockquote>
<p>（注意：`号是在键盘左上角和波浪线在一起的那个键上，不是单引号）</p>
<p>
	在同一个目录下新建脚本dump.sql<br />
	类容如下</p>
<blockquote>
<p>$ cat dump.sql</p>
<p>dump database cwbase1 to &quot;/caiwubackup/backup/cwbase1.bak&quot;<br />
		go<br />
		dump database cwbase2 to &quot;/caiwubackup/backup/cwbase2.bak&quot;<br />
		go<br />
		dump database cwbase3 to &quot;/caiwubackup/backup/cwbase3.bak&quot;<br />
		go<br />
		dump database cwmaster to &quot;/caiwubackup/backup/cwmaster.bak&quot;<br />
		go<br />
		dump database master to &quot;/caiwubackup/backup/master.bak&quot;<br />
		go</p>
</blockquote>
<p>制定一个定时计划，每天晚上23点30开始备份数据库</p>
<blockquote>
<p>$crontab -e<br />
		30&nbsp; 23 *&nbsp; *&nbsp; *&nbsp; /sybase/script/dump.sh</p>
</blockquote>
<p>
	根据你本机的实际情况，修改相关数据库名称和路径。</p>
<div style="clear: both; margin: 10px 0pt; border: 1px dashed rgb(153, 153, 153); font-size: 12px; padding: 5px 10px;">
<li>本文链接地址：<a href="https://www.dbainfo.net/sybase-ase-auto-backup-shell-scripts-at-unix-linux.htm">https://www.dbainfo.net/sybase-ase-auto-backup-shell-scripts-at-unix-linux.htm</a>；</li>
<li>本文为dbainfo个人原创，请在尊重作者劳动成果的前提下进行转载；</li>
<li>转载务必注明原始出处 : <a href="https://www.dbainfo.net/">Sybase数据库技术，数据库恢复专家</a>；</li>
<li>对《<a href="https://www.dbainfo.net/sybase-ase-auto-backup-shell-scripts-at-unix-linux.htm">sybase ASE在unix&#038;linux上的自动备份脚本</a>》有何疑问或见解，请在本文下方发表；</li>
<li>对网站还有其他问题或建议，请提交在<a href="https://www.dbainfo.net/messages" target="_blank">留言板</a>，谢谢！</li>
</div>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2010-10-19 -- <a href="https://www.dbainfo.net/database-backup-strategy-delete-n-days-ago-files-for.htm" title="数据库备份策略中删除N天前的备份文件">数据库备份策略中删除N天前的备份文件</a> (0)</li><li>2009-11-18 -- <a href="https://www.dbainfo.net/script-backup-db-many-times.htm" title="实现连续N次备份数据库的脚本">实现连续N次备份数据库的脚本</a> (0)</li><li>2010-12-19 -- <a href="https://www.dbainfo.net/imgrate-ase-database-referencial-table-scripts-execute-twice.htm" title="迁移ASE数据库的表之间存在引用时脚本执行情况">迁移ASE数据库的表之间存在引用时脚本执行情况</a> (0)</li><li>2010-09-12 -- <a href="https://www.dbainfo.net/sybase-ase-auto-create-database-login-user-scripts.htm" title="Sybase ASE自动创建数据库、登录以及用户的脚本">Sybase ASE自动创建数据库、登录以及用户的脚本</a> (0)</li><li>2010-08-09 -- <a href="https://www.dbainfo.net/sqlserver2008-backup-database-with-compression-options.htm" title="sql server 2008中的备份压缩特性">sql server 2008中的备份压缩特性</a> (0)</li><li>2010-07-22 -- <a href="https://www.dbainfo.net/one-problem-about-sqlserver-backup-strategy.htm" title="关于sqlserver2005备份策略的一个问题">关于sqlserver2005备份策略的一个问题</a> (0)</li><li>2010-06-21 -- <a href="https://www.dbainfo.net/ase-cross-platform-remote-backup.htm" title="ASE跨平台远程备份">ASE跨平台远程备份</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>https://www.dbainfo.net/sybase-ase-auto-backup-shell-scripts-at-unix-linux.htm/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>sql server 2008中的备份压缩特性</title>
		<link>https://www.dbainfo.net/sqlserver2008-backup-database-with-compression-options.htm</link>
		<comments>https://www.dbainfo.net/sqlserver2008-backup-database-with-compression-options.htm#comments</comments>
		<pubDate>Mon, 09 Aug 2010 09:58:56 +0000</pubDate>
		<dc:creator>dbainfo</dc:creator>
				<category><![CDATA[SQL SERVER]]></category>
		<category><![CDATA[压缩]]></category>
		<category><![CDATA[备份]]></category>

		<guid isPermaLink="false">http://www.dbainfo.net/?p=843</guid>
		<description><![CDATA[sql server 2005不支持备份压缩。很奇怪怎么不支持呢？ sybase在ASE12.x都支持备份压缩了。 自sql server 2008才开始支持备份压缩。虽然只有 SQL Server 2008 Enterprise 及更高版本支持创建压缩的备份，但从 SQL Server 2008 开始，每个版本都可以还原压缩的备份。 限制 压缩的备份具有以下限制条件： 压缩的备份和未压缩的备份不能共存于一个媒体集中。 早期版本的 SQL Server 无法读取压缩的备份。 NTbackup 无法共享包含压缩的 SQL Server 备份的磁带。 &#160; 压缩备份的性能影响 因为相同数据的压缩的备份比未压缩备份小，所以压缩备份所需的设备 I/O 通常较少，因此通常可大大提高备份速度。 默 认情况下，压缩会显著增加 CPU 的使用，并且压缩进程所消耗的额外 CPU 可能会对并发操作产生不利影响。因此，您可能需要在会话中创建低优先级的压缩备份，其 CPU 使用率受资源调控器限制。有关详细信息，请参阅如何使用资源调控器限制备份压缩的 CPU 使用量 (Transact-SQL)。 若要很好地了解备份 I/O 的性能表现，可以通过评估以下类型的性能计数器来分别考察进入设备或来自设备的备份 I/O： Windows I/O 性能计数器，例如物理磁盘计数器 SQLServer:Backup Device 对象的 Device [...]]]></description>
			<content:encoded><![CDATA[<p>sql server 2005不支持备份压缩。很奇怪怎么不支持呢？ sybase在ASE12.x都支持备份压缩了。</p>
<p>自sql server 2008才开始支持备份压缩。虽然只有 SQL Server 2008 Enterprise 及更高版本支持创建压缩的备份，但从 SQL Server 2008 开始，每个版本都可以还原压缩的备份。</p>
<p><span style="font-size: medium;"><strong>限制</strong> </span> <br />
	压缩的备份具有以下限制条件：</p>
<p>压缩的备份和未压缩的备份不能共存于一个媒体集中。</p>
<p>早期版本的 SQL Server 无法读取压缩的备份。</p>
<p>NTbackup 无法共享包含压缩的 SQL Server 备份的磁带。</p>
<p>&nbsp;</p>
<p><span style="font-size: medium;"><strong>压缩备份的性能影响</strong> </span> <br />
	因为相同数据的压缩的备份比未压缩备份小，所以压缩备份所需的设备 I/O 通常较少，因此通常可大大提高备份速度。</p>
<p>默 认情况下，压缩会显著增加 CPU 的使用，并且压缩进程所消耗的额外 CPU 可能会对并发操作产生不利影响。因此，您可能需要在会话中创建低优先级的压缩备份，其 CPU 使用率受资源调控器限制。有关详细信息，请参阅如何使用资源调控器限制备份压缩的 CPU 使用量 (Transact-SQL)。</p>
<p>若要很好地了解备份 I/O 的性能表现，可以通过评估以下类型的性能计数器来分别考察进入设备或来自设备的备份 I/O：</p>
<p>Windows I/O 性能计数器，例如物理磁盘计数器</p>
<p>SQLServer:Backup Device 对象的 Device Throughput Bytes/sec 计数器</p>
<p>SQLServer:Databases 对象的 Backup/Restore Throughput/sec 计数器</p>
<p>有关 Windows 计数器的信息，请参阅 Windows 帮助。有关如何使用 SQL Server 计数器的信息，请参阅使用 SQL Server 对象。</p>
<p><span id="more-843"></span></p>
<p><span style="text-decoration: underline;"><span style="font-size: medium;"><strong>&nbsp;配置</strong> </span> <br />
	</span> <span style="text-decoration: underline;"><strong>安装</strong> 时，默认情况</span> 下关闭了备份压缩。备份压缩的默认行为是由备份压缩默认选项服务器级配置选项定义的。您可以在创建单个备份或计划一系列例行备份时覆盖服务器级默认设置。</p>
<p>更改服务器级默认设置</p>
<p>Transact-SQL<br />
	使用 sp_configure 存储过程设置备份压缩默认设置的值，然后执行 RECONFIGURE 语句。</p>
<p>SQL Server Management Studio<br />
	使用&ldquo;服务器属性&rdquo;对话框的&ldquo;<strong>数据库</strong> 设置&rdquo;页。有关详细信息，请参阅如何查看或更改备份压缩默认选项 (SQL Server Management Studio)。</p>
<blockquote>
<p>--使用TSQL配置数据库备份压缩<br />
		USE MASTER <br />
		GO <br />
		EXEC sp_configure &#39;backup compression default&#39;, &#39;1&#39; <br />
		GO <br />
		RECONFIGURE WITH OVERRIDE <br />
		GO</p>
</blockquote>
<p>&nbsp;</p>
<p><span style="font-size: medium;"><strong>覆盖备份压缩默认设置</strong> </span></p>
<p>您可以更改单个备份、备份作业或日志传送配置的备份压缩行为。</p>
<p>1.Transact-SQL<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 对于给定备份，可以在 BACKUP 语句中使用 WITH NO_COMPRESSION 或 WITH COMPRESSION。<br />
	对于日志传送配置，可以使用 sp_add_log_shipping_primary_database sp_change_log_shipping_primary_database (Transact-SQL) 控制日志备份的备份压缩行为。</p>
<p>2.SQL Server Management Studio<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 您可以通过在以下任意对话框中指定&ldquo;压缩备份&rdquo;或&ldquo;不压缩备份&rdquo;来覆盖服务器备份压缩默认设置：</p>
<p>备份数据库（&ldquo;选项&rdquo;页）<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 备份数据库时，可以控制单个数据库、文件或日志备份的备份压缩。</p>
<p>维护计划向导<br />
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 通过维护计划向导，您可以控制所计划的每组类型为完全或差异的数据库备份或日志备份的备份压缩。</p>
<p>3.SQL Server 2008 Integration Services (SSIS) 备份数据库任务<br />
	您可以在创建用于备份单个数据库或多个数据库的包时控制备份压缩行为。</p>
<p>日志传送事务日志备份设置</p>
<p>您可以控制日志备份的备份压缩行为。<span style="font-size: medium;"> </span></p>
<p>&nbsp;</p>
<p><span style="font-size: medium;"><strong>压缩率</strong> </span> <br />
	若要计算备份的压缩率，请使用 backupset 历史记录表的 backup_size 列和 compressed_backup_size 列中有关此备份的值，如下所示：</p>
<p>backup_size:compressed_backup_size</p>
<p>例如，3:1 的压缩率表明您可以节省大约 66% 的磁盘空间。若要查询这些列，可以使用以下 Transact-SQL 语句：</p>
<p>SELECT backup_size/compressed_backup_size FROM msdb..backupset;</p>
<p>压缩备份的压缩率取决于所压缩的数据。有多种因素会影响所获得的压缩率。</p>
<p>主要因素包括：</p>
<p style="padding-left: 30px;">1.数据类型。<br />
	2.字符数据的压缩率要高于其他类型的数据。</p>
<p style="padding-left: 30px;">3.页面上各行间数据的一致性。</p>
<p>
	通常，如果某页包含多个行，而其中的某个字段包含相同的值，则该值可获得较大的压缩。相反，对于包含随机数据或者每页只有一个很大的行的数据库，压缩备份的大小几乎与未压缩的备份相同。</p>
<p>&nbsp;</p>
<p><span style="font-size: medium;"><strong>数据是否加密。</strong> </span> <br />
	与同样的未加密数据相比，加密数据的压缩程度要小很多。如果使用透明数据加密来加密整个数据库，则压缩备份不会将数据库大小减小很多，甚至根本不会减小。</p>
<p>&nbsp;</p>
<p><span style="font-size: medium;"><strong>数据库是否压缩。</strong> </span> <br />
	如果压缩数据库，则压缩备份不会将大小减小很多，甚至根本不会减小。</p>
<p>&nbsp;</p>
<p><span style="font-size: large;"><strong>测试例子：</strong> </span></p>
<blockquote>
<p>--下面的TSQL代码可以用来对SampleDB 数据库执行完全的压缩备份。完成这个压缩完全备份所花费的时间是6.910秒。　<br />
		BACKUP DATABASE SAMPLEDB<br />
		TO DISK = N&#39;D:\DatabaseBackups\SampleDB_Compressed.Bak&#39;<br />
		WITH INIT, STATS = 20</p>
</blockquote>
<p>&nbsp;</p>
<p>你可以运行下面的TSQL代码在压缩字段中查找一个值。如果这个值是1，那么这意味着这个数据库备份是压缩了的，如果它是0，那么它意味着这个数据库备份没有被压缩或者它是一个本地备份。</p>
<blockquote>
<p>RESTORE&nbsp;HEADERONLY <br />
		FROM&nbsp;DISK&nbsp;=&nbsp;N&#39;D:\DatabaseBackups\SampleDB_Compressed.Bak&#39;</p>
</blockquote>
<p>&nbsp;</p>
<p>注意：数据库备份压缩显著地提高了CPU的使用，并因此在执行数据库备份时它对其它的数据库操作有轻微的影响。你需要仔细地计划数据库备份工作可以执行备份的这个时间。</p>
<p><strong>恢复一个压缩的数据库备份</strong></p>
<p>下面的TSQL代码将从压缩的备份恢复SampleDB数据库，它的完成时间是8.565秒。</p>
<blockquote>
<p>RESTORE FILELISTONLY<br />
		FROM DISK = N&#39;D:\DatabaseBackups\SampleDB_Compressed.Bak&#39;<br />
		GO<br />
		RESTORE DATABASE SampleDB<br />
		FROM DISK = N&#39;D:\DatabaseBackups\SampleDB_Compressed.Bak&#39;<br />
		WITH MOVE N&#39;SampleDB_Data&#39;<br />
		TO N&#39;D:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\SampleDB.mdf&#39;,<br />
		MOVE N&#39;SampleDB_Log&#39;<br />
		TO N&#39;D:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\SampleDB_1.ldf&#39;,<br />
		RECOVERY,<br />
		STATS = 20<br />
		GO</p>
</blockquote>
<p>&nbsp;</p>
<p align="left"><strong>恢复未压缩的数据库备份</strong></p>
<p>下面的TSQL代码将从未压缩的备份恢复SampleDB 数据库，它的完成时间是15.9891秒。</p>
<blockquote>
<p>RESTORE FILELISTONLY <br />
		FROM DISK = N&#39;D:\DatabaseBackups\SampleDB_Uncompressed.Bak&#39; <br />
		GO <br />
		RESTORE DATABASE SampleDB <br />
		FROM DISK = N&#39;D:\DatabaseBackups\SampleDB_Uncompressed.Bak&#39; <br />
		WITH MOVE N&#39;SampleDB_Data&#39; <br />
		TO N&#39;D:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\SampleDB.mdf&#39;, <br />
		MOVE N&#39;SampleDB_Log&#39; <br />
		TO N&#39;D:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\SampleDB_1.ldf&#39;, <br />
		RECOVERY, <br />
		STATS = 20 <br />
		GO</p>
</blockquote>
<p>&nbsp;</p>
<p>用来评估数据库备份压缩的性能计算器(Performance Counters)</p>
<p>处理器对象的%处理器时间计算器。</p>
<p>物理磁盘对象的%磁盘时间计算器&amp; Avg 磁盘队列长度。</p>
<p>SQLServer 备份设备对象的设备吞吐量字节/秒计算器。</p>
<p>SQLServer数据库对象的备份/恢复吞吐量/秒计算器。</p>
<p>&nbsp;</p>
<div class="story-content">
<p>&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;<br />
		&mdash;&mdash;&mdash; 本文为andkylee个人原创，请在尊重作者劳动成果的前提下进行转载；<br />
		&mdash;&mdash;&mdash; 转载务必注明原始出处 : <a href="../"><font color="#f26522">http://www.dbainfo.net</font></a><br />
		&mdash;&mdash;&mdash; 关键字： sqlserver 2008 R2 备份 压缩 backup compression<br />
		&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;</p>
</div>
<div style="clear: both; margin: 10px 0pt; border: 1px dashed rgb(153, 153, 153); font-size: 12px; padding: 5px 10px;">
<li>本文链接地址：<a href="https://www.dbainfo.net/sqlserver2008-backup-database-with-compression-options.htm">https://www.dbainfo.net/sqlserver2008-backup-database-with-compression-options.htm</a>；</li>
<li>本文为dbainfo个人原创，请在尊重作者劳动成果的前提下进行转载；</li>
<li>转载务必注明原始出处 : <a href="https://www.dbainfo.net/">Sybase数据库技术，数据库恢复专家</a>；</li>
<li>对《<a href="https://www.dbainfo.net/sqlserver2008-backup-database-with-compression-options.htm">sql server 2008中的备份压缩特性</a>》有何疑问或见解，请在本文下方发表；</li>
<li>对网站还有其他问题或建议，请提交在<a href="https://www.dbainfo.net/messages" target="_blank">留言板</a>，谢谢！</li>
</div>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2014-08-23 -- <a href="https://www.dbainfo.net/online-compress-iq-dumpfile-by-pipefile.htm" title="一种使用管道文件在线压缩IQ备份文件的方法">一种使用管道文件在线压缩IQ备份文件的方法</a> (0)</li><li>2010-10-19 -- <a href="https://www.dbainfo.net/database-backup-strategy-delete-n-days-ago-files-for.htm" title="数据库备份策略中删除N天前的备份文件">数据库备份策略中删除N天前的备份文件</a> (0)</li><li>2010-08-11 -- <a href="https://www.dbainfo.net/sybase-ase-auto-backup-shell-scripts-at-unix-linux.htm" title="sybase ASE在unix&#038;linux上的自动备份脚本">sybase ASE在unix&#038;linux上的自动备份脚本</a> (1)</li><li>2010-07-22 -- <a href="https://www.dbainfo.net/one-problem-about-sqlserver-backup-strategy.htm" title="关于sqlserver2005备份策略的一个问题">关于sqlserver2005备份策略的一个问题</a> (0)</li><li>2010-06-21 -- <a href="https://www.dbainfo.net/ase-cross-platform-remote-backup.htm" title="ASE跨平台远程备份">ASE跨平台远程备份</a> (0)</li><li>2009-11-18 -- <a href="https://www.dbainfo.net/script-backup-db-many-times.htm" title="实现连续N次备份数据库的脚本">实现连续N次备份数据库的脚本</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>https://www.dbainfo.net/sqlserver2008-backup-database-with-compression-options.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>关于sqlserver2005备份策略的一个问题</title>
		<link>https://www.dbainfo.net/one-problem-about-sqlserver-backup-strategy.htm</link>
		<comments>https://www.dbainfo.net/one-problem-about-sqlserver-backup-strategy.htm#comments</comments>
		<pubDate>Thu, 22 Jul 2010 09:34:53 +0000</pubDate>
		<dc:creator>dbainfo</dc:creator>
				<category><![CDATA[SQL SERVER]]></category>
		<category><![CDATA[sqlserver]]></category>
		<category><![CDATA[with copy_only]]></category>
		<category><![CDATA[备份]]></category>

		<guid isPermaLink="false">http://www.dbainfo.net/?p=789</guid>
		<description><![CDATA[有这样一个备份策略：周一对某用户数据库进行完全备份，周二，周三一直到周日都进行日志备份。此策略简单易于说明本文的问题。 假如在周五的时候，其它地方需要使用此用户库的所有数据，而又不想拷贝周一的备份和后续的多个日志备份文件。此时，如何进行数据库全备呢？ 如果做全备的话，则可能对原本运行正常的备份策略产生影响。此应用场景下，对用户库做了全备后，后续的周六、周日的日志备份所对应的基点就不是周一的全备而是周五的全备了。如果还按照原本的备份策略，则势必会出现问题。 如何在做数据库全备的时候，不影响原来的备份策略呢？ 解决办法： 在sql server 2005 中有个参数 copy_only。 backup database andkylee to disk=&#39;d:\andkylee.bak&#39; with copy_only 已为数据库 &#39;andkylee&#39;，文件 &#39;andkylee&#39; (位于文件 2 上)处理了 17296 页。 已为数据库 &#39;andkylee&#39;，文件 &#39;andkylee_log&#39; (位于文件 2 上)处理了 1 页。 BACKUP DATABASE 成功处理了 17297 页，花费 5.790 秒(24.471 MB/秒)。 成功！ &#160; &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- &#8212;- 本文为andkylee个人原创，请在尊重作者劳动成果的前提下进行转载； &#8212;- 转载务必注明原始出处 : http://www.dbainfo.net &#8212;- 关键字：sql server 2005 备份 [...]]]></description>
			<content:encoded><![CDATA[<p>有这样一个备份策略：周一对某用户数据库进行完全备份，周二，周三一直到周日都进行日志备份。此策略简单易于说明本文的问题。</p>
<p>假如在周五的时候，其它地方需要使用此用户库的所有数据，而又不想拷贝周一的备份和后续的多个日志备份文件。此时，如何进行数据库全备呢？</p>
<p>如果做全备的话，则可能对原本运行正常的备份策略产生影响。此应用场景下，对用户库做了全备后，后续的周六、周日的日志备份所对应的基点就不是周一的全备而是周五的全备了。如果还按照原本的备份策略，则势必会出现问题。</p>
<p>如何在做数据库全备的时候，不影响原来的备份策略呢？</p>
<p><strong>解决办法：</strong></p>
<p>在sql server 2005 中有个参数 copy_only。</p>
<p><strong>backup database andkylee to disk=&#39;d:\andkylee.bak&#39;<span style="font-size: medium;"> with copy_only</span> </strong></p>
<p>已为数据库 &#39;andkylee&#39;，文件 &#39;andkylee&#39; (位于文件 2 上)处理了 17296 页。<br />
	已为数据库 &#39;andkylee&#39;，文件 &#39;andkylee_log&#39; (位于文件 2 上)处理了 1 页。<br />
	BACKUP DATABASE 成功处理了 17297 页，花费 5.790 秒(24.471 MB/秒)。</p>
<p>成功！</p>
<p>&nbsp;</p>
<p>&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;-<br />
	&mdash;- 本文为andkylee个人原创，请在尊重作者劳动成果的前提下进行转载；<br />
	&mdash;- 转载务必注明原始出处 :<a href="../" target="_blank" title="http://www.dbainfo.net"> http://www.dbainfo.net</a><br />
	&mdash;- 关键字：sql server 2005 备份 完全备份&nbsp; with copy_only<br />
	&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;-</p>
<div style="clear: both; margin: 10px 0pt; border: 1px dashed rgb(153, 153, 153); font-size: 12px; padding: 5px 10px;">
<li>本文链接地址：<a href="https://www.dbainfo.net/one-problem-about-sqlserver-backup-strategy.htm">https://www.dbainfo.net/one-problem-about-sqlserver-backup-strategy.htm</a>；</li>
<li>本文为dbainfo个人原创，请在尊重作者劳动成果的前提下进行转载；</li>
<li>转载务必注明原始出处 : <a href="https://www.dbainfo.net/">Sybase数据库技术，数据库恢复专家</a>；</li>
<li>对《<a href="https://www.dbainfo.net/one-problem-about-sqlserver-backup-strategy.htm">关于sqlserver2005备份策略的一个问题</a>》有何疑问或见解，请在本文下方发表；</li>
<li>对网站还有其他问题或建议，请提交在<a href="https://www.dbainfo.net/messages" target="_blank">留言板</a>，谢谢！</li>
</div>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2019-04-11 -- <a href="https://www.dbainfo.net/sql-server-recovery-service.htm" title="SQL Server 数据库修复专家SQLRescue">SQL Server 数据库修复专家SQLRescue</a> (0)</li><li>2010-11-03 -- <a href="https://www.dbainfo.net/sql2005-direct-update-system-catalogs.htm" title="SQL2005 如何更新系统表">SQL2005 如何更新系统表</a> (2)</li><li>2010-10-19 -- <a href="https://www.dbainfo.net/database-backup-strategy-delete-n-days-ago-files-for.htm" title="数据库备份策略中删除N天前的备份文件">数据库备份策略中删除N天前的备份文件</a> (0)</li><li>2010-09-28 -- <a href="https://www.dbainfo.net/sql-server-database-all-tables-space-order-desc2.htm" title="SQL SERVER中查看表占用空间的另外一种方法">SQL SERVER中查看表占用空间的另外一种方法</a> (0)</li><li>2010-09-16 -- <a href="https://www.dbainfo.net/java-connect-to-sqlserver-demo.htm" title="Java连接SQL Server数据库的一个简单例子">Java连接SQL Server数据库的一个简单例子</a> (0)</li><li>2010-09-15 -- <a href="https://www.dbainfo.net/sql-server-database-all-tables-space-order-desc.htm" title="统计SQL SERVER数据库内所有表占用空间并排序">统计SQL SERVER数据库内所有表占用空间并排序</a> (0)</li><li>2010-09-06 -- <a href="https://www.dbainfo.net/sql-server-linked-server-summary.htm" title="SQL Server的链接服务器技术小结[转]">SQL Server的链接服务器技术小结[转]</a> (0)</li><li>2010-08-29 -- <a href="https://www.dbainfo.net/access-sqlserver-from-oracle-by-transgate.htm" title="从oracle内访问sqlserver2005的数据时一个错误">从oracle内访问sqlserver2005的数据时一个错误</a> (0)</li><li>2010-08-23 -- <a href="https://www.dbainfo.net/direct-modify-sqlserver-data-page-by-dbcc-writepage.htm" title="利用dbcc writepage命令修改SQL SQLSERVER中的物理页面上的内容">利用dbcc writepage命令修改SQL SQLSERVER中的物理页面上的内容</a> (3)</li><li>2010-08-17 -- <a href="https://www.dbainfo.net/sql-server-io-requests-taking-longer-than-15-seconds-to-complete-on-file.htm" title="[SQL SERVER] I/O requests taking longer than 15 seconds to complete on file">[SQL SERVER] I/O requests taking longer than 15 seconds to complete on file</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>https://www.dbainfo.net/one-problem-about-sqlserver-backup-strategy.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASE跨平台远程备份</title>
		<link>https://www.dbainfo.net/ase-cross-platform-remote-backup.htm</link>
		<comments>https://www.dbainfo.net/ase-cross-platform-remote-backup.htm#comments</comments>
		<pubDate>Mon, 21 Jun 2010 11:29:24 +0000</pubDate>
		<dc:creator>dbainfo</dc:creator>
				<category><![CDATA[Sybase ASE]]></category>
		<category><![CDATA[备份]]></category>
		<category><![CDATA[恢复]]></category>
		<category><![CDATA[跨平台]]></category>

		<guid isPermaLink="false">http://www.dbainfo.net/?p=739</guid>
		<description><![CDATA[今天试验了一下不同ASE版本跨平台远程备份数据库的操作。 环境： 源数据端：solaris 10 SPARC 64bit,ASE 12.5.4,称为：server1 目的数据端：windows xp x86,ASE15.0.3，称为：server2 &#160; 任务： 测试将源数据端solaris上的ASE数据库服务器里面的andkylee库远程备份到目的windows-xp机子上。 第一步：在server1的interfaces文件中添加远程服务器条目 在server2的连接接口配置文件%SYBASE%\ini\sql.ini中，备份服务器的名称为：TEST_BS. 在server1的 /db/sybase/ase1254/interfaces中添加: TEST_BS &#160;&#160;&#160;&#160;&#160;&#160;&#160; master tcp ether 192.168.2.173 5001 &#160;&#160;&#160;&#160;&#160;&#160;&#160; query tcp ether 192.168.2.173 5001 &#160; 注意：添加到server1的远程备份服务器名称务必和server2中的备份服务器名称保持一致。 &#160; 第二步：连接上server1的ASE服务器，添加远程备份服务器的条目 isql -Usa -P -Sase1254 sp_addserver TEST_BS 这一步不是必须的！ 第三步：在server1的ASE中执行远程备份命令 dump database andkylee to &#34;d:\andkylee_remote.dmp&#34; at TEST_BS 可以使用stripe on进行远程备份文件分片，最大分片数为32。 如果想压缩远程备份文件的话，必须使用with compression=[0-9]选项；兼容选项compress::只支持本地备份。 最后检查，在远程服务器server2上D盘发现有远程备份生成的文件：andkylee_remote.dmp。 远程备份数据库操作完成！ [...]]]></description>
			<content:encoded><![CDATA[<p>今天试验了一下不同ASE版本跨平台远程备份数据库的操作。</p>
<p><strong>环境：</strong></p>
<p>源数据端：solaris 10 SPARC 64bit,ASE 12.5.4,称为：server1</p>
<p>目的数据端：windows xp x86,ASE15.0.3，称为：server2</p>
<p>&nbsp;</p>
<p><strong>任务：</strong></p>
<p>测试将源数据端solaris上的ASE数据库服务器里面的andkylee库远程备份到目的windows-xp机子上。</p>
<p><strong><span style="font-size: medium;"><br />
	</span> </strong></p>
<p><strong>第一步：在server1的interfaces文件中添加远程服务器条目<br />
	</strong></p>
<p>在server2的连接接口配置文件%SYBASE%\ini\sql.ini中，备份服务器的名称为：TEST_BS.</p>
<p>在server1的 /db/sybase/ase1254/interfaces中添加:</p>
<blockquote>
<p>TEST_BS<br />
		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; master tcp ether 192.168.2.173 5001<br />
		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; query tcp ether 192.168.2.173 5001</p>
</blockquote>
<p>&nbsp;</p>
<p>注意：添加到server1的远程备份服务器名称务必和server2中的备份服务器名称保持一致。</p>
<p>&nbsp;</p>
<p><strong>第二步：连接上server1的ASE服务器，添加远程备份服务器的条目<br />
	</strong></p>
<p>isql -Usa -P -Sase1254</p>
<blockquote>
<p><strong>sp_addserver TEST_BS</strong></p>
</blockquote>
<p><span style="color:#f00;">这一步不是必须的！<br />
	</span></p>
<p><strong>第三步：在server1的ASE中执行远程备份命令<br />
	</strong></p>
<blockquote>
<p><strong>dump database andkylee to &quot;d:\andkylee_remote.dmp&quot; at TEST_BS</strong></p>
</blockquote>
<p>可以使用stripe on进行远程备份文件分片，最大分片数为32。</p>
<p><span style="color:#f00;">如果想压缩远程备份文件的话，必须使用with compression=[0-9]选项；兼容选项compress::只支持本地备份。<br />
	</span></p>
<p>最后检查，在远程服务器server2上D盘发现有远程备份生成的文件：andkylee_remote.dmp。 远程备份数据库操作完成！</p>
<p>&nbsp;</p>
<p>&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;-<br />
	&mdash;- 本文为andkylee个人原创，请在尊重作者劳动成果的前提下进行转载；<br />
	&mdash;- 转载务必注明原始出处 :<a href="../" target="_blank" title="http://www.dbainfo.net"> http://www.dbainfo.net</a><br />
	&mdash;- 关键字：ase cross-platform dump load solaris windows 跨平台 远程 备份恢复<br />
	&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;-</p>
<div style="clear: both; margin: 10px 0pt; border: 1px dashed rgb(153, 153, 153); font-size: 12px; padding: 5px 10px;">
<li>本文链接地址：<a href="https://www.dbainfo.net/ase-cross-platform-remote-backup.htm">https://www.dbainfo.net/ase-cross-platform-remote-backup.htm</a>；</li>
<li>本文为dbainfo个人原创，请在尊重作者劳动成果的前提下进行转载；</li>
<li>转载务必注明原始出处 : <a href="https://www.dbainfo.net/">Sybase数据库技术，数据库恢复专家</a>；</li>
<li>对《<a href="https://www.dbainfo.net/ase-cross-platform-remote-backup.htm">ASE跨平台远程备份</a>》有何疑问或见解，请在本文下方发表；</li>
<li>对网站还有其他问题或建议，请提交在<a href="https://www.dbainfo.net/messages" target="_blank">留言板</a>，谢谢！</li>
</div>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2010-04-09 -- <a href="https://www.dbainfo.net/sybase1503-cross-platform-recovery.htm" title="Sybase15.0.3跨平台恢复过程">Sybase15.0.3跨平台恢复过程</a> (0)</li><li>2019-04-12 -- <a href="https://www.dbainfo.net/sybase-ase-asa-recovery-service.htm" title="Sybase ASE及SQL Anywhere数据库修复专家">Sybase ASE及SQL Anywhere数据库修复专家</a> (0)</li><li>2019-04-11 -- <a href="https://www.dbainfo.net/sql-server-recovery-service.htm" title="SQL Server 数据库修复专家SQLRescue">SQL Server 数据库修复专家SQLRescue</a> (0)</li><li>2013-06-02 -- <a href="https://www.dbainfo.net/recovery-tools" title="Sybase数据库恢复工具">Sybase数据库恢复工具</a> (0)</li><li>2013-06-02 -- <a href="https://www.dbainfo.net/2120.htm" title=""></a> (0)</li><li>2012-06-22 -- <a href="https://www.dbainfo.net/introduce-sql-anywhere-recovery-tool-readasadb.htm" title="Sybase SQL Anywhere(ASA)数据库非常规恢复工具">Sybase SQL Anywhere(ASA)数据库非常规恢复工具</a> (0)</li><li>2010-12-13 -- <a href="https://www.dbainfo.net/sqlserver2005-reinstall-sql-engine.htm" title="SQL Server 2005系统数据库master重建、修复">SQL Server 2005系统数据库master重建、修复</a> (0)</li><li>2010-11-25 -- <a href="https://www.dbainfo.net/cross-platform-migrate-device-file-from-linux-to-windows.htm" title="平台数据库迁移linux >windows">平台数据库迁移linux >windows</a> (0)</li><li>2010-10-19 -- <a href="https://www.dbainfo.net/database-backup-strategy-delete-n-days-ago-files-for.htm" title="数据库备份策略中删除N天前的备份文件">数据库备份策略中删除N天前的备份文件</a> (0)</li><li>2010-08-11 -- <a href="https://www.dbainfo.net/sybase-ase-auto-backup-shell-scripts-at-unix-linux.htm" title="sybase ASE在unix&#038;linux上的自动备份脚本">sybase ASE在unix&#038;linux上的自动备份脚本</a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>https://www.dbainfo.net/ase-cross-platform-remote-backup.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>实现连续N次备份数据库的脚本</title>
		<link>https://www.dbainfo.net/script-backup-db-many-times.htm</link>
		<comments>https://www.dbainfo.net/script-backup-db-many-times.htm#comments</comments>
		<pubDate>Wed, 18 Nov 2009 13:55:55 +0000</pubDate>
		<dc:creator>dbainfo</dc:creator>
				<category><![CDATA[Sybase ASE]]></category>
		<category><![CDATA[备份]]></category>
		<category><![CDATA[脚本]]></category>

		<guid isPermaLink="false">http://www.dbainfo.net/?p=51</guid>
		<description><![CDATA[我们知道根据生产数据库的业务数据情况来安排备份的频率，比如：每月、每周、每日，有的甚至每小时备份一次。要备份sybase数据库，需要自己手动写命令。这样，下一次可能会覆盖上一次的备份文件。通过脚本在下一次备份时产生不同的备份文件名称就不会覆盖上一个备份文件了。这样，能够自动保留数据库的多个数据库备份文件，更有力的保障了数据库的安全。 将下面的脚本复制到记事本中，另存为bat格式。添加到windows的计划任务中， ============================================================================================ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 echo off cls :: 默认保留近7日来的数据库备份，可以把7改成自己想连续的天数 :: 其中d:\sybase\data为数据库备份地址，可以自己再次指定 :: master为默认备份的数据库名称，可以修改成其它用户数据库名称 set databak_path=d:\sybase\data set databasename=master echo dt=date&#40;&#41;-7&#62;%temp%\OldDate.vbs echo s=right&#40;year&#40;dt&#41;,4&#41; ^&#38; &#34;-&#34; ^&#38; right&#40;&#34;0&#34; ^&#38; month&#40;dt&#41;,2&#41; ^&#38; &#34;-&#34; ^&#38; right&#40;&#34;0&#34; ^&#38; day&#40;dt&#41;,2&#41;&#62;&#62;%temp%\OldDate.vbs echo wscript.echo s&#62;&#62;%temp%\OldDate.vbs for [...]]]></description>
			<content:encoded><![CDATA[<p>我们知道根据生产数据库的业务数据情况来安排备份的频率，比如：每月、每周、每日，有的甚至每小时备份一次。要备份sybase数据库，需要自己手动写命令。这样，下一次可能会覆盖上一次的备份文件。通过脚本在下一次备份时产生不同的备份文件名称就不会覆盖上一个备份文件了。这样，能够自动保留数据库的多个数据库备份文件，更有力的保障了数据库的安全。</p>
<p>将下面的脚本复制到记事本中，另存为bat格式。添加到windows的计划任务中，<br />
============================================================================================</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
</pre></td><td class="code"><pre class="dos" style="font-family:monospace;"><span style="color: #b1b100; font-weight: bold;">echo</span> off
cls
:<span style="color: #b100b1; font-weight: bold;">: 默认保留近<span style="color: #cc66cc;">7</span>日来的数据库备份，可以把<span style="color: #cc66cc;">7</span>改成自己想连续的天数</span>
:<span style="color: #b100b1; font-weight: bold;">: 其中d:\sybase\data为数据库备份地址，可以自己再次指定</span>
:<span style="color: #b100b1; font-weight: bold;">: master为默认备份的数据库名称，可以修改成其它用户数据库名称</span>
<span style="color: #b1b100; font-weight: bold;">set</span> <span style="color: #448844;">databak_path</span>=d:\sybase\data
<span style="color: #b1b100; font-weight: bold;">set</span> <span style="color: #448844;">databasename</span>=master
<span style="color: #b1b100; font-weight: bold;">echo</span> dt=date<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>-<span style="color: #cc66cc;">7</span>&gt;<span style="color: #33cc33;">%</span><span style="color: #448888;">temp</span><span style="color: #33cc33;">%</span>\OldDate.vbs
<span style="color: #b1b100; font-weight: bold;">echo</span> s=right<span style="color: #66cc66;">&#40;</span>year<span style="color: #66cc66;">&#40;</span>dt<span style="color: #66cc66;">&#41;</span>,<span style="color: #cc66cc;">4</span><span style="color: #66cc66;">&#41;</span> ^&amp; &quot;-&quot; ^&amp; right<span style="color: #66cc66;">&#40;</span>&quot;<span style="color: #cc66cc;">0</span>&quot; ^&amp; month<span style="color: #66cc66;">&#40;</span>dt<span style="color: #66cc66;">&#41;</span>,<span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#41;</span> ^&amp; &quot;-&quot; ^&amp; right<span style="color: #66cc66;">&#40;</span>&quot;<span style="color: #cc66cc;">0</span>&quot; ^&amp; day<span style="color: #66cc66;">&#40;</span>dt<span style="color: #66cc66;">&#41;</span>,<span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#41;</span>&gt;&gt;<span style="color: #33cc33;">%</span><span style="color: #448888;">temp</span><span style="color: #33cc33;">%</span>\OldDate.vbs
<span style="color: #b1b100; font-weight: bold;">echo</span> wscript.<span style="color: #b1b100; font-weight: bold;">echo</span> s&gt;&gt;<span style="color: #33cc33;">%</span><span style="color: #448888;">temp</span><span style="color: #33cc33;">%</span>\OldDate.vbs
<span style="color: #00b100; font-weight: bold;">for</span> /f <span style="color: #33cc33;">%%</span><span style="color: #448888;">f</span> <span style="color: #00b100; font-weight: bold;">in</span> <span style="color: #66cc66;">&#40;</span>'cscript /nologo <span style="color: #33cc33;">%</span><span style="color: #448888;">temp</span><span style="color: #33cc33;">%</span>\OldDate.vbs'<span style="color: #66cc66;">&#41;</span> <span style="color: #00b100; font-weight: bold;">do</span> <span style="color: #33cc33;">@</span><span style="color: #b1b100; font-weight: bold;">set</span> <span style="color: #448844;">DelFlag</span>=<span style="color: #33cc33;">%%</span><span style="color: #448888;">f</span>
:<span style="color: #b100b1; font-weight: bold;">:删除七日前的数据库备份文件</span>
<span style="color: #00b100; font-weight: bold;">if</span> <span style="color: #000000; font-weight: bold;">exist</span> &quot;<span style="color: #33cc33;">%</span><span style="color: #448888;">databak_path</span><span style="color: #33cc33;">%</span>\<span style="color: #33cc33;">%</span><span style="color: #448888;">databasename</span><span style="color: #33cc33;">%</span>_<span style="color: #33cc33;">%</span><span style="color: #448888;">DelFlag</span><span style="color: #33cc33;">%</span>.dump&quot; <span style="color: #b1b100; font-weight: bold;">del</span> &quot;<span style="color: #33cc33;">%</span><span style="color: #448888;">databak_path</span><span style="color: #33cc33;">%</span>\<span style="color: #33cc33;">%</span><span style="color: #448888;">databasename</span><span style="color: #33cc33;">%</span>_<span style="color: #33cc33;">%</span><span style="color: #448888;">DelFlag</span><span style="color: #33cc33;">%</span>.dump&quot;
<span style="color: #b1b100; font-weight: bold;">del</span> <span style="color: #33cc33;">%</span><span style="color: #448888;">temp</span><span style="color: #33cc33;">%</span>\OldDate.vbs
<span style="color: #00b100; font-weight: bold;">if</span> <span style="color: #000000; font-weight: bold;">exist</span> <span style="color: #33cc33;">%</span><span style="color: #448888;">temp</span><span style="color: #33cc33;">%</span>\dump_db.txt <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100; font-weight: bold;">del</span> <span style="color: #33cc33;">%</span><span style="color: #448888;">temp</span><span style="color: #33cc33;">%</span>\dump_db.txt<span style="color: #66cc66;">&#41;</span>
<span style="color: #b1b100; font-weight: bold;">echo</span> dump database <span style="color: #33cc33;">%</span><span style="color: #448888;">databasename</span><span style="color: #33cc33;">%</span> to &quot;<span style="color: #33cc33;">%</span><span style="color: #448888;">databak_path</span><span style="color: #33cc33;">%</span>\<span style="color: #33cc33;">%</span><span style="color: #448888;">databasename</span><span style="color: #33cc33;">%</span>_<span style="color: #33cc33;">%</span><span style="color: #448888;">date:~<span style="color: #cc66cc;">0</span>,10</span><span style="color: #33cc33;">%</span>.dump&quot; &gt;&gt;<span style="color: #33cc33;">%</span><span style="color: #448888;">temp</span><span style="color: #33cc33;">%</span>\dump_db.txt
<span style="color: #b1b100; font-weight: bold;">echo</span> go &gt;&gt;<span style="color: #33cc33;">%</span><span style="color: #448888;">temp</span><span style="color: #33cc33;">%</span>\dump_db.txt
isql -Usa -P -Syour_servername &lt;&quot;<span style="color: #33cc33;">%</span><span style="color: #448888;">temp</span><span style="color: #33cc33;">%</span>\dump_db.txt&quot; &gt;&gt;<span style="color: #33cc33;">%</span><span style="color: #448888;">databak_path</span><span style="color: #33cc33;">%</span>\dump_log.txt
<span style="color: #b1b100; font-weight: bold;">del</span> &quot;<span style="color: #33cc33;">%</span><span style="color: #448888;">temp</span><span style="color: #33cc33;">%</span>\dump_db.txt&quot;</pre></td></tr></table></div>

<p>————————————————————————————————————<br />
——— 本文为andkylee个人原创，请在尊重作者劳动成果的前提下进行转载；<br />
——— 转载务必注明原始出处 : <a title="http://www.dbainfo.net" href="http://www.dbainfo.net" target="_blank">http://www.dbainfo.net<br />
</a>——— 关键字： ASE 数据库 备份 自动 连续备份  删除旧备份<br />
————————————————————————————————————
<div style="clear: both; margin: 10px 0pt; border: 1px dashed rgb(153, 153, 153); font-size: 12px; padding: 5px 10px;">
<li>本文链接地址：<a href="https://www.dbainfo.net/script-backup-db-many-times.htm">https://www.dbainfo.net/script-backup-db-many-times.htm</a>；</li>
<li>本文为dbainfo个人原创，请在尊重作者劳动成果的前提下进行转载；</li>
<li>转载务必注明原始出处 : <a href="https://www.dbainfo.net/">Sybase数据库技术，数据库恢复专家</a>；</li>
<li>对《<a href="https://www.dbainfo.net/script-backup-db-many-times.htm">实现连续N次备份数据库的脚本</a>》有何疑问或见解，请在本文下方发表；</li>
<li>对网站还有其他问题或建议，请提交在<a href="https://www.dbainfo.net/messages" target="_blank">留言板</a>，谢谢！</li>
</div>
<h2  class="related_post_title">相关文章</h2><ul class="related_post"><li>2010-10-19 -- <a href="https://www.dbainfo.net/database-backup-strategy-delete-n-days-ago-files-for.htm" title="数据库备份策略中删除N天前的备份文件">数据库备份策略中删除N天前的备份文件</a> (0)</li><li>2010-08-11 -- <a href="https://www.dbainfo.net/sybase-ase-auto-backup-shell-scripts-at-unix-linux.htm" title="sybase ASE在unix&#038;linux上的自动备份脚本">sybase ASE在unix&#038;linux上的自动备份脚本</a> (1)</li><li>2010-12-19 -- <a href="https://www.dbainfo.net/imgrate-ase-database-referencial-table-scripts-execute-twice.htm" title="迁移ASE数据库的表之间存在引用时脚本执行情况">迁移ASE数据库的表之间存在引用时脚本执行情况</a> (0)</li><li>2010-09-12 -- <a href="https://www.dbainfo.net/sybase-ase-auto-create-database-login-user-scripts.htm" title="Sybase ASE自动创建数据库、登录以及用户的脚本">Sybase ASE自动创建数据库、登录以及用户的脚本</a> (0)</li><li>2010-08-09 -- <a href="https://www.dbainfo.net/sqlserver2008-backup-database-with-compression-options.htm" title="sql server 2008中的备份压缩特性">sql server 2008中的备份压缩特性</a> (0)</li><li>2010-07-22 -- <a href="https://www.dbainfo.net/one-problem-about-sqlserver-backup-strategy.htm" title="关于sqlserver2005备份策略的一个问题">关于sqlserver2005备份策略的一个问题</a> (0)</li><li>2010-06-21 -- <a href="https://www.dbainfo.net/ase-cross-platform-remote-backup.htm" title="ASE跨平台远程备份">ASE跨平台远程备份</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>https://www.dbainfo.net/script-backup-db-many-times.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
