python 通过cx_Oracle操作oracle database

python 通过cx_Oracle对oracle database的打开关闭操作

def dbShutdownImmediate(sid):

    try:

        os.environ['ORACLE_SID']=sid
        # need to connect as SYSDBA or SYSOPER
        connection = cx_Oracle.connect(“/”, mode = cx_Oracle.SYSDBA)

        connection.shutdown(mode = cx_Oracle.DBSHUTDOWN_IMMEDIATE)

        # now close and dismount the database
        cursor = connection.cursor()
        cursor.execute(“alter database close normal”)
        cursor.execute(“alter database dismount”)

        # perform the final shutdown call
        connection.shutdown(mode = cx_Oracle.DBSHUTDOWN_FINAL)
        print “dbShutdownImmediate OK!”
        return True
    except cx_Oracle.DatabaseError,info:
        print “Error: “,info
        return False

def dbShutdownAbort(sid):
    try:
        os.environ['ORACLE_SID']=sid
        handle= cx_Oracle.connect(“/”,mode = cx_Oracle.SYSDBA | cx_Oracle.PRELIM_AUTH)
        handle.shutdown(mode = cx_Oracle.DBSHUTDOWN_ABORT)
        print “dbShutdownAbort OK!”
        return True
    except cx_Oracle.DatabaseError,info:
        print “Error: “,info
        return False

def dbStartup(sid):
    lbok=True
    if lbok: lbok=dbStartupNomount(sid)
    if lbok: lbok=dbMount(sid)
    if lbok: lbok=dbOpen(sid)

# startup nomount:
def dbStartupNomount(sid):
    try:
        os.environ['ORACLE_SID']=sid
        connection = cx_Oracle.connect(“/”,mode = cx_Oracle.SYSDBA | cx_Oracle.PRELIM_AUTH)
        connection.startup()
        print “dbStartupNomount OK!”
        return True
    except cx_Oracle.DatabaseError,info:
        print “Error: “,info
        return False

# mount:
def dbMount(sid):
    try:
        os.environ['ORACLE_SID']=sid
        handle=cx_Oracle.connect(“/”, mode = cx_Oracle.SYSDBA)
        cursor = handle.cursor()
        cursor.execute(“alter database mount”)
        print “dbMount OK!”
        return True
    except cx_Oracle.DatabaseError,info:
        print “Error: “,info
        return False

# open
def dbOpen(sid):
    try:
        os.environ['ORACLE_SID']=sid
        handle=cx_Oracle.connect(“/”, mode = cx_Oracle.SYSDBA)
        cursor = handle.cursor()
        cursor.execute(“alter database open”)
        print “dbOpen OK!”
        return True
    except cx_Oracle.DatabaseError,info:
        print “Error: “,info
        return False

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值