【问题标题】:Db2 DB21019E backup script errorDb2 DB21019E 备份脚本错误
【发布时间】:2014-10-21 13:39:07
【问题描述】:

我正在尝试运行备份脚本来备份数据库示例

 su -c "${DB2Home}/db2 quiesce database immediate force connections" ${InstanceName} 

    echo "[INFO:`date`]Executing the backup command: ${DB2Home}/db2 backup database ${Primary_Server_DBName} to ${BackupFolder} compress without prompting "

   su -c "${DB2Home}/db2 backup database ${Primary_Server_DBName} to ${BackupFolder} compress without prompting" ${InstanceName}

我以 root 用户而不是 db2inst1 用户身份执行脚本

我收到以下错误

    [INFO:Tue Oct 21 18:44:23 IST 2014]Executing the backup command: /opt/ibm/db2/V10.5/bin/db2 backup database TIPDB to /home/db2inst1/backupFolder compress without prompting 
  DB21019E  An error occurred while accessing the directory 
    "/root".

【问题讨论】:

  • 一个简单的答案是:不要root的身份执行DB2命令。
  • 我正在使用 su -c db2inst1 而不是 root 执行命令
  • 这不是你的问题所说的。
  • 我以 root 用户身份运行脚本,我在内部使用 su -c 切换到 db2inst1 用户。顺便说一句,你为什么投反对票?

标签: shell db2 backup


【解决方案1】:

解决方案是添加 . /home/db2inst1/sqllib/db2profile

在 db2 操作之前

【讨论】:

  • 为什么要运行多个su 命令,而不是将所有必要的命令放在一个shell 脚本中并通过su 执行该shell 脚本?
  • 这只是一个例子。我只有两个命令。我不需要它的脚本。
【解决方案2】:

在运行脚本之前使用:

su - db2inst1

然后照常运行脚本:

db2 -stvf /yourpath/createDatabase1.sql

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多