ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

达梦数据库通过Shell脚本定时备份模式(vmware凝思磐石6.0)

2021-05-22 22:03:31  阅读:519  来源: 互联网

标签:dmdba Shell dbbak 备份 导出 6.0 home dexp vmware


目录

 

一、前言

二、环境

三、备份方法

四、操作步骤

4.1、在备份目录新建back.sh脚本文件

4.2、创建定时任务,每天02点执行一次

五、查看执行情况


一、前言

很多项目由于存储空间限制,给数据库备份预留的空间不足,同时数据库中一些数据量大的模式不是必须备份的,这样就可以考虑只备份一些最重要的模式,确保硬件损坏等不可控因素下数据不至完全丢失。

二、环境

操作系统:凝思磐石6.0

数据库:达梦7

三、备份方法

编写shell脚本,利用达梦dexp工具、crontab定时任务、tar解压缩来做。

四、操作步骤

4.1、在备份目录新建back.sh脚本文件

dmdba@dmdsc01:~/dbbak$ touch back.sh
dmdba@dmdsc01:~/dbbak$ chmod 755 back.sh
dmdba@dmdsc01:~/dbbak$ vim back.sh

脚本内容如下

schname=PI6000
filename=$schname-$(date '+%Y%m%d%H%M%S')
echo $filename

## 设置环境变量
export DM_HOME=/home/dmdba/dmdbms
export PATH=$DM_HOME/bin:$DM_HOME/tool:$PATH:$HOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$DM_HOME/bin

## 导出用户PI6000的数据
/home/dmdba/dmdbms/bin/dexp userid=SYSDBA/SYSDBA owner=$schname directory=/home/dmdba/dbbak/ file=$filename.dmp log=$filename.log parallel=4

## 压缩备份文件和日志文件然后删除dmp和log文件
cd /home/dmdba/dbbak
tar zcvf $filename.tar.gz *.dmp *.log --remove-files

## 保存30天备份文件,删除29天之前备份
find /home/dmdba/dbbak/ -mtime +29 -name "*.tar.gz" -exec rm -rf {} \;

dexp命令参数说明

root@dmdsc01:/home/dmdba/dbbak# /home/dmdba/dmdbms/bin/dexp help
dexp V7.6.1.92-Build(2021.02.26-135621)ENT 
格式: ./dexp  KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN)

例程: ./dexp  SYSDBA/SYSDBA GRANTS=Y TABLES=(SYSDBA.TAB1,SYSDBA.TAB2,SYSDBA.TAB3)

USERID 必须是命令行中的第一个参数

关键字              说明(默认值)
--------------------------------------------------------------------------------
USERID              用户名/口令 格式:USER/PWD*MPP_TYPE@SERVER:PORT#SSLPATH@SSLPWD
FILE                导出文件 (dexp.dmp)
DIRECTORY           导出文件所在目录
FULL                整库导出 (N)
OWNER               以用户方式导出 格式 (user1,user2,...)
SCHEMAS             以模式方式导出 格式 (schema1,schema2,...)
TABLES              以表方式导出 格式 (table1,table2,...)
FUZZY_MATCH         TABLES选项是否支持模糊匹配 (N)
QUERY               用于导出表的子集的select 子句
PARALLEL            用于指定导出的过程中所使用的线程数目
TABLE_PARALLEL      用于指定导出的过程中表内的并发线程数目,MPP模式下会转换成单线程
TABLE_POOL          用于指定表的缓冲区个数
EXCLUDE             忽略指定的对象 
                       格式 EXCLUDE=(CONSTRAINTS,INDEXES,ROWS,TRIGGERS,GRANTS) or
                            EXCLUDE=TABLES:table1,table2 or
                            EXCLUDE=SCHEMAS:sch1,sch2 
INCLUDE             包含指定的对象 
                       格式 INCLUDE=(CONSTRAINTS,INDEXES,ROWS,TRIGGERS,GRANTS) or 
                            INCLUDE=TABLES:table1,table2
CONSTRAINTS         导出约束 (Y)
TABLESPACE          导出对象带有表空间 (N)
GRANTS              导出权限 (Y)
INDEXES             导出索引 (Y)
TRIGGERS            导出触发器 (Y)
ROWS                导出数据行 (Y)
LOG                 屏幕输出的日志文件
NOLOGFILE           不使用日志文件(N)
NOLOG               屏幕上不显示日志信息(N)
LOG_WRITE           日志信息实时写入文件: 是(Y),否(N)
DUMMY               交互信息处理: 打印(P), 所有交互都按YES处理(Y),NO(N) 
PARFILE             参数文件名
FEEDBACK            每 x 行显示进度 (0)
COMPRESS            导出数据是否压缩 (N)
ENCRYPT             导出数据是否加密 (N)
ENCRYPT_PASSWORD    导出数据的加密密钥
ENCRYPT_NAME        加密算法的名称
FILESIZE            每个转储文件的最大大小
FILENUM             一个模板可以生成的文件数
DROP                导出后删除原表,但不级联删除 (N)
DESCRIBE            导出数据文件的描述信息,记录在数据文件中
LOCAL               MPP模式下登录使用MPP_LOCAL方式(N)
HELP                打印帮助信息

4.2、创建定时任务,每天02点执行一次

root@dmdsc01:/home/dmdba/dbbak# crontab -e

00 02 * * * /home/dmdba/dbbak/back.sh

通过以下命令查看定时任务情况

查看定时任务服务是否启动:service cron status
启动定时任务服务:service cron start
停止定时任务服务:service cron stop
重启定时任务服务:service cron restrat

五、查看执行情况

root@dmdsc01:/home/dmdba/dbbak# ls -lrth
总用量 405M
-rwxr-xr-x 1 root  root      674 5月  22 21:42 back.sh
-rw-r--r-- 1 root  root     405M 5月  22 21:53 PI6000-20210522215101.tar.gz
 

标签:dmdba,Shell,dbbak,备份,导出,6.0,home,dexp,vmware
来源: https://blog.csdn.net/lilv1989/article/details/117171237

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有