Linux下MySQL备份以及crontab定时备份,Linux下定时备

作者:计算机知识

[root@ www.linuxidc.com ~]# echo "cd /;(time (tar cvf /dev/nst0 data1;tar rvf /dev/nst0 data2) >/tmp/tar.log) 2>>/tmp/tar.log" |at 23:00 8/10/12

1. 备份某些数据库

1. Mysql备份某个数据库的吩咐

Linux下MySQL备份以及crontab定时备份,Linux下定时备份到磁带机小脚本。2011年三月10昼晚上11点自动备份/data1、/data2目录下的数码,把备份进度和备份耗费时间记录到/tmp/tar.log文件中
亚洲必赢626.net, 
ps:at会把布置职务保存到/var/spool/at目录下,重启服务器时,要是时光超越内定时间,就不再运维,若无一点点名时间,只指按时分,重启后会以当下光阴为准,运维安插任务。亚洲必赢626.net 1

##################################################################
# 备份某个数据库
##################################################################

# root 用户,创建备份目录
mkdir -p /usr/local/cncounter/mysql_dump
cd /usr/local/cncounter/mysql_dump

# 导出数据库,热备
mysqldump -u root -pmypasssecret cncounter > cncounter_dump.sql.20140414_1333

复制代码 代码如下:

2. 重操旧业某些数据库

################################################################## 
# 备份有些数据库 
################################################################## 

##################################################################
# 还原某个数据库
##################################################################
# 修改密码
# mysqladmin -u root password "mypasssecret"
# mysqladmin -u root password oldpass "mypasssecret"

# 登录
mysql -u root -pmypasssecret

-- 热备只是备份数据库内部的表,以及数据
use cncounter;
source /usr/local/cncounter/mysql_dump/cncounter_dump.sql.20140414_1333;
exit;

# root 客户,成立备份目录 
mkdir -p /usr/local/cncounter/mysql_dump 
cd /usr/local/cncounter/mysql_dump 

3. crontab 定期备份

# 导出数据库,热备 
mysqldump -u root -pmypasssecret cncounter > cncounter_dump.sql.20140414_1333 

3.1 编辑备份脚本

2. Mysql还原某些数据库的下令

##################################################################
# crontab 定时备份
##################################################################
# 
# root 用户,创建执行脚本
mkdir -p /root/mysql_dump/data
cd /root/mysql_dump
touch mysql_back.sh
chmod 755 mysql_back.sh

# 编辑备份脚本
vim mysql_back.sh

################下面是备份脚本的内容
#!/bin/sh
# File: /root/mysql_dump/mysql_back.sh
# Database info
DB_NAME="cncounter"
DB_USER="root"
DB_PASS="mypasssecret"
# Others vars
# whereis mysqldump
# IS ` but not '
BIN_DIR="/usr/bin"
BCK_DIR="/root/mysql_dump/data"
DATE=`date  %Y%m%d_%H%M%S`
# TODO
mkdir -p $BCK_DIR
$BIN_DIR/mysqldump --opt -u$DB_USER -p$DB_PASS $DB_NAME 
 > $BCK_DIR/$DB_NAME.dump_$DATE.sql

复制代码 代码如下:

理所当然,奉行的本子也得以不用那么灵活: 在那之中央银行末尾的 反斜线() 的意思是shell 指令换行,借使写在单行内部,就不再必要.

################################################################## 
# 还原有个别数据库 
################################################################## 
# 修改密码 
# mysqladmin -u root password "mypasssecret" 
# mysqladmin -u root password oldpass "mypasssecret" 

/usr/bin/mysqldump --opt -uroot -pmypasssecret cncounter 
> /root/mysql_dump/data/cncounter.dump_`date  %Y%m%d_%H%M%S`.sql

# 登录 
mysql -u root -pmypasssecret 

3.2 添加到crontab

-- 热备只是备份数据库内部的表,以致数据 
use cncounter; 
source /usr/local/cncounter/mysql_dump/cncounter_dump.sql.20140414_1333; 
exit; 

# 添加到crontab
crontab -e

# 添加一行,root用户不需要指定执行的用户名,ESC,wq
1 1 * * * /root/mysql_dump/mysql_back.sh

# 不一定需要重启crontab服务
# service crond restart

3. 使用crontab 定期备份Mysql

3.3 crontab 轻易表明

3.1 备份脚本

本文由bwin必赢发布,转载请注明来源

关键词: