文档详情

sysbase数据库的自动备份.doc

发布:2017-02-02约字共8页下载文档
文本预览下载声明
Solaris下的Sybase数据库自动备份 如何保障数据库的安全,有很多种方法,当然每种方法都不是万无一失的,如何在有限的条件下,使用简单的方法,最大限度的保障我们数据安全,是每个系统管理员都渴望的,现在许多单位购买了小型机但却并没有采取更多严密的数据保障措施,例如:使用双机热备、磁盘阵列、昂贵的备份软件等,笔者注意到,许多单位还在采用单数据库服务器+磁带备份的方式,笔者单位就是如此,这种结构的弊端显而易见,一旦硬盘出现问题,而磁带备份又无效,那就等于数据会丢失,后果相当严重,特别是对于运行很久的系统,其数据的重要性不言而喻。 根据笔者的实践,本文介绍了实现sybase数据库的自动备份方法,并借助廉价PC机,提供廉价的备份方案,虽然成本很低,但效果却很好。 操作环境:1台SUN E450 ,安装操作系统Solaris 8, Sybase 11.9.2数据库,安装目录为/Sybase ,Sybase数据库在硬盘的临时备份目录为/Sybase/backup。1台或多台PC机,安装微软windows操作系统。压缩软件winrar3.4。 实现目标:每天自动备份Sybase数据库,并转储到磁带和PC机上,每天把服务器中的数据库备份文件转储到指定的PC机中,压缩数据库并能够按照当天的时间重新命名,最终保存在PC机的硬盘中。本文虽以Solaris 8下Sybase数据库的备份过程为例,但其他Unix系统和数据库,也可参照此过程。 实现原理:使用Solaris 中的守护进程cron,定时执行备份脚本,每天自动备份Sybase数据库到服务器硬盘中的临时备份目录,并写入磁带,另使用PC机中的计划任务,结合自动FTP脚本下载数据库备份文件到PC机,并使用winrar压缩和更名数据库备份。 实现步骤: 使用Solaris的cron进程定时执行备份脚本,备份数据库至磁带。 我们知道, Solaris 的cron 守护进程是类似于windows中的计划任务的进程,我们就用此进程来实现自动备份(本文中使用了root权限来实现整个过程,当然,你也可以使用运行Sybase服务器的用户来实现整个过程,需要注意的是必须保证该用户能有权限访问和执行下面相关的脚本、备份目录等)。 首先以root用户登录,在/Sybase/bin下建立一个文本文件dumpdb.sql,内容如下 dump database DBname to /sybase/backup/2004temp.dmp go 此命令将会把我们指定的数据库备份到/sybase/backup/2004temp.dmp,其中 DBname为所备份的数据库名,此处要改为你所要备份的数据库名称,如果要同时备份master,可添加一条命令,把DBname则改成master即可,to后面是备份路径和备份文件名,此处可根据具体备份目录作相应的修改,注意一定要写全路径,避免无法执行。 其次在/Sybase/bin下再建立一个文本文件dumpdb,内容如下: su -sybase -c /sybase/bin/isql -Usa -P***** -SDBserver \-i /sybase/bin/dumpdb.sql 这条命令是用Sybase自带实用程序isql以Sybase用户登录后执行 /sybase/bin/dumpdb.sql中的语句。其中 - sybase为安装Sybase的用户名,/sybase/bin/isql为isql实用程序的全路径,-Usa 是指定使用sa登录,-P后面是sa的口令,此处填写你的真实口令,-S后面是数据库服务器的名称,特别是你的Sybase中安装了多个数据库服务器时需要注意。 \-i后面是我们上面建立的dumpdb.sql文件的路径和文件名。 文件建好后,赋予root用户对dumpdb可执行权限。 chmod 750 dumpdb 执行 crontab -e 修改cron table,此时应该注意你现在以那个用户登录的,因为solaris中每个用户都有自己的cron table,不要搞错了,我们这里使用的root用户的cron table。 在列表的最后加上下面一行, 1 1 * * * /sybase/bin/dumpdb 此命令将在每天凌晨1:01钟执行sybase/bin/dumpdb中的命令序列,也就是备份数据库到/sybase/backup/2004temp.dmp。 cron参数说明:第1位:分钟(0-59) 第2位:小时(0-23) 第3位:每月的某一天(1-31) 第4位:月(1-12) 第5位:星期中的某一天(
显示全部
相似文档