반응형
#!/bin/sh
server_name="db_server"
mysql_bin="/usr/local/mysql/bin"
mysqldb_root="/usr/local/mysql/data" #데이타베이스 위치
backupdb_root="/root/mysqldb_backup" #데이타 베이스 백업 공간
dir_name="$(date +%y%m%d%H%M)"
if [ ! -d $mysqldb_root ] ; then
echo "데이타베이스 위치를 입력해 주세요"
fi
if [ ! -d $backupdb_root ] ; then
echo "데이타 베이스 백업 공간을 만듭니다"
echo "mkdir -p $backupdb_root "
mkdir -p $backupdb_root
fi
if [ -d "$backupdb_root/$server_name.$dir_name" ]; then
echo "디렉토리가 존재합니다"
rm -rf "$backupdb_root/$server_name.$dir_name"
exit
else
echo "디렉토리를 생성합니다"
mkdir "$backupdb_root/$server_name.$dir_name"
fi
for db_name in $(ls $mysqldb_root)
do
if [ -d "$mysqldb_root/$db_name" ] ; then
echo "$db_name DB를 백업 중입니다"
$mysql_bin/mysqldump $db_name >> $backupdb_root/$server_name.$dir_name/$db_name.sql
fi
done
cd $backupdb_root
echo "백업된 DB를 압축합니다"
tar -cvzf "$server_name.$dir_name.tar.gz" "$server_name.$dir_name"
if [ -d "$backupdb_root/$server_name.$dir_name" ]; then
rm -rf "$backupdb_root/$server_name.$dir_name"
fi
let "i = 0"
for dname in $(ls -t $backupdb_root)
do
let " i = i + 1"
if [ $i -ge "11" ]; then
if [ -f "$backupdb_root/$dname" ]; then
rm -f $backupdb_root/$dname
fi
fi
done
server_name="db_server"
mysql_bin="/usr/local/mysql/bin"
mysqldb_root="/usr/local/mysql/data" #데이타베이스 위치
backupdb_root="/root/mysqldb_backup" #데이타 베이스 백업 공간
dir_name="$(date +%y%m%d%H%M)"
if [ ! -d $mysqldb_root ] ; then
echo "데이타베이스 위치를 입력해 주세요"
fi
if [ ! -d $backupdb_root ] ; then
echo "데이타 베이스 백업 공간을 만듭니다"
echo "mkdir -p $backupdb_root "
mkdir -p $backupdb_root
fi
if [ -d "$backupdb_root/$server_name.$dir_name" ]; then
echo "디렉토리가 존재합니다"
rm -rf "$backupdb_root/$server_name.$dir_name"
exit
else
echo "디렉토리를 생성합니다"
mkdir "$backupdb_root/$server_name.$dir_name"
fi
for db_name in $(ls $mysqldb_root)
do
if [ -d "$mysqldb_root/$db_name" ] ; then
echo "$db_name DB를 백업 중입니다"
$mysql_bin/mysqldump $db_name >> $backupdb_root/$server_name.$dir_name/$db_name.sql
fi
done
cd $backupdb_root
echo "백업된 DB를 압축합니다"
tar -cvzf "$server_name.$dir_name.tar.gz" "$server_name.$dir_name"
if [ -d "$backupdb_root/$server_name.$dir_name" ]; then
rm -rf "$backupdb_root/$server_name.$dir_name"
fi
let "i = 0"
for dname in $(ls -t $backupdb_root)
do
let " i = i + 1"
if [ $i -ge "11" ]; then
if [ -f "$backupdb_root/$dname" ]; then
rm -f $backupdb_root/$dname
fi
fi
done
반응형
'서버,보안' 카테고리의 다른 글
리눅스 표준 시간 바꾸기. 설정 (0) | 2009.06.09 |
---|---|
아파치 보안 설정 (0) | 2009.06.09 |
리눅스 개인계정 로딩시 틸드(~)기호없이 그냥 사용 (0) | 2009.06.09 |
리눅스에서 한글 깨짐 문제 해결 (0) | 2009.06.09 |
리눅스 에서 하드 추가 (0) | 2009.06.09 |
리눅스 fstab 리드온리 문제 해결 (0) | 2009.06.09 |
웹로그 분석 프로그램 설치하기 (0) | 2009.06.09 |
리눅스 명령어 (0) | 2009.06.09 |