導航:首頁 > 操作系統 > linuxshell備份

linuxshell備份

發布時間:2022-08-11 04:20:50

linux 怎麼通過Shell腳本定時備份MySQL資料庫

PATH=$PATH:$HOME/bin #備份目錄 BackupPath="/home/mysql/backup" #備份文件名 BackupFile="dbbackup"$(date +%y%m%d_%H)".sql" #資料庫的用戶名及密碼 user="root" passwd="Welcome@123" #檢查備份目錄是否存在 if !(test -d $BackupPath) then mkdir $BackupPath fi #使用mysql提供的mysqlmp備份腳本 /usr/local/mysql/bin/mysqlmp -u$user -p$passwd --allow-keywords --default-character-set=utf8 --set-charset -R -A --master-data=2 >"$BackupPath"/"$BackupFile" #刪除三個月前的備份文件 find "$BackupPath" -name "dbbackup*[log,sql]" -type f -mtime +3 -exec rm -rf {} \;

㈡ Linux 怎麼shell腳本定時備份mysql資料庫

每天定時備份mysql資料庫任務,刪除指定天數前的數據,保留指定天的數據;
需求:
1,每天4點備份mysql數據;
2,為節省空間,刪除超過3個月的所有備份數據;
3,刪除超過7天的備份數據,保留3個月里的
10號
20號
30號的備份數據;
#創建shell文件
vim
backup_mysql.sh
mysqlmp
-uroot
-p123456
--all-databases
>
/data/dbdata/mysqlbak/`date
+%Y%m%d`.sql
find
/data/dbdata/mysqlbak/
-mtime
+7
-name
'*[1-9].sql'
-exec
rm
-rf
{}
\;
find
/data/dbdata/mysqlbak/
-mtime
+92
-name
'*.sql'
-exec
rm
-rf
{}
\;
#創建定時任務
crontab
–e
0
4
*
*
*
/data/dbdata/backup_mysql.sh

㈢ shell腳本怎麼實現日誌備份到本地Linux系統

把日誌打包,壓縮,拉取到本地

㈣ linux自動備份shell

#!/bin/bash
#Function:壓縮備份文件
src_dir="/data/"
bak_dir="/data.bak/"

while:
do
#現獲取所有的目錄
cd$src_dir&&dirs=`ls-l|egrep'^d'|awk'{print$NF}'`
fordirin$dirs:
do
tarzcf${dir}.tgz$dir#壓縮目錄
mv${dir}.tgz$bak_dir#移動壓縮包到備份目錄
done
sleep5#每5s鍾檢查一次
done
#!/bin/bash
#Function:解壓備份文件
src_dir="/data/"
bak_dir="/data.bak/"

while:
do
#現獲取所有的目錄
cd$bak_dir&&tgzs=`ls*.tgz`
fortgzin$tgzs:
do
tarxf$tgz-Csrc_dir#將壓縮包解壓到src_dir目錄下
rm-f$tgz#刪除壓縮包
done
sleep5#每5s鍾檢查一次
done

如上兩個腳本差不多,只不過壓縮和解壓的操作對調了一下,我臨時寫的,沒有測試過,僅供參考,希望對你有幫助

㈤ linux系統上怎樣備份oracle資料庫

步驟以下:1、編寫備份資料庫的shell
1、創建保存shell文件的文件夾,2、文件內容為:#!/bin/sh
PATH=$PATH:$HOME/bin
export
PATH
ORACLE_BASE=/u01/app/oracle
export
ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/proct/10.2.0/db_1
export
ORACLE_HOME
ORACLE_SID=HRDB
export
ORACLE_SID
PATH=/usr/sbin:$PATH
PATH=$ORACLE_HOME/bin:$PATH
export
PATH
exp
fact/fact
file=/backup/fact`date
+%y%m%d`.dmp
log=/backup/factlog`date
+%y%m%d`.log
shell文件編寫終了1、運行以上的shell文件看是不是能生成備份的.dmp文件,如果能則表示shell文件編寫成功
2、然後在此shell文件的所在終端輸入命令,將此文件授權讓root用戶可以履行:
3、命令為:chmod
+x
backup.sh
4、然後到root終端編寫定時備份的語句5、語句為:crontab
–e
6、輸入i
7、輸入10
17
,,,/home/backupscript/backup.sh
8、按下esc建,輸入:wq
退出並保存便可。

㈥ linux系統中,寫一個shell對指定目錄下的文件大於特定值時自動進行備份.加急!

用perl實現較容易

配置文件: /xxx/backup.conf
A 200
B 100
C 50

腳本: /xxx/backup.pl
#!/usr/bin/perl
use strict;
use File::Basename;

# 配置文件名
my $config_file = "/xxx/backup.conf";
# 源目錄
my $src_dir = "/tmp";
#備份目錄
my $backup_dir = "/xxx/backup";
#當前日期
my $today = `date +%Y%m%d`;
$today =~ s/\n//;

# 讀取配置文件

my %conf;
open CONFIG, "<", $config_file;
while(<CONFIG>) {
my($fname, $fsize) = split;
$conf{$fname} = $fsize * 1024 * 1024;
}
close(CONFIG);

# 掃描源目錄,附合條件則進行備份

my @files = <$src_dir/*>;
foreach my $file (@files) {
my $file_basename = basename($file);
if ( -f $file && $conf{$file_basename}) {
if( -s $file > $conf{$file_basename} ) {
system "cp ${file} ${backup_dir}/${file_basename}.${today}";
if($?) {
#遇到錯誤就退出
die " ${file} to ${backup_dir}/${file_basename}.${today} failed!\n";
}
unlink ${file};
}
}
}

㈦ linux文件備份shell腳本

每次備份滿25個後再刪除:你每次備份是不同的文件名嗎?

如果計算個數:

num=${ls 文件名 |wc -l } //就可以計算

if [$num -gt 25] //加條件

then
find $back -name *_$date_before -exec rm -rf {} \;

eles
...
fi

㈧ 如何利用shell腳本備份網站數據到遠程linux主機上

第一步: 設置免密碼登錄 請參考 如何ssh免密碼登錄linux伺服器
第二步:輸入以下代碼後(注意最後一行的199.101.117.xx改成你自己的那個伺服器地址) 保存退出
[root@niko ~]# vi backup.sh
#!/bin/bash backdir=/backup month=`date +%m` day=`date +%d` year=`date +%Y` dirname=$year-$month-$day mkdir -p $backdir/$dirname mkdir -p $backdir/$dirname/conf mkdir -p $backdir/$dirname/web mkdir -p $backdir/$dirname/db gzupload=upload.tgz cp /etc/httpd/conf/httpd.conf $backdir/$dirname/conf/httpd.conf cd /var/www/html/ tar -zcvf $backdir/$dirname/web/$gzupload ./ scp -r /backup/$dirname [email protected]:/backup
第三步 crontab -e 設置每日定時
[root@niko ~]# crontab -e
第四步 設置每日的10:28分運行backup.sh腳本,注意腳本名最好寫絕對路徑
28 10 * * * /root/backup.sh
第五步 設置腳本運行許可權
[root@niko ~]#chmod +x /root/backup.sh
第六步 在另一台也就是要存放備份的伺服器上新建backup這個文件夾
[root@testvpn backup]#mkdir /backup

㈨ linux 的shell script備份文件,怎沒寫。

BACKUP="/tmp/$bakup.tgz" #這里不需要$
題目不是說要備份到/var/tmp/backup裡面嗎?

我寫個吧:
#!/bin/sh
tar czvf /var/tmp/backup.tar.gz /tmp/*

說明:
tmp目錄下面所有文件 /tmp/* (通配符*)
打包備份文件 /var/tmp/backup.tar.gz
選項解釋:
-c 創建新的檔案文件
-z 用gzip來壓縮/解壓縮文件,加上該選項後可以將檔案文件進行壓縮
-v 詳細報告tar處理的文件信息。如需要靜默執行,可以不加這個選項。
-f 使用檔案文件或設備,這個選項通常是必選的。

㈩ linux shell 循環執行 備份文件

for db in (shop shop_dev caiwu21 zkqe bugfree zentao); do
$DB=$db
/usr/local/mysql/bin/mysqlmp -u$USER -p$PW --lock-all-tables $DB > /bak/$DB1$DATE.sql
done

閱讀全文

與linuxshell備份相關的資料

熱點內容
演算法申請著作權 瀏覽:213
以前手機號換了要怎麼登錄農行app 瀏覽:192
線切割編程系統怎麼繪畫 瀏覽:234
如何搭建雲伺服器異地容災 瀏覽:923
黃金拐點指標源碼 瀏覽:92
演算法導論第九章 瀏覽:276
鴿子為什麼生成伺服器沒反應 瀏覽:490
freebsdnginxphp 瀏覽:216
雜訊消除演算法 瀏覽:608
vue類似電腦文件夾展示 瀏覽:112
後備伺服器有什麼功效 瀏覽:269
連不上伺服器怎麼連 瀏覽:600
什麼構架的可以刷安卓系統 瀏覽:771
愛奇藝APP怎麼兌換CDK 瀏覽:994
程序員買4k顯示器還是2k顯示器 瀏覽:144
python多進程怎麼多窗口 瀏覽:818
電腦文件夾怎麼取消類別 瀏覽:47
cad拉線段命令 瀏覽:924
如何用電腦清理手機沒用的文件夾 瀏覽:100
儲存層次結構對程序員的意義 瀏覽:477