转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> SyBase >> 正文
Sybase系统维护经验谈         ★★★★

Sybase系统维护经验谈

作者:闵涛 文章来源:闵涛的学习笔记 点击数:653 更新时间:2009/4/22 22:54:49

   Sybase数据库系统作为CS构架的主流产品在我国有着广泛的应用,因此,对Sybase系统的维护也显得至关重要。笔者在对Sybase系统维护工作中,总结了一些技巧和经验,现介绍给大家。

  1.实现开机时自动装载Sybase数据库
  原先要使Sybase SQL Server启动,一般需要先以sybase用户登录,然后运行$SYBASEinstall目录下的startserver命令启动SYBASE_XXXX服务进程和SYB_BACKUP_XXXX备份服务进程。

  要实现Unix系统启动时就能在后台装载Sybase的功能,我们可在etcrc2.d目录下新建一文件S99sybase,内容如下

  SYBASE=usrsybase

  PATH=$PATH$SYBASEbin

  export $SYBASE $PATH

  $SYBASEinstallstartserver -f $SYBASEinstallRUN_SYBASE_XXXX  devnull

  $SYBASEinstallstartserver -f $SYBASEinstallRUN_SYB_BACKUP_XXX devnull

  然后修改Sybase的权限,重启系统即可。

  2.实现关机时自动卸载Sybase数据库
  为保证Sybase系统的正常运行,每次在关闭Unix系统时要先结束Sybase SQL Server 的服务进程,从减轻系统管理人员操作的角度出发建立一用户halt,修改etcpasswd文件,将halt用户的uid改为0(或其他可运行shutdown的用户id),在usrhalt.profile中添加以下语句:

  SYBASE=usrsybase

  DSQUERY=SYBASE_XXXX

  PATH=$PATH$SYBASEbin

  export SYBASE DSQUERY PATH

  isql -Usa -Pabcabc -ihalt.sql  devnull

  shutdown -y -g0

  其中“abcabc”为sa用户的口令,halt.sql是一简单的文本文件,内容如下:

  shutdown

  go

  这样每次只要以halt用户登录,就实现了自动卸下Sybase数据库,然后关闭Unix系统。

  3.Sybase库备份技巧
  一般对Sybase库进行备份都用磁带作介质进行,但还有一更好的方法,即先备份到硬盘上然后经压缩,拷贝到磁带上,这样便于恢复,多了一个备份拷贝,同时也节省了备份时间。具体实现步骤如下:

  (1)建立磁盘备份设备

  运行isql,以sa进入Sybase系统,运行如下内容:

  sp_addumpdevice disk,disk_bkupdevice ,tmpdumpdb ,2

  go

  这样就在Sybase中建立了一个名为“disk_bkupdevice”的备份设备,它对应Unix系统下的tmpdumpdb文件。

  (2)创建备份用户

  以root身份进入Unix系统,新建用户backupdb,并归属于sybase组。

  (3)修改相关文件

  在usrbackupdb.profile中添加以下语句:

  SYBASE=usrsybase

  DSQUERY=SYBASE_XXXX

  PATH=$PATH$SYBASEbin

  export SYBASE DSQUERY PATH

  rm tmpbackupdb.Z

  echo开始备份SYBASE数据库…

  isql -Usa -Pabcabc -ibackup.sql  tmpdbbackup.log

  echo硬盘备份完成,正在压缩备份的数据文件…

  compress tmpbackupdb

  echo 正在将备份的压缩数据拷入磁带…

  tar c8v tmpbackupdb.Z

  echo 备份完成!

  其中abcabc为sa用户的口令,backup.sql是一简单的文本文件,内容如下:

  dump database db_main to disk_bkupdevice

  go

  备份的执行日志被记录在tmpdbbackup.log中,当然系统管理员也可通过查看$SYBASEinstallbackup.log获知备份日志。

  这种备份方法要求硬盘空间足够大,这点请系统管理员在为Unix建分区时特别注意。

  在SCO Open Server 5.0.4、Sybase 11.0.3平台上,以上几个小技巧已应用成功,为笔者的日常维护节省了许多时间,取得了非常好的效果。

问:不知此处“$SYBASEinstallstartserver -f $SYBASEinstallRUN_SYBASE_XXXX  devnull ”为什么不打启动日志,这样做有什么好处?

答:好,我补充一下
在里backup.sql加:

use mydb--你数据库名字
go
dbcc checkdb
go
dbcc checkalloc
go
---最好在backup之前,检查一下数据库,看有没有硬件错误等,否则dump出的文件也会有错
dump trun mydb to ...
go
----如果你log和data是分离的,这样会先dump日志,然后清掉log,在备份数据库就会节省好多空间
dump database mydb to ...
go
quit


问::“devnull ”有什么好处?

答:对SYBASAE启动来说打印不打印关系不大。
如果是其他运行程序,如C写的使用了print的话,如果不用devnull,会把硬盘写暴。

 


没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台