Linux 自动备份oracle数据库详解

Linux 自动备份oracle数据:

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

所以,在工作中,不管是开发还是维护,备份数据库是非常有必要。

简单实用的晚间自动备份数据库小案例

步骤一、创建备份脚本,暂且命名为orabak.sh

#路径名,指定备份的路径
FILEPATH = /oracle/orabak

#根据指定日期格式,定义备份数据库文件名
FILENAME = `date + %Y%m%d_%H%M

#切换至指定路径,并创建文件夹
cd $FILEPATH
mkdir $FILENAME
chmod 775 $FILENAME

#oracle变量设置
export USER=oracle;
export ORACLE_SID=orcl;
export ORACLE_HOME=/oracle/app/oracle/product/11.2.0/dbhome_1;
export PATH=$ORACLE_HOME/bin:$PATH;

#导出数据库 这里使用了exp 可以根据需要使用expdp
exp scott/tiger@orcl file="$FILENAME ".dmp log="$FILENAME".log owner=scott rows=y

#打包+加压
cd ..
tar -cf $FILENAME.tar $FILENAME
rm -rf $FILENAME
gzip $FILENAME.tar
exit
EOF

步骤二、使用定时脚本crontab自动调用备份脚本

linux/aix 使用crontab -e命令,再最后一行加入改功能脚本,例如:

10 12 * * * sh  /oracle/orabak/orabak.sh

关于linux下crontab的使用

  minute hour day month dayofweek command

minute - 从0到59的整数
    hour - 从0到23的整数
    day - 从1到31的整数 (必须是指定月份的有效日期)
    month - 从1到12的整数 (或如Jan或Feb简写的月份)
    dayofweek - 从0到7的整数,0或7用来描述周日 (或用Sun或Mon简写来表示)
    command - 需要执行的命令(可用as ls /proc >> /tmp/proc或 执行自定义脚本的命令)

对于以上各语句,星号(*)表示所有可用的值。例如*在指代month时表示每月执行(需要符合其他限制条件)该命令。

整数间的连字号(-)表示整数列,例如1-4意思是整数1,2,3,4

指定数值由逗号分开。如:3,4,6,8表示这四个指定整数。

符号“/”指定步进设置。“/”表示步进值。如0-59/2定义每两分钟执行一次。步进值也可用星号表示。如*/3用来运行每三个月份运行指定任务。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

时间: 2016-10-11

Linux下安装Oracle 11g出现prvf-0002错误解决办法

Linux下安装Oracle 11g出现prvf-0002错误解决办法 Linux下安装Oracle 11g,有时会提示一个错误: 提示是不能获取本地节点名. PRVF意思应是安装前的检查,没有查出缩写,我猜是Pre-Requisite VeriFication的缩写.若错了还请指正. 使用oerr工具看看, oerr prvf 0002 0002, ERROR_LOCAL_NODENAME_NOT_FOUND, "Could not retrieve local nodename"

Linux中Oracle启动侦听报错TNS:permission denied的解决方法

前言 最近在开发环境 oracle 启动侦听的时候,出现了 TNS:permission denied 的问题,通过网上和咨询朋友,最终找到了解决方案,现在共享出来给有需要的朋友. 错误描述 [oracle@oracle ~]$ lsnrctl start LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 27-MAR-2015 15:37:59 Copyright (c) 1991, 2009, Oracle. All rights r

Linux下修改Oracle监听地址的方法

lisenter.ora 目录在 /opt/oracle/11g/network/admin LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.111.123)(PORT = 1521)) ) ) ADR_BASE_LISTENER = /opt/oracle tnsnames.o

Linux中Oracle服务启动和停止脚本与开机自启动

在CentOS 6.3下安装完Oracle 10g R2,重开机之后,你会发现Oracle没有自行启动,这是正常的,因为在Linux下安装Oracle的确不会自行启动,必须要自行设定相关参数,首先先介绍一般而言如何启动oracle. 一.在Linux下启动Oracle 登录到CentOS,切换到oracle用户权限 # su – oracle 接着输入: $ sqlplus "/as sysdba" 原本的画面会变为 SQL> 接着请输入 SQL> startup 就可以正

Linux下安装Oracle(CentOS-Oracle 12c)的方法

第一步:网络连接,在我的上一篇博客中有介绍,不再多说. 网络连接的目的:为了能使用yum命令,在网上直接下载文件. 第二步:前往oracle官网下载12c database服务器端的两个文件:(安装在Linux) linuxamd64_12102_database_1of2.zip linuxamd64_12102_database_2of2.zip 将这两个文件放在Linux的tmp目录下,使用 unzip 命令来解压. database的client的一个文件:(安装在Windows) 32

Linux下通过python访问MySQL、Oracle、SQL Server数据库的方法

本文档主要描述了Linux下python数据库驱动的安装和配置,用来实现在Linux平台下通过python访问MySQL.Oracle.SQL Server数据库. 其中包括以下几个软件的安装及配置: unixODBC FreeTDS pyodbc cx_Oracle 欢迎转载,请注明作者.出处. 作者:张正 QQ:176036317 如有疑问,欢迎联系. 本文档主要描述了Linux下python数据库驱动的安装和配置,用来实现在Linux平台下通过python访问MySQL.Oracle.SQ

linux系统下oracle11gR2静默安装的经验分享

前言: 1.我的linux是64位的redhat6.5,安装的oracle版本是11.2.0的. 2.我这是自己安装的linux虚拟机,主机名为ora11g,ip为192.168.100.122 3.这台机器以前没有安装过oracle数据库,这是第一次安装:系统安装好了之后,仅仅只配了ip地址:所以新手完全可以按照我的步骤装一次oracle. 准备工作: 1.确认主机名一致: [root@ora11g ~]# vi /etc/hosts 在末尾添加   (#其中192.168.100.123为本

Linux系统下为Nginx安装多版本PHP

我们在安装配置服务器LNPM环境时应该考虑到PHP多版本并存的问题,下面是实现Linux系统下为Nginx安装多版本PHP的实现方法 linux版本:64位CentOS 6.4 Nginx版本:nginx1.8.0 php版本:php5.5.28 & php5.4.44 注意假如php5.5是主版本已经安装在/usr/local/php目录下,那么再安装其他版本的php再指定不同安装目录即可. 安装PHP # wget http://cn2.php.net/get/php-5.4.44.tar.

Linux系统下自行编译安装MySQL及基础配置全过程解析

安装依赖: CentOS: # yum -y install wget gcc-c++ cmake make bison ncurses-devel perl unzip Ubuntu:(使用ubuntu下面有不少需要root权限,请注意) 复制代码 代码如下: # sudo apt-get install -y g++ gcc make libpcre3 zlib1g libbz2-dev automake cmake perl libncurses5-dev bison 添加MySQL系统用

MySQL入门完全指南及Linux系统下基本的安装教程

我们来了解一下MySQL的基本特性: 1.内部构件和可移植性 使用C和C++编写 用众多不同的编译器进行了测试 能够工作在众多不同的平台上.请参见2.1.1 "MySQL支持的操作系统". 使用GNU Automake.Autoconf和Libtool进行移植. 提供了用于C.C++.Eiffel.Java.Perl.PHP.Python.Ruby和Tcl的API. 采用核心线程的完全多线程 如果有多个CPU,它能方便地使用这些CPU. 提供了事务性和非事务性存储引擎. 使用了极快的&

Linux系统下virtuoso数据库安装与使用详解

最近在调研关联数据的一些东西,需要用到rdf数据库,所以接触了virtuoso数据库.安装的坑其实并不多,之前在windows 10上安过一次.这次在ubuntu 18.04上安装一下,其他的linux发行版安装的流程也差不多. virtuoso数据库的下载与使用 开源版本的virtuoso数据库可以在sourceforge下载.我用的是7.25版本.建议下载已经编译好的generic版本(下载图中标红色的那个),需要编译的那个版本我遇到了openssl版本不支持的问题. 下载完毕后将其解压到/

Linux系统下PHP-FPM的安装和配置教程

基本安装方法 安装工具包 $ sudo apt-get install python-software-properties 添加ppa源 $ sudo add-apt-repository ppa:yola/php5 安装php5-fpm sudo apt-get update sudo apt-get install php5-fpm 其它必要的软件安装接 sudo apt-get install nginx 配置php-fpm php-fpm的解析器是C/S结构,它的配置文件位于: (1)

Oracle VM VirtualBox 在linux系统下安装增强插件实现访问主机的共享文档方法

一.安装增强插件 1 选择"设备"--"安装增强功能",然后可以看到在虚拟机的光驱中自动加载了增强iso的文件(VBoxGuestAdditions.iso) 2在linux 中挂载光驱 mount /dev/cdrom /mnt 3在将/mnt文件中的所有文件拷在/tmp目录下 cp -r /mnt/* /tmp 4在安装增强文件之前安装相应的包,安装后重启 yum install kernel yum install kernel-headers kernel-

最新Linux系统下安装MySql 5.7.17全过程及注意事项

1.cd /usr/local/ ##进入local目录 2.cp /home/soft/MySQL-5.7.15-Linux-glibc2.5-x86_64.tar.gz /usr/local/ ##拷贝mysql压缩到local目录 3.cd /usr/local/ ##进入local目录 4.tar -xzvf mysql-5.7.15-linux-glibc2.5-x86_64.tar.gz ##解压mysql压缩包 5.mv mysql-5.7.15-linux-glibc2.5-x8

在linux系统下安装redis的方法

去官网找到合适的版本,可以直接下载下来,再用fxp上传,也可以直接以下面这种方式下载: $ wget http://download.redis.io/releases/redis-3.2.9.tar.gz $ tar xzf redis-3.2.9.tar.gz $ cd redis-3.2.9 $ make 启动服务: $ src/redis-server 测试是否成功: $ src/redis-cli redis> set foo bar OK redis> get foo "

Linux系统下使用rpm方式安装最新mysql5.7.17完整步骤

1.下载以及前面的rpm安装步骤请参照 Linux 使用rpm方式安装最新mysql(5.7.16)步骤以及常见问题解决 2.四个rpm包安装完成后执行mysqld --initialize --user=mysql 如果提示目的文件夹内有文件: 直接将/var/lib/mysql/ 文件夹下的文件删除干净再次执行. 完成后 进入日志文件查找初始化生成的密码vi /var/log/mysqld.log 3.登录修改密码 mysql -u root -p 第一次更改密码前所有的操作都是禁止的,依次