linuxmysql備份腳本
A. linux環境下,如何實現異地備份mysql,腳本怎麼寫,已經實現本地自動備份
只要在這個備份腳本下增加一個異地傳輸功能即可。假定異地伺服器建立一個ftp伺服器。
則在本地Mysql備份腳本中將現有的文件打包,或者放置一個獨立目錄,然後上傳到Ftp伺服器即可。其他部分補齊即可。
ftp-n<<!
open$Dest_Server
user$FtpUserName$FtpPassword
binary
promptoff
cd/backpath
lcd/tmp
put"*.tar.gz"
bye
!
B. 怎麼linux下定時備份mysql資料庫備份
shell腳本或者php定時任務
php服務重啟後定時任務會取消
C. 如何備份linux伺服器上的mysql資料庫
其實跟windows是一樣的
簡單的軟備份方法就是使用mysql命令:
mysqlmp
-u
用戶名
-p
密碼
-all-databases >
/home/mysql/bak.sql
不過你可以做成shell腳本,然後在crontab
中定時執行,這個方法在數據量少時比較好使
如果你的數據比較重要,又多建議使用集群+硬體RAID1,0來保障服務
D. 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 {} \;
E. linux系統下mySQL資料庫 備份方法和腳本
資料庫備份
1.創建個備份存儲目錄
mkdir
/root/backup/
2.以下內容寫到dbbackup.sh
#!/bin/bash
cd
/root/backup/
mysqlmp
-uroot
-pmima123
datatest
>/root/backup/datatest`date
+%Y-%m-%d`.sql
mysqlmp
-uroot
-pmima123
datatest1
>/root/backup/datatest1`date
+%Y-%m-%d`.sql
chmod
+x
dbbackup.sh
F. linux 登錄mysql 後 怎麼備份
用命令實現備份
MySQLl提供了一個mysqlmp命令,我們可以用它進行數據備份。
按提示輸入密碼,這就把tm資料庫所有的表結構和# mysqlmp -u root -p tm > tm_050519.sql數據備份到tm_050519.sql了,因為要總進行備份工作,如果數據量大會佔用很大空間,這時可以利用gzip壓縮數據,命令如下:
# mysqlmp -u root -p tm | gzip > tm_050519.sql.gz
系統崩潰,重建系統時,可以這樣恢復數據:
# mysqlmp -u root -p tm < tm_050519.sql
從壓縮文件直接恢復:
#gzip < tm_050519.sql.gz | mysqlmp -u root -p tm
當然,有很多MySQL工具提供更直觀的備份恢復功能,比如用phpMyAdmin就很方便。但我認為,mysqlmp是最基本、最通用的。
二、利用crontab,系統每天定時備份mysql資料庫
利用系統crontab來定時執行備份文件,按日期對備份結果進行保存,達到備份的目的。
1、創建保存備份文件的路徑/var/backup/mysqlbak
# mkdir -p /var/backup/mysqlbak
2、創建/usr/sbin/bakmysql文件
#vi /usr/sbin/bakmysql.sh
#!/bin/bash
# mysql備份腳本
cd /var/backup/mysqlbak/
dateDIR=`date +"%y-%m-%d"`
mkdir -p $dateDIR/data
for i in `/usr/local/www/mysql/bin/mysql -uroot -plin31415926 -e "show databases" |
grep -v "Database" | grep -v "information_schema"`
do
/usr/local/www/mysql/bin/mysqlmp -uroot -plin31415926 $i |
gzip > /var/backup/mysqlbak/$dateDIR/${i}_${dateDIR}.gz
done
3、修改文件屬性,使其可執行
# chmod +x /usr/sbin/bakmysql
4、修改/etc/crontab
# crontab -e
在下面添加
01 3 * * * root /usr/sbin/bakmysql
#表示每天3點鍾執行備份
這樣每天就可以在/var/backup/mysqlbak下看到備份的sql文件 了!
G. linux下mysql資料庫備份工具有哪些
命令行 mysqlmp
網頁phpmyadmin
H. linux下mysql如何實現每天自動備份
首先建立一個備份文件夾:mkdir
mysql_data_bak在建立一個腳本文件:touch
autobackupmysql.sh打開文件vi
autobackupmysql.sh在腳本中加入如下內容:filename=`date
+%Y%m%d`/usr/bin/mysqlmp
-uroot
-proot
boss
/home/mysql_data_bak/$filename.sql檢查有沒安裝crond,如果沒有,先安裝yum
-y
install
vixie-cronyum
-y
install
crontabs啟動服務
:service
crond
start在CentOS系統中加入開機自動啟動:
chkconfig
--level
345
crond
oncrontab
-e加入內容:00
03
*
*
*
source
/root/autobackupmysql.sh
每天凌晨3點運行此文件,對資料庫進行備份
service
crond
restart到此linux下mysql實現沒天自動備份完成。
I. linux下定時備份Mysql
你的root沒有密碼嗎?
建議使用crontab+shell腳本來備份
#!/bin/bash
#
#Date:2014-9-25
USER=
PASSWORD=
DATABASE=
DIR=
DATE=`date'+%Y\%m\%d-%H:%M'`
DATE1=`date-dlast-month'+%Y\%m\%d-%H:%M'`
HOST=
LOG=/root/mysqlbk.log
COM=mysqlmp
DEL=$DATE1.sql
OPT="-h$HOST-u$USER-p$PASSWORD$DATABASE"
$COM$OPT>$DIR/$DATE.sql
if[$?-eq0]
then
SIZE=`-h$DIR/$DATE.sql|awk'{print$1}'`
rm-f$DIR/$DEL
echo"$DATE$SIZEMysqlbackupsuccessfully$DELwasremoved">>$LOG
else
echo"$DATEMysqlbackupfailed">>$LOG
fi
這是我自己寫的一個備份腳本,USER DATABASE 這是mysql的用戶名和密碼 DIR是備份的路徑
HOST是要備份的mysql的ip地址 我這里是遠程備份,如果你的是本地備份的話,可以把HOST給去掉,然後去掉OPT中 -h $HOST ,如果沒有密碼 就把PASSWORD去掉,還有OPT中的-p 選項以及$PASSWORD , if語句是判斷腳本是否執行成功 好吧 如果有什麼不明白的再問我吧