免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: simonniu
打印 上一主题 下一主题

本人专门从事informix数据库备份,希望和有这方面需求的朋友交流 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2006-02-09 09:24 |只看该作者
原帖由 simonniu 于 2006-2-8 12:01 发表
用dbexport所做的备份可以实现不同版本、不同Informix产品之间的数据转换,数据转移灵活方便,但执行时需对数据库上锁,会影响应用,不是最好的备份方法。如果需要对数据库进行备份的话,建议使用ontape和onbar

server里面有很多数据库,我只想备份一个数据库,ontape不行,onbar可以吗?

论坛徽章:
0
12 [报告]
发表于 2006-02-09 11:33 |只看该作者
原帖由 sam_8286 于 2006-2-9 09:24 发表

server里面有很多数据库,我只想备份一个数据库,ontape不行,onbar可以吗?

ontape和onbar都是物理备份,如果要备份一个数据库是,只能用dbexport
但是onbar可以对单个表空间备份,如果你的那个数据库的表是放在一个表空间上的,就可以单独对相应的表空间备份

论坛徽章:
0
13 [报告]
发表于 2006-02-09 11:42 |只看该作者
原帖由 chixl 于 2006-2-8 13:44 发表
请教楼主,我有一个数据库,想实现夜间数据自动备份。每天让值班人员更换一个磁带到磁带机里,这样实现每天不用人工干预的自动备份。

基本情况:夜间的时候基本上没有业务运行,但是不排除数据库还在被占用的情 ...


我在solaris上试过
ontape -s -L 0<<!

!
可以实现自动下行

你这种情况建议用onbar备份,可以备份到硬盘上,也可以备份到磁带上
不过要实现完全自动备份,介质自动回收
可能还是要下一番功夫

论坛徽章:
0
14 [报告]
发表于 2006-02-09 16:55 |只看该作者
原帖由 IFMXDBA 于 2006-2-9 07:55 发表
echo ` ` > ontape -s -L 0
make sure the TAPESIZE ( in your onconfig file ) is big enough to contain all the data pages need to be archived, or you have to change the tapes ( or fles ) when mult ...


感谢以上热心回帖的同志们~~

我的操作系统是SCO Open Server 5.06 .数据库版本是Informix Dynamic Server Version 7.31.UC2

shell内容如下:
echo `date "+%Y%m%d %H:%M:%S"`"|Begin....." >>backup.log
echo ` ` > ontape -s -L 0
echo `date "+%Y%m%d %H:%M:%S"`"|End....." >>backup.log

back.log的内容为
20060209 16:36:22|Begin.....
20060209 16:36:22|End.....

执行后很快就跳到命令行。开始时间与结束时间相同,而没有执行备份的命令。
online.log里也没有登记备份的日志。

大梦和楼主建议的
ontape -s -L 0 <<-EOF
EOF

ontape -s -L 0 <<!
!
运行时还是会停在敲回车的界面。

还请各位大侠继续出谋划策~~

论坛徽章:
0
15 [报告]
发表于 2006-02-09 17:24 |只看该作者
原帖由 simonniu 于 2006-2-9 11:42 发表


我在solaris上试过
ontape -s -L 0<<!

!
可以实现自动下行

你这种情况建议用onbar备份,可以备份到硬盘上,也可以备份到磁带上
不过要实现完全自动备份,介质自动回收
可能还是要下一番功夫


备份到硬盘上估计不行,数据量超过2G, SCO OpenServer5.06的操作系统对单个文件的大小有限制。

我对onbar命令的语法不熟,想先问一下onbar命令使用的时候是否也要敲入回车~~呵呵主要想实现自动备份。

论坛徽章:
0
16 [报告]
发表于 2006-02-09 17:56 |只看该作者
原帖由 chixl 于 2006-2-9 17:24 发表


备份到硬盘上估计不行,数据量超过2G, SCO OpenServer5.06的操作系统对单个文件的大小有限制。

我对onbar命令的语法不熟,想先问一下onbar命令使用的时候是否也要敲入回车~~呵呵主要想实现自动备份。


onbar可以实现自动备份,而且不是crontab,系统不支持2GB的文件,备份软件可以分割成2GB的备份片

onbar的备份配置要复杂点,可以出点服务费,找人做一下

论坛徽章:
0
17 [报告]
发表于 2006-02-09 17:59 |只看该作者
原帖由 chixl 于 2006-2-9 16:55 发表


感谢以上热心回帖的同志们~~

我的操作系统是SCO Open Server 5.06 .数据库版本是Informix Dynamic Server Version 7.31.UC2

shell内容如下:
echo `date "+%Y%m%d %H:%M:%S"`"|Begin ...

ontape -s -L 0<<!

!
中间有个空行,不要忘了

论坛徽章:
11
数据库技术版块每日发帖之星
日期:2016-06-25 06:20:00数据库技术版块每日发帖之星
日期:2016-06-24 06:20:00数据库技术版块每日发帖之星
日期:2016-05-03 06:20:00数据库技术版块每日发帖之星
日期:2016-04-21 06:20:00数据库技术版块每日发帖之星
日期:2016-01-23 06:20:00数据库技术版块每日发帖之星
日期:2015-12-03 06:20:00综合交流区版块每周发帖之星
日期:2015-12-02 15:03:53数据库技术版块每日发帖之星
日期:2015-10-19 06:20:00数据库技术版块每日发帖之星
日期:2015-08-20 06:20:002015年辞旧岁徽章
日期:2015-03-03 16:54:15数据库技术版块每日发帖之星
日期:2016-07-30 06:20:00
18 [报告]
发表于 2006-02-09 22:32 |只看该作者
是!有个空行!

论坛徽章:
0
19 [报告]
发表于 2006-02-10 04:49 |只看该作者
Following is a script for unattened archive to disk files, it supports multiple vol archive for those who has 2GB file size limitation.  I wrote it long time ago, tested in AIX 4.3.  Just for you to play in your testing env.


#!/bin/ksh
#
# Usage : autotape [0|1|2] | ontape -s > ontape.log
#
#

## Set Informix running env
INFORMIXDIR=/informix_app
INFORMIXSERVER=ifmxdba
ONCONFIG=onconfig.ifmxdba
INFORMIXSQLHOSTS=/dms/informixtest/sqlhosts
NOFUZZYCKPT=1
export INFORMIXDIR INFORMIXSERVER ONCONFIG INFORMIXSQLHOSTS NOFUZZYCKPT
PATH=$INFORMIXDIR/bin:.PATH

LOGDIR=`pwd`
BACKUPDIR=`pwd`
DATE=`date +%m%d%C%y`
SEQ=0
TAPEDEV=`sed -n '/^TAPEDEV/ s/TAPEDEV//p' $INFORMIXDIR/etc/$ONCONFIG \
         | awk '{print $1}`
LOGFILE=$LOGDIR/ontape.log


## Check if loginin as informix
if [ "`whoami | cut -c1-8`" != "informix" ]
then
  echo "\nUSAGE: $0 must be executed as informix" >&2
  exit 1
fi

## Check if the system is in On-Line or Quiescent mode
MODE1=`onstat - | grep "On-Line"`
MODE2=`onstat - | grep "Quiescent"`
[ -z "$MODE1" -a -z "$MODE2" ] && { echo "\nERROR: OnLine is not On-Line or Quiescent mode"; exit 2; }


if [ $# -lt 1 ]
then
echo "Usage: $0 [0|1|2] | ontape -s > ontape.log"
exit 3
fi


## Get the archive level and it should be 0, 1, 2
LEVEL="0"
case "$1" in
   0) LEVEL="0"
      ;;
   1) LEVEL="1"
      ;;
   2) LEVEL="2"
      ;;
esac

## Set up tape
cat /dev/null > $TAPEDEV
chmod 660 $TAPEDEV
sleep 2

## Answer to ontape of the archive level
echo $LEVEL
sleep 2

## Answer to ontape of mount tape and press Return
echo ``
sleep 2


##
while true
do
  CHECK=`tail -1 $LOGFILE | awk '{print $2}' | sed '/^$/d'`
  ## check ontape.log file if ontape asked for mounting new tape
  if [[ $CHECK = "mount" ]] then
     SEQ=$((SEQ+1))
     mv $TAPEDEV $BACKUPDIR/arc.$LEVEL.$DATE.$SEQ
     cat /dev/null > $TAPEDEV
     chmod 660 $TAPEDEV
     echo "\nTape $SEQ compelted, saved as arc.$LEVEL.$DATE.$SEQ" >> $LOGFILE
     sleep 6
     echo ``
  fi

  ## check if the archive finished
  if [[ "$CHECK" = "over." ]] then
     SEQ=$((SEQ+1))
     mv $TAPEDEV $BACKUPDIR/arc.$LEVEL.$DATE.$SEQ
     cat /dev/null > $TAPEDEV
     chmod 660 $TAPEDEV
     echo "\nTape $SEQ compelted, saved as arc.$LEVEL.$DATE.$SEQ" >> $LOGFILE
     sleep 6
     exit 0
    fi
done

论坛徽章:
0
20 [报告]
发表于 2006-02-10 08:28 |只看该作者

回复 14楼 chixl 的帖子

怎么不试试我发的贴子,我现在一直这样用!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP