摘要:

详细介绍在windows和linux下自动备份数据库的过程,希望可以让新手立即上手吧!

本文档内容共分为2大部分:linux和windows

Linux和windows都分为:准备工作和操作阶段。

Linux的详细步骤为:1.准备文件. 2.连接linux 3.实际操作也就是写命令

windows的详细步骤为:1.准备文件. 2.编辑任务和计划程序。

所用软件:notepad++,ssh

一.linux

1、准备工作(可以在windows下执行本操作)

创建三个文件

1.1文件名:exp.list   (本文件主要用于存储连接数据库的用户名和密码。)

内容:oracle数据库的用户名和密码

创建好了之后如下图:

1.2.文件名:exp.log (本文件主要用于存储在自动备份数据库时的日志信息)

内容:为空就行

1.3.文件名:exp.sh  (本文件主要用于执行备份脚本)

内容:#!/bin/sh

#找到数据库的路径

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1

export PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_OWNER=oracle

export ORACLE_SID=orcl

export NLS_LANG=American_America.ZHS16GBK

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

#执行路径

cd /home/oracle/dbbackup

exptime=$(date +%Y-%m-%d_%H)

#读取创建的exp.list文件里的用户名及密码

cat exp.list | while read dbUser dbPasswd

do

echo $dbUser

exp $dbUser/$dbPasswd GRANTS=Y file=$dbUser"_"$exptime.dmp    #执行导出

if [ "0" == $? ]

then

tar -zcvf $dbUser"_"$exptime.dmp.tar.gz $dbUser"_"$exptime.dmp

rm $dbUser"_"$exptime.dmp

fi

done

#导出文件名

find . -mtime +6 -name "*.dmp.tar.gz" |xargs rm

写完如下图2:

准备工作完成。

2 开始连接linux

2.1.先用ssh连接到oracle服务器(这个过程就不一一赘述了)

2.2.因为上面的文件里的执行路径是 /home/oracle/dbbackup 所以我们写好的三个文件放到本目录下面。

用chmod命令给dbbackup文件夹权限:如:chmod  777  dbbackup

用chmod命令给三个文件执行权限.

2.3把本脚本加入定时任务里面

如果在root用户下,先进入oracle用户.

命令是:su  –  oracle

编辑本用户下的定时任务

命令是:crontab  -e

编辑命令:30 23 * * 0 /home/oracle/dbbackup/exp.sh >> /home/oracle/dbbackup/exp.log 2>&1

本命令的意思是:每星期周日的晚上23时30分执行/home/oracle/dbbackup下的exp.sh脚本,如果脚本执行报错会把错误信息放到exp.log下面。

退出并保存。

用crontab –l查看添加的命令有没有成功:

如果出现上图,就说明成功了。

二.windows系统下创建

2.1先去安装oracle的文件夹下面找到exp.exe文件。

把这个文件复制到你要执行脚本的文件夹。

比如我要执行的脚本是在D:\backup文件夹就放到本文件夹下面。

2.2编写脚本

exp xjshz_1104/123456@orcl file=d:\backup\xjshz%date:~8,10%.dmp log='d:\backup\xjshz%date:~8,10%.log' compress=n buffer=8092 consistent=y direct=n constraints=y feedback=10000  grants=y record=y indexes=y triggers=y rows=y

本语句的意思是从用户名为:xjshz_1104密码为123456sid为:orcl的库里备份。

备份的文件名是:xjshz时间的第8到10位.dmp文件。日志文件同上。

保存文件名为:expbackup.bat

可以先试着双击执行一下本文件,看看会不会生成dmp文件。

2.3在控制面板处找到“任务计划”—>创建任务—> 在操作选项卡点击新建—> 把刚才写的脚本加进来。

2.4在触发器那里设置触发事件时间。

完成。谢谢!

在linux和windows下自动备份数据库的更多相关文章

  1. mysql 在Windows下自动备份

    1.一般备份方法主要为两种: 直接保存数据库data文件夹 mysqldump 用sql命令备份(文件存放目录必须存在) 首先cmd进入MySQL\bin,然后mysqldump --default- ...

  2. windows服务自动备份数据库

    最近写了几个windows服务用于自动备份与删除数据: services代码如下: public partial class Service1 : ServiceBase { public Servi ...

  3. MySql在Windows下自动备份的几种方法

    以下几种全部是批处理命令中对于备份文件 1.复制date文件夹备份============================假想环境:MySQL   安装位置:C:\MySQL论坛数据库名称为:bbs数 ...

  4. Aix/Linux下自动备份oracle数据库

    曾经有个同事,来回操作开发和生产的数据库,结果误删了生产的数据库,那种心情我想不是一般人能理解的,虽然说oracle可以有方法还原,但并不是彻底的. 所以,在工作中,不管是开发还是维护,备份数据库是非 ...

  5. Linux下自动备份MySQL数据库并上传到远程FTP服务器

    Linux下自动备份MySQL数据库并上传到远程FTP服务器且删除指定日期前的备份Shell脚本 说明:  1.备份MySQL数据库存放目录/var/lib/mysql下面的xshelldata数据库 ...

  6. Linux下自动备份Oracle数据库并删除指定天数前的备份

    说明: Oracle数据库服务器 操作系统:CentOS IP:192.168.0.198 端口:1521 SID:orcl Oracle数据库版本:Oracle11gR2 具体操作: 1.root用 ...

  7. Linux下自动备份MySQL数据库详细操作步骤(转载)

    环境说明操作系统:CentOSIP:192.168.150.214Oracle数据库版本:Oracle11gR2用户:root 密码:123456端口:3306数据库:ts_0.ts_1.ts_2.t ...

  8. CentOS下使用crontab+mysqldump实现定时自动备份数据库

    一 : 为什么要进行数据库的备份? 最主要的原因:尽可能地减少损失,包括时间上.精神上和金钱上的损失.很多人都不注意备份数据,以致在发生问题后丢失大量的重要数据.要知道,在地球上网是很危险的,即使做好 ...

  9. MySql在Linux上实现每天自动备份

    Mysql自动备份 创建存放备份sql的文件夹 mkdir /jimisun/mysqlBackup 测试命令行备份数据库 /usr/bin/mysqldump --opt -uroot -pjimi ...

随机推荐

  1. MFC编程入门之七(对话框:为对话框添加控件)

    创建对话框资源需要创建对话框模板.修改对话框属性.为对话框添加各种控件等步骤,前面一讲中已经讲了创建对话框模板和修改对话框属性,本节继续讲如何为对话框添加控件.  上一节中创建了一个名为"A ...

  2. Deep Learning 13_深度学习UFLDL教程:Independent Component Analysis_Exercise(斯坦福大学深度学习教程)

    前言 理论知识:UFLDL教程.Deep learning:三十三(ICA模型).Deep learning:三十九(ICA模型练习) 实验环境:win7, matlab2015b,16G内存,2T机 ...

  3. 0010 Linux 目录操作命令

    01.更改目录 cd  /  返回根目录 cd ~  返回用户根目录 cd -  返回上个操作目录目录 ,等同于cd $OLDPWD 02.查看工作目录 pwd 03.创建目录 mkdir 目录名 0 ...

  4. Chinese culture

      文房四宝 笔墨纸砚是中国古代文人书房中必备的宝贝,被称为“文房四宝”.用笔墨书写绘画在 中国可追溯到五千年前.秦(前221---前206)时已用不同硬度的毛和竹管制笔:汉代(前206—公元220) ...

  5. web字体详解@font-face

    一:字体的下载(http://www.dafont.com/new.php) 二:选择需要的字体并下载( Download ) 三:下载后并解压 四:获取@font-face所需要字体的格式.eot, ...

  6. jQuery轮播

    一,简单实现轮播  //轮播容器 .carousel   //轮播容器--可设宽度      (carousel="轮播") //轮播指标 .carousel-indicators ...

  7. linux修改密码的几种方法

    1.  启动电脑 ,进入grub模式.  也就是下面这个模式: 按下e键,进入下面这个画面.... 选第二个(kernel的那个):  然后按下e键之后进入 下面这个版面: 之后敲入  single ...

  8. VUE应用的一些感受

    方便,数据绑定太方便了. 一个组件一个.vue文件特别清晰. 讲真vue比angular好学多了. webpack打包最近看懂,通过一个主文件把require的文件都打进来.业务代码放build里,引 ...

  9. HR函数学习01——创建组织单位

    创建组织单位: RH_OBJECT_CREATE REPORT ZLYHR01. DATA:LS_OBJ TYPE OBJEC, LV_STU TYPE GDSTR-SVECT, LV_TIT TYP ...

  10. ABAP之声母韵母

    我们一开始上学的时候,老师最先教的是什么? 拼音,声母,韵母,声调等等. 那么ABAP里什么是这些东西呢? 基础的数据类型,已经数据字典里的东西:域,数据元素,结构,视图,表,搜索帮助,锁... 数据 ...