免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: ★jasson★
打印 上一主题 下一主题

HACMP5.1装好oralce后的问题 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2005-04-13 12:12 |只看该作者

HACMP5.1装好oralce后的问题

修改dbshut好了,不过我一般都不是先用教本kill掉连接再关数据库

论坛徽章:
0
12 [报告]
发表于 2005-04-13 13:39 |只看该作者

HACMP5.1装好oralce后的问题

原帖由 \"RSTSG\" 发表:\n问题就在脚本上。。。\r\n\r\n你用su - oracle -c dbshut来停止数据库。。。\r\n\r\n但是dbshut里面的shutdown是没有参数的。也就是说一旦有一个客户端还连接在你的oracle上,你的oracle就停不下来。\r\n\r\n建议解决方案:\r\n1。..........
\r\n\r\n\r\n\r\n我也认为是这个原因,但补充一点,我也曾遇到过用shutdown imediate也停不了的session,这样HACMP的接管造成超时.如果强制用shutdown abort这样有部分未写入硬盘的数据会掉的,风险太大.因此,还要按具体的实际情况来自已写HACMP启停应用数据库的脚本.

论坛徽章:
0
13 [报告]
发表于 2005-04-13 15:14 |只看该作者

HACMP5.1装好oralce后的问题

trap \'exit\' 1 2 3\r\ncase $ORACLE_TRACE in\r\n    T) set -x ;;\r\nesac\r\n    \r\n# Set path if path not set (if called from /etc/rc)\r\ncase $PATH in\r\n    \"\" PATH=/bin:/usr/bin:/etc\r\n        export PATH ;;\r\nesac\r\n# Save LD_LIBRARY_PATH\r\nSAVE_LLP=$LD_LIBRARY_PATH\r\n\r\n#\r\n# Loop for every entry in oratab file and and try to shut down\r\n# that ORACLE\r\n#\r\n\r\ncat $ORATAB | while read LINE\r\ndo\r\n    case $LINE in\r\n        \\#*) ;;        #comment-line in oratab\r\n        *)\r\n#       Proceed only if third field is \'Y\'.\r\n        if [ \"`echo $LINE | awk -F: \'{print $3}\' -`\" = \"Y\" ] ; then\r\n            ORACLE_SID=`echo $LINE | awk -F: \'{print $1}\' -`\r\n            if [ \"$ORACLE_SID\" = \'*\' ] ; then\r\n                ORACLE_SID=\"\"\r\n            fi\r\n#           Called programs use same database ID\r\n            export ORACLE_SID\r\n            ORACLE_HOME=`echo $LINE | awk -F: \'{print $2}\' -`\r\n#           Called scripts use same home directory\r\n            export ORACLE_HOME\r\n#           Put $ORACLE_HOME/bin into PATH and export.\r\n            PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/etc ; export PATH\r\n#           add for bug 652997\r\n            LD_LIBRARY_PATH=${SAVE_LLP}{ORACLE_HOME}/lib ; export LD_LIBRARY_PATH\r\n            PFILE=${ORACLE_HOME}/dbs/init${ORACLE_SID}.ora\r\n\r\n#            See if it is a V6 or V7 database\r\n            VERSION=undef\r\n            if [ -f $ORACLE_HOME/bin/sqldba ] ; then\r\n                SQLDBA=sqldba\r\n                VERSION=`$ORACLE_HOME/bin/sqldba command=exit | awk \'\r\n                    /SQL\\*DBA: (Release|Version)/ {split($3, V, \".\" ;\r\n                    print V[1]}\'`\r\n                case $VERSION in\r\n                    \"6\" ;;\r\n                    *) VERSION=\"internal\" ;;\r\n                esac\r\n            else\r\n                if [ -f $ORACLE_HOME/bin/svrmgrl ] ; then\r\n                    SQLDBA=svrmgrl\r\n                    VERSION=\"internal\"\r\n                else\r\n                    SQLDBA=\"sqlplus /nolog\"\r\n                fi\r\n            fi\r\n      case $VERSION in\r\n                  \"6\"  sqldba command=shutdown ;;\r\n                  \"internal\"  $SQLDBA <<EOF\r\nconnect internal\r\nshutdown\r\nEOF\r\n                    ;;\r\n                  *)  $SQLDBA <<EOF\r\nconnect / as sysdba\r\nshutdown\r\nEOF\r\n                    ;;\r\n              esac\r\n\r\n            if test $? -eq 0 ; then\r\n                echo \"Database \\\"${ORACLE_SID}\\\" shut down.\"\r\n            else\r\n                echo \"Database \\\"${ORACLE_SID}\\\" not shut down.\"\r\n            fi\r\n        fi\r\n        ;;\r\n    esac\r\ndone\r\n\r\n在上面的脚本中,在shutdown后面加immediate,就这样吗

论坛徽章:
0
14 [报告]
发表于 2005-04-13 19:56 |只看该作者

HACMP5.1装好oralce后的问题

是的,在每一个shutdown后面都加上immediate。\r\n\r\n实际上前面的部分是在确定你使用的oracle版本,以确定用什么命令停止数据库。\r\n\r\n我倒是对zlg88说的“因此,还要按具体的实际情况来自已写HACMP启停应用数据库的脚本.“比较感兴趣,,想知道具体的自己的启停脚本是怎么个写法!?\r\n\r\n呵呵,如果zlg88感兴趣,大家不妨讨论讨论啊!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP