Memaparkan catatan dengan label Script. Papar semua catatan
Memaparkan catatan dengan label Script. Papar semua catatan

Jumaat, 17 September 2010

Informix DB backup into tape - shell script

Maaf lama menyepi tanpa sebarang update kerana saya baru sahaja joint syarikat baru. Banyak projek yang terpaksa saya laksanakan hinggakan tidak berkesempatan utk update isirung.

Di syarikat baru saya mengguna DB informix version 10 sebagai DB engine bagi applikasi disini. Jadi 1st day saya disini ialah menulis script seperti bagi tujuan backup dimana sebelum ini mereka melakukan backup secara manual.

DB engine: IBM Informix v10
OS: RHEL 4

------------------------------------------------------

#!/bin/bash

LEVEL=0
ontape -s <&1 >> /tmp/logfile
$LEVEL
read Return
EOF
exit

------------------------------------------------------

Selasa, 18 Ogos 2009

Weekly Backup


#!/bin/sh
# This backup script should be run weekly.
export PATH=/usr/bin:/bin:/sbin:/usr/sbin
# Define where you want to backup.
DEST=/net/nas/backup/pepe
# Check for NFS mount to ensure we got the mount point
ls /net/nas/backup > /dev/null 2>&1
if [ ! -d $DEST ]; then
echo "Directory not found: $DEST"
exit 1
fi
function copythis () {
RSOPTS="-ax --delete --numeric-ids --delete-excluded --bwlimit=30000"
FROM="$1"
shift
TO="$1"
shift
XOPTS="$*"
echo $FROM to $TO
rsync $RSOPTS $XOPTS $FROM $TO
}
copythis /home/bb $DEST/home/
copythis /root $DEST/
copythis /var/lib/mysql $DEST/
copythis /var/named $DEST/
copythis /var/www $DEST/
copythis /etc $DEST/

Daily Backup


#!/bin/sh
# This backup script should be run daily.
# number of backup?
BACKUP=4
export PATH=/usr/bin:/bin:/sbin:/usr/sbin
TIMENOW=`date +%s`
NUM=`echo $(($TIMENOW/86400%$BACKUP))`
# Define where you want to backup.
DEST=/net/nas/backup/pepe/DAILY
# Check for NFS mount to ensure we got the mount point
ls /net/nas/backup > /dev/null 2>&1
if [ ! -d $DEST ]; then
echo "Directory not found: $DEST"
exit 1
fi
function copythis () {
RSOPTS="-ax --numeric-ids --delete-excluded --bwlimit=30000"
FROM="$1"
shift
TO="$1"
shift
XOPTS="$*"
echo $FROM to $TO
rsync $RSOPTS $XOPTS $FROM $TO
}
function dbdump () {
TABLE="$1"
DBUSER="root"
DBPASSWD="SECRET"
mysqldump -u$DBUSER -p$DBPASSWD -q -S /var/lib/mysql/mysql.sock $TABLE | \
bzip2 - > $DEST/mysql/$TABLE.sql.$NUM.bz2
}
copythis /etc $DEST/
# backup mysql databases
umask 077
dbdump cerberus
dbdump dotproject
dbdump intranet
dbdump mysql
dbdump phpmyadmin
dbdump wikidb