shell脚本备份国产达梦数据库代码如下:

1、配置文件:

username=SYSDBA
password=SSSTTTSSS
ipStr=localhost
portNumber=5327
backupsFileStr=/wocloud/db/backups
logsFileStr=/wocloud/db/backups/dmDexpLogs
backupsFileDay=3
dexpStr=/opt/dmdbms/bin/dexp
saveDb=HEBEI

2、代码:

注意:不同linux设备的sh路径可能不同,需通过which sh查看sh的绝对路径修改即可。

#!/bin/sh#db_backups_conf.txt文件路径
db_backups_conf="/wocloud/shell/dm_db_backups_conf.txt"#判断文件是否存在
if [ -f "${db_backups_conf}" ];thenecho $(date +'%Y-%m-%d %H:%M:%S')" 数据库配置信息文件存在,开始进行数据备份"#获取等号前内容,作为map中的Key值dbArrOne=($(awk -F'[=]' '{print $1}' ${db_backups_conf} ))#获取等号后内容,作为map中的value值dbArrTwo=($(awk -F'[=]' '{print $2}' ${db_backups_conf}))#创建一个空mapdeclare -A map=()#通过循环,将db_backups_conf配置文件中的信息存储在map中for((i=0;i<${#dbArrOne[@]};i++))domap[${dbArrOne[i]}]=${dbArrTwo[i]}done #获取备份数据库saveDbStr=${map["saveDb"]}#获取默认的字符串分隔符old_ifs="$IFS"#设置字符串分隔符为逗号IFS=","#将用户名的value值的字符串进行分隔,获取一个数组saveDbArr=($saveDbStr)#将字符串的分隔符重新设置为默认的分隔符IFS="$old_ifs"#获取当前年月日saveday=$(date +%Y%m%d)#获取超出备份天数的年月日delday=$(date -d ${map["backupsFileDay"]}' days ago' +%Y%m%d)#遍历要备份的用户名,删除两天前备份的数据文件for delDb in ${saveDbArr[@]};doecho $(date +'%Y-%m-%d %H:%M:%S')" 删除文件:"${map["backupsFileStr"]}/${delDb}_database_${delday}.dmprm -f ${map["backupsFileStr"]}/${delDb}_database_${delday}.dmpdone#遍历要备份的数据库,备份数据文件for saveDb in ${saveDbArr[@]};doecho $(date +'%Y-%m-%d %H:%M:%S')" 备份数据库:"${saveDb}${map["dexpStr"]} USERID=${map["username"]}/${map["password"]}@${map["ipStr"]}:${map["portNumber"]} FILE=${saveDb}_database_${saveday}.dmp LOG=${map["logsFileStr"]}/${saveDb}_database_${saveday}.txt SCHEMAS=${saveDb} DIRECTORY=${map["backupsFileStr"]}done echo $(date +'%Y-%m-%d %H:%M:%S')" 数据备份完毕,脚本执行完毕"elseecho "文件不存在"
fi

3、配置参数说明:

参数意义如下:
username=数据库oracle一个较高权限用户名
password=密码
ipStr=数据库所在服务器IP地址
portNumber=端口号
serviceName=数据库连接服务名
directoryName=保存文件真实目录(与逻辑目录相同)
backupsFileDay=保留几天的备份文件
expdpStr=导出工具expdp的路径
saveDb=备份的模式名称,多个模式名中间用逗号隔开

4、使用注意事项:

使用注意事项:
1、默认的是.sh、.txt文件都要放在/woclod/shell脚本下,如果放置的路径变了,需要修改.sh中读取.txt配置文件的路径
2、对于不同的Linux环境下,要修改dm_db_backups_conf.txt文件中的配置信息,比如dexp的路径、脚本头部sh路径等信息;
2、用户密码中不要含有@等关键字符;

shell脚本备份国产达梦数据库相关推荐

  1. 开源盛行:为什么学习国产达梦数据库?

    开源盛行:为什么学习国产达梦数据库? 武汉达梦数据库股份有限公司成立于2000年,是国内领先的数据库产品开发服务商,国内数据库基础软件产业发展的关键推动者.公司为客户提供各类数据库软件及集群软件.云计 ...

  2. 基于Enterprise Library的Winform开发框架实现支持国产达梦数据库的扩展操作

    由于一个客户朋友的需求,需要我的Winform开发框架支持国产达梦数据库的操作,这个数据库很早就听过,但是真正一般项目用的很少,一般在一些特殊的项目可能需要用到.由于我的Winform开发框架,是基于 ...

  3. 国产达梦数据库学习笔记(一):NeoKylin7.0安装及配置与常用基础命令

    国产达梦数据库学习笔记(一):NeoKylin7.0安装及配置与常用基础命令 以VMware Workstation Pro 15环境下的NeoKylin7.0与DM8为例 中标麒麟系统NeoKyli ...

  4. oracle向达梦迁移工作量,从Oracle安全移植到国产达梦数据库的DBA实践

    随着我国对信息安全和自主可控技术的日益重视,国产数据库在党政机关.军队和大型央企等行业中得到了快速应用.达梦数据库(以下简称DM)是国内数据库行业领军企业--达梦推出的一款自主可控的高性能数据库产品. ...

  5. 达梦数据库自动备份,DM8设置自动备份,达梦数据库,自动备份。详细步骤。常用命令,启动关闭数据库,查看DMAP状态

    常用命令 DmServiceDAMENG.service改成自己bin目录下文件名 运维常见问题,官方文档 注意事项 登录客户端工具,一定要使用SYSDBA用户进行下面的客户端操作 登录数据库主机,一 ...

  6. 国产达梦数据库与Oracle数据库的区别

    1.登录的区别 oracle:如果sys的密码忘记可以用操作系统验证方式登录修改密码. dm:达梦数据库如果忘记了sysdba的密码则无法登录. 2.数据库的状态 oracle:oracle的状态有s ...

  7. 学习国产达梦数据库随笔(一)

    以中标麒麟Linux Server 6.0 与 达梦v7.6为例,学习国产软件"达梦数据库"入门(安装.连接.卸载) 一.前期准备 1.1. 规划用户和用户组 1)新建文件夹:mk ...

  8. 国产达梦数据库使用心得

    背景 由于项目上的需要,把项目实现国产化,把底层的oracle数据库替换为国产的达梦数据库,花了一周的时间研究了国产的数据库-达梦数据库,它和oracle数据库很相似,⼤部分操作也很相近,对Oracl ...

  9. 0基础学挨踢-国产达梦数据库dmPython安装和避坑(Windows/Linux,离线状态)

    题主还在苦逼的实习生涯中,由于是中国电信,所以处于安全和可控性,目前正在逐步转向国产数据库,例如金蝶,武汉达梦,人大金仓等国产数据库,但是国产数据库比较有趣(折磨),比如达梦家的dmPython就给我 ...

最新文章

  1. 测试机房质量之上传下载速率测试
  2. 内存错误 处理 [CAlayer release]
  3. 字符A-Z - ABCD...XYZ
  4. python与excel的关系-Python与Excel交互——Xlwings
  5. 判断任意控制台输入的十进制数是否为水仙花数
  6. 根据Web服务器的记录来追踪黑客(转)
  7. android和linux操作系统的区别
  8. Python高级编程(三)
  9. go语言php编译,Golang模板编译引擎FET
  10. 问题以及发现问题和解决问题
  11. 转 lucene3搜索引擎,索引建立搜索排序分页高亮显示, IKAnalyzer分词
  12. 读书笔记:《稻盛和夫 阿米巴经营 人人都是经营的主角》
  13. 计算判断两条线是否垂直,平行,相交,求相交点坐标
  14. Python openpyxl文档
  15. java生成pdf文件带页码_java(itext) 简单PDF表格生成工具(带页码)
  16. 计算机开机出现alert,开机提示alert! cover was previously removed(主机盖被移动)
  17. 浅谈数字后端工程师的工作
  18. 良人从零开始的踩坑笔记:浮点数
  19. Springboot 整合activiti及使用案例
  20. 车牌识别C语言源码 第一版

热门文章

  1. 快递查询 快递查询.htm?dh=快递单号
  2. win10 激活方法
  3. 研究生计算机专业选修课挂了,选修课挂科有什么影响 后果严重吗
  4. Excel中 IFERROR 函数 可以错误值#N/A、#value变成空格
  5. python3.x 基础五:模块
  6. 强制对话 setTimeout
  7. 申通java入职流程_java查询申通快递
  8. linux 常用命令 小白快速入门
  9. 【Python】PyGithub+jinja2 生成Github项目简易海报
  10. Fiddler + 海马模拟器抓包教程