python oracle数据库备份脚本

简介:

学习python,将shell备份脚本改成了python脚本练手.python oracle备份脚本一例如下。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/usr/bin/env python  
# -*- coding: utf-8 -*- 
import  time
import  os
#配置oracle环境变量参数
os.environ[ "NLS_LANG" =  "Simplified Chinese_china.ZHS16GBK"
os.environ[ 'ORACLE_HOME' =  '/u01/app/oracle/product/10.2.0/db_1'
os.environ[ 'PATH' =  "/u01/app/oracle/product/10.2.0/db_1/bin"  +  ":"  +  os.environ[ 'PATH' ]
os.environ[ 'ORACLE_SID' =  "orcl"
os.environ[ 'LANG' =  "en_US"
#打印提示信息。
exp_node1  =  "\n成功备份文件到目录...."
exp_node2  =  "备份失败"
cls_node1  =  "数据库备份数据清除成功,删除语句如下...."
cls_node2  =  "数据库备份清除失败"
#配置导出的数据库信息
data_path  =  '/tmp/'
db_username  =  'abc'
db_password  =  'abc'
db_name  =  'abc'
"""
print os.getenv('NLS_LANG')
print os.getenv('ORACLE_HOME')
print os.getenv('ORACLE_SID')
"""
def  oracle_exp():
      exp_command  =  "exp %s/%s file=%s%s_%s-%s-%s_%s%s%s.dmp log=%s%s_%s-%s-%s_%s%s%s.log"   %  (db_username,db_password,data_path,db_name,time.strftime( '%Y' ),time.strftime( '%m' ),time.strftime( '%d' ),time.strftime( '%H' ),time.strftime( '%M' ),time.strftime( '%S' ),data_path,db_name,time.strftime( '%Y' ),time.strftime( '%m' ),time.strftime( '%d' ),time.strftime( '%H' ),time.strftime( '%M' ),time.strftime( '%S' ))
      exp_note  =  "数据库备份执行语句...."
      print  "\033[1;31;40m%s\033[0m"  %   exp_note
      print  "\033[1;31;40m%s\033[0m"  %   exp_command
      if  os.system(exp_command)  = =  0 :
         print  "\033[1;32;40m%s\033[0m"  %  exp_node1
      else :
         print  "\033[1;31;40m%s\033[0m"  %  exp_node2
 
def  backup_clear():
      cls_command1  =  '/usr/bin/find %s -mtime +1 -name "*.dmp" -exec rm -rf {} \;'  %  data_path
      cls_command2  =  '/usr/bin/find %s -mtime +1 -name "*.log" -exec rm -rf {} \;'  %  data_path
      if  os.system(cls_command1)  = =  0  and  os.system(cls_command2)  = =  0 :
         print  "\n\033[1;32;40m%s\033[0m"  %  cls_node1
      else :
         print  "\n\033[1;31;40m%s\033[0m"  %  cls_node2
      print  "%s"  %  cls_command1
      print  "%s\n"  %  cls_command2
 
def  main(): 
      oracle_exp() 
      backup_clear()
if  __name__  = =  "__main__"
      main()

执行结果:

image

image




本文转自 koumm 51CTO博客,原文链接:http://blog.51cto.com/koumm/1438673,如需转载请自行联系原作者

目录
打赏
0
0
0
0
349
分享
相关文章
oracle数据恢复—oracle数据库执行错误truncate命令的数据恢复案例
oracle数据库误执行truncate命令导致数据丢失是一种常见情况。通常情况下,oracle数据库误操作删除数据只需要通过备份恢复数据即可。也会碰到一些特殊情况,例如数据库备份无法使用或者还原报错等。下面和大家分享一例oracle数据库误执行truncate命令导致数据丢失的数据库数据恢复过程。
Python中使用Flask-SQLAlchemy对数据库的增删改查简明示例
这样我们就对Flask-SQLAlchemy进行了一次简明扼要的旅程,阐述了如何定义模型,如何创建表,以及如何进行基本的数据库操作。希望你在阅读后能对Flask-SQLAlchemy有更深入的理解,这将为你在Python世界中从事数据库相关工作提供极大的便利。
238 77
【Oracle】使用Navicat Premium连接Oracle数据库两种方法
以上就是两种使用Navicat Premium连接Oracle数据库的方法介绍,希望对你有所帮助!
640 28
【赵渝强老师】Oracle的闪回数据库
Oracle闪回数据库功能类似于“倒带按钮”,可快速将数据库恢复至 earlier 状态,无需还原备份。本文介绍了闪回数据库的使用方法及实战案例:包括设置归档模式、开启闪回功能、记录SCN号、执行误操作后的恢复步骤等。通过具体 SQL 操作演示了如何利用闪回数据库恢复被误删的用户数据。注意,使用此功能前需确保数据库为归档模式。
116 9
【赵渝强老师】Oracle数据库的闪回表
本文介绍了Oracle数据库中的闪回表(Flashback Table)功能,它能够将表的数据快速恢复到特定时间点或系统改变号(SCN),无需备份。文章通过实战示例详细演示了如何使用闪回表恢复数据,包括授权、创建测试表、记录时间与SCN号、删除数据、启用行移动功能、执行闪回操作以及验证恢复结果等步骤。同时,还展示了如何通过触发器禁止插入操作,并在闪回过程中处理触发器的启用问题。文末附有视频讲解,帮助读者更好地理解闪回表的使用方法。
171 10
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
【赵渝强老师】Oracle数据库的闪回查询
本文介绍了Oracle数据库的闪回查询(Flashback Query)功能及其实际应用。闪回查询通过`AS OF`子句,结合时间戳或SCN号,可查询历史数据状态,帮助分析数据差异。文中通过具体示例演示了如何使用闪回查询:创建测试表、记录当前SCN号、更新数据并提交事务,最后通过闪回查询获取历史数据。附带的视频和代码块详细展示了操作步骤与结果。
141 4
【赵渝强老师】Oracle数据库的闪回技术
在Oracle数据库操作中,难免会遇到误删表或提交错误事务等问题,可能导致数据丢失甚至数据库停止运行。传统解决方法依赖备份恢复,但需提前准备正确备份。为此,Oracle提供了闪回技术,无需备份即可快速恢复数据。它支持7种类型的操作,如闪回查询、版本查询、表恢复等,能有效应对逻辑损坏和用户错误。闪回技术基于还原(undo)数据管理,启用自动管理后可实现高效恢复。
127 0
【赵渝强老师】Oracle数据库的客户端工具
本文介绍了Oracle数据库的三种客户端工具:SQL*Plus、Oracle Enterprise Manager Database Express(EM)和SQL Developer的使用方法。首先通过命令行工具SQL*Plus登录数据库,创建用户并授权,建立部门与员工表,插入数据并查询;接着讲解了如何通过浏览器访问EM界面监控数据库及表空间状态;最后演示了SQL Developer的下载安装、连接配置以及执行查询的过程,帮助用户快速上手Oracle数据库管理与操作。

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问