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语句是判断脚本是否执行成功 好吧 如果有什么不明白的再问我吧