当前位置:首页 » 操作系统 » centos数据库自动备份

centos数据库自动备份

发布时间: 2022-05-23 08:31:19

A. oracle11g怎么在centos6.2上自动备份

首先,你要写一个RMAN的备份脚本。并未RMAN制定一个备份策略。比如备份保存多少天。
然后,你要建一个oracle的定时job来自动执行。或者写一个linux的脚本来执行
具体内容请~~ 或者另外开问题来问。。。因为较麻烦~~

另外,好像在EM(网页管理器)里面有设置自动备份的内容,应该很方便。你可以去看看

B. 请教11g 在centos6.5 下数据库备份

#!/bin/bash

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH
#数据库用户名
dbuser='root'
#数据库用密码
dbpasswd='********'
需要备份的数据库,多个数据库用空格分开
dbname='xiaohuai xiaohuai2'
#备份时间
backtime=`date +%Y%m%d%H%M%S`
#日志备份路径
logpath='/home/mysqlbak'
#数据备份路径
datapath='/home/mysqlbak'
#日志记录头部
echo ‘"备份时间为${backtime},备份数据库表 ${dbname} 开始" >> ${logpath}/log.log
#正式备份数据库
for table in $dbname; do
source=`mysqlmp -u ${dbuser} -p${dbpasswd} ${table}> ${logpath}/${backtime}.sql` 2>> ${logpath}/mysqllog.log;

C. centos每天自动备份mysql数据库问题

脚本如下
#!/bin/bash
#功能说明:本功能用于备份数据库
#编写日期:**********
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH
#数据库用户名
dbuser='root'
#数据库密码
dbpasswd='123456'
#数据库名,可以定义多个数据库,中间以空格隔开,如:test test1 test2
dbname='test1 test2'
#备份时间
backtime=`date +%Y%m%d%H%M%S`
#日志备份路径
logpath='/second/backup'
#数据备份路径
datapath='/second/backup'
#日志记录头部
echo ‘"备份时间为${backtime},备份数据库表 ${dbname} 开始" >> ${logpath}/mysqllog.log
#正式备份数据库
for table in $dbname; do
source=`mysqlmp -u ${dbuser} -p${dbpasswd} ${table}> ${logpath}/${backtime}.sql` 2>> ${logpath}/mysqllog.log;
#备份成功以下操作
if [ "$?" == 0 ];then
cd $datapath
#为节约硬盘空间,将数据库压缩
tar jcf ${table}${backtime}.tar.bz2 ${backtime}.sql > /dev/null
#删除原始文件,只留压缩后文件
rm -f ${datapath}/${backtime}.sql
echo "数据库表 ${dbname} 备份成功!!" >> ${logpath}/mysqllog.log
else
#备份失败则进行以下操作
echo "数据库表 ${dbname} 备份失败!!" >> ${logpath}/mysqllog.log
fi

done
定时执行脚本:
方式:
1、
执行 crontab -e
输入以下内容:
______________________________________________________________________________
00 00 * * * /bin/bash yourpath/mysqlbak.sh
2、
打开自动执行文件
vi /etc/crontab
在etc中加入如下内容,让其自动执行任务。
00 00 * * * root /mysqlbak.sh
以上两个 00 00 *** 为每天的凌晨自动执行脚本
分 时 日 月 周 命令M: 分钟(0-59)。每分钟用*或者 */1表示H:小时(0-23)。(0表示0点)D:天(1-31)。m: 月(1-12)。d: 一星期内的天(0~6,0为星期天)。
3、
Redhat方法:
Redhat的crontab采用按时间调用4个目录(/etc/cron.hourly:每小时;/etc/cron.daily:每
天;/etc/cron.weekly:每周;/etc/cron.monthly:每月)中脚本出来运行的方式。
Redhat中只需要将刚才编辑的脚本复制到相应的目录即可。
cp /autobackupmysql.sh etc/cron.daily
重启etc
/etc/rc.d/init.d/crond restart

这样能保证每日跟新准确!!!!!谢谢为您解答!!!!!!

D. 阿里云centos7服务器怎么备份mysql数据库

在服务器上安装一个phpmyadmin,就可以通过网页的方式进行管理mysql
或者是直接备份mysql的数据文件夹
centos系统的话,数据文件夹在mysql安装目录下的var目录
直接将此目录下的文件一份到本地,就可以了。

E. CentOS中如何备份mysql数据库

1 mysqlmp -u(root) -p(password) -h(first host ip) (database name) | mysql -u(root) -p(password) -h(second host ip) (database name)
2 8G就可以了,一般是内存*2。swap如果使用过多,就该考虑增加内存了。

F. centos 下mysql怎么定时备份到本地

写个sh脚本大致内容mysql.sh
mysqlmp -uroot -ptest test>/root/backup/test`date +%Y-%m-%d`.sql

然后计划任务跑下
vi /etc/crontab

G. CentOS如何备份策略

备份要点

备份资料的考虑

造成系统损坏的问题:

硬件问题:硬盘毁坏

软件问题:误删除、安全攻击、

主机角色不同,备份任务也不同

备份因素考虑

备份哪些文件

选择什么备份的设备

考虑备份的方式

备份的频率

备份使用的工具

备份哪些 Linux 数据

具有备份意义的文件通常可以粗分为两大类:

1.系统基本设置信息

2.类似网络服务的内容数据

操作系统本身需要备份的文件:

1./etc/ 整个目录

2./home 整个目录

3./var/spool/mail

4./boot

5./root

6.如果安装过其他的套件,那么 /usr/local 或 /opt 也最好备份一下

网络服务的数据库方面

1.软件本身的配置文件,例如:/etc/整个目录,/usr/local/整个目录

2.软件服务提供的数据,以 WWW 及 MySQL 为例

WWW 数据:/var/www 整个目录或 /srv/www 整个目录,及系统的用户主文件夹

MySQL:/var/lib/mysql 整个目录

3.其他在 Linux 主机上面提供服务的数据库文件

推荐需要备份的目录

1./boot

2./etc

3./home

4./root

5./usr/local (或者是 /opt 及 /srv 等)

6./var (注:若这个目录当中有些临时目录则可以不备份)

不需要备份的目录

1./dev

2./proc

3./mnt 与 /media

4./tmp

选择备份设备

存储设备的考虑

备份速度要求:思考硬盘用途

存储容量:磁带备份考虑

经费与数据可靠性:DVD 的使用,可保存 10 年左右

一些常见的设备代号:

光驱:/dev/cdrom (其实应该是 /dev/sdX 或 /dev/hdX)

磁带机:/dev/st0 (SCSI界面),/dev/ht0 (IDE界面)

软盘驱动器:/dev/fd0,/dev/fd1

硬盘:/dev/hd[a-d][1-16] (IDE),/dev/sd[a-p][1-16] (SCSI/SATA)

移动硬盘:/dev/sd[a-p][1-16] (与 SCSI 相同)

打印机:/dev/lp[0-2]

备份的种类、频率与工具的选择

备份的方式:

1.增量备份

2.差异备份

完整备份的增量备份 (Incremental backup)

还原的考虑

增量备份的原则

所谓的增量备份,指的是在系统进行完第一次完整备份后,经过一段时间的运行,比较

系统与备份文件之间的差异,然后金备份有差异的文件而已。

增量备份使用的备份软件

完整备份常用的工具有: dd、 cpio、 pm/restore

直接进行增量备份的命令:pm

dd if=/dev/sda of=/dev/sdb

find / -print | cpio -covB > /dev/st0

cpio -iv < /dev/st0

1.完整备份

mp -0u -f /backupdata/home.mp /home

2.第一次进行增量备份

mp -1u -f /backupdata/home.mp.1 /home

tar -exclude /proc --exclude /mnt --exclude /tmp

--exclude /backupdata -jcvp -f /backupdata/sys.tar.bz2

完整备份的差异备份 (differential backup)

差异备份值的是:每次的备份都是与原始的完整备份比较结果

tar -N 񟭉-06-01' -jpcv -f /backupdata/home.tar.bz2 /home

rsync -av 源目录 目标目录

rsync -av /home /backupdata/ (将 /home/ 镜像到 /backupdata/home/ 去)

rsync -av /home /backupdata/ (再次进行会快很多,如果数据没有改动,几乎不会进行任何操作)

关键数据备份

tar -jpcvf mysql.`date +%Y-%m-%d`.tar.bz3 /var/lib.mysql

H. 如何自动备份腾讯云CENTOS上的所以设置

腾讯云CBS三副本备份,最大限度保障数据不丢失。
也可以对镜像做备份或磁盘快照。
自动备份需要通过脚本来操作。

I. 怎样利用CentOS自动备份增量文件

还是利用crontab功能,这个功能太实用了,赞一个先

利用人家的备份脚本:
---------------------------------代码开始----------人称可爱的分割线------------------------------------------------------
#!/bin/bash
#好的做法
#根据项目不同来重命名该脚本
#例如 amountebak.sh or pandawillsbak.sh
#该脚本最好放在 $bakpp定义的绝对路径部分
#你可以在$bakpp下找到相应的备份文件
#例如 /usr/backup/amountebak.sh or /usr/backup/pandawillsbak.sh

########## Init Path ########
# 在下面的参数中必须定义的参数有 $bakpp、$project、$projectpp
TAR=/bin/tar
# 存放备份文件的地方,以项目名称区分
bakpp=/var/www/html/media/backupfiles/"$project"
# 需要备份的文件夹,文件夹的路径
project=media
projectpp=/var/www/html/media/root/
# parament for varible
ym=`date +%Y%m`
ymd=`date +%Y%m%d`
# 存储备份文件的子目录,以月份区分,他的上级目录是$bakpp定义的
monthbakpp=$bakpp/$ym
gidpp=$monthbakpp
gidshot=gid$project$ym
# 完全备份的文件名
fullname=$ym
# 增量备份的文件名
incrementalname=$ymd
# Record the location of the log
log=$bakpp/$project.log

############ chk_full #######################
# 检查完全备份是否存在,如果不存在就创建它

#this function check fullbackup file exist or not , if not then create fullbackup now

chk_full()
{
if [ -e "$monthbakpp"/"$project"_"$ym"_full.tar.gz ];then
echo ""$project"_"$ym"_full.tar.gz file exist!! ====`date +%Y-%m-%d-%T` " >>$log
else
tar_full
fi
}
######### chk_incremental ########
# 检查增量备份是否存在
chk_incremental()
{
while [ -e "$monthbakpp"/"$project"_"$incrementalname"_incremental.tar.gz ]
do
incrementalname=`echo "$incrementalname + 0.1" | bc `
done
}
######## tar_incremental #######
# 执行增量备份
tar_incremental()
{
cd $projectpp
echo "BEIGIN_TIME=====`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$incrementalname"_incremental.tar.gz" >> $log
sleep 3
$TAR -g $gidpp/$gidshot -zcf $monthbakpp/"$project"_"$incrementalname"_incremental.tar.gz $project
echo "END_TIME========`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$incrementalname"_incremental.tar.gz" >> $log
}

######## tar_full ###########
tar_full()
{
touch $gidpp/$gidshot
cd $projectpp
echo "BEIGIN_TIME=====`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$fullname"_full.tar.gz" >> $log
$TAR -g $gidpp/$gidshot -zcf $monthbakpp/"$project"_"$fullname"_full.tar.gz $project
echo "END_TIME========`date +%Y-%m-%d-%T` ==== CREATE "$project"_"$fullname"_full.tar.gz" >> $log
}

########### backup ##############################
# 总体调用备份,此时会做相应的检查以确保备份前提准备充分
backup()
{
if [ -d $monthbakpp ]; then
chk_full
chk_incremental
tar_incremental
else
mkdir -p $bakpp/$ym
tar_full
fi
}

########### let's begin #############
# 先检查$bakpp是否存在,如果不存在先创建后备份
if [ -d $bakpp ];then
backup
else
mkdir -p $bakpp
backup
fi
#advice you can create a file for put backup file, eg /usr/cctcc
#crontab
#mini hours day month week command
# */5 * * * * /home/mmroot/zbb/aaa.sh
# 0 1 */1 * * /home/mmroot/zbb/aaa.sh
# tar -ztf test.tar.gz 查看备份文件里面的文件

---------------------------------代码结束----------人称可爱的分割线------------------------------------------------------

说明一下我的目录结构

挂载装数据的分区shda5 挂载到/var/www/html/media

php web文件放到/var/www/html/media/root

要备份的就是/var/www/html/media/root/media目录

存放备份目录在/var/www/html/media/bacupfiles

把以上代码建立一个文件放入/usr/tmp/autobakfile.sh

修改/usr/tmp/task加入一行:

原来的这行:*/2 * * * * elinks -source http://localhost/autotasks.php

加入这行:
12 12 * * * /usr/tmp/autobakfile.sh

每天12点12分执行 这个脚本

另外注意就是 chmod +x /usr/tmp/autobakfile.sh 给予执行权限,要不然会提示没有权限

the end

J. centos 6.5 mysql 自动备份数据库脚本怎么写

#!/bin/bash

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH
#数据库用户名
dbuser='root'
#数据库用密码
dbpasswd='********'
需要备份的数据库,多个数据库用空格分开
dbname='xiaohuai xiaohuai2'
#备份时间
backtime=`date +%Y%m%d%H%M%S`
#日志备份路径
logpath='/home/mysqlbak'
#数据备份路径
datapath='/home/mysqlbak'
#日志记录头部
echo ‘"备份时间为${backtime},备份数据库表 ${dbname} 开始" >> ${logpath}/log.log
#正式备份数据库
for table in $dbname; do
source=`mysqlmp -u ${dbuser} -p${dbpasswd} ${table}> ${logpath}/${backtime}.sql` 2>> ${logpath}/mysqllog.log;

热点内容
湛江移动服务器ip 发布:2024-10-26 13:12:17 浏览:633
找回dns服务器地址 发布:2024-10-26 12:48:23 浏览:239
王者皮肤系统脚本 发布:2024-10-26 12:46:44 浏览:507
电脑配置8g怎么查看 发布:2024-10-26 12:40:58 浏览:810
布朗编程 发布:2024-10-26 12:35:27 浏览:305
php平滑重启 发布:2024-10-26 12:25:33 浏览:945
竹压缩板材 发布:2024-10-26 12:21:32 浏览:754
重大校园网服务器地址 发布:2024-10-26 12:06:10 浏览:876
js引入php 发布:2024-10-26 12:05:48 浏览:469
编程扩大条件 发布:2024-10-26 11:58:06 浏览:341