ITPub博客

首页 > 数据库 > 国内数据库 > 【手摸手玩转 OceanBase 131】Python 应用程序连接 OceanBase 数据库

【手摸手玩转 OceanBase 131】Python 应用程序连接 OceanBase 数据库

原创 国内数据库 作者:13579NB232 时间:2023-01-19 16:24:17 0 删除 编辑

本文提供 Python 应用程序使用 OceanBase Connector/J 连接 OceanBase 数据库的代码示例。

前提条件

  • 确保设置了基本的数据库开发环境。

  • 确保计算机上的 Java 环境为 Java JDK 8 版本。

  • 确保计算机上的 Python 环境为 3.6.8 版本。

  • 请联系技术支持人员获取 OceanBase Connector/J 驱动程序安装包。

操作步骤

  1. 安装 JayDeBeApi,推荐使用 pip 安装方式,详细信息参见  使用 pip 安装 JayDeBeApi。

    //python3 安装JayDeBeApi
    pip3 install JayDeBeApi
  2. 将 OceanBase Connector/J 的 JAR 安装包放入当前目录。

  3. 与 OceanBase 数据库建立连接。以下文的 test.py 为例。

    #!/usr/bin/env python3.6
    # -*- coding: UTF-8 -*-
    encoding = "utf8"
    import jaydebeapi
    def ob_test():   
            url = 'jdbc:oceanbase://host:port'
            user = 's**@oracle'
            password = '**1***'
            driver = 'com.alipay.oceanbase.jdbc.Driver'
            jarFile = './oceanbase-client-2.2.3.jar'
            sqlStr = 'select * from test_python'  
            # conn=jaydebeapi.connect('oracle.jdbc.driver.OracleDriver','jdbc:oracle:thin:@10.0.0.0:1521/orcl',['hwf_model','hwf_model'],'E:/pycharm/lib/ojdbc14.jar')
            conn = jaydebeapi.connect(driver, url, [user, password], jarFile)
            curs = conn.cursor()
            curs.execute(sqlStr)
            result = curs.fetchall()
            print(result)
            curs.close()
            conn.close()
    ob_test()

    参数说明:

    • url: jdbc:oceanbase://IP:port/?pool=false。OceanBase 数据库连接 IP,通常是一个 OBProxy 地址,以及访问所用的端口号。

    • user: 用户名@租户名。租户的连接用户,oracle 模式的管理员用户名默认是  sys。

      说明

      对于专有云或独立部署的场景, username 的格式为: String username = "用户名@租户#集群"。

    • password:用户密码。

    • driver:类路径,无需更改。

    • jarFile:JAR 安装包路径。

    • sqlStr:执行语句,可根据实际需要更改。

  4. 脚本编写完成后,执行脚本,正常返回查询数据说明数据库连接成功。

    python3 test.py

关于 OceanBase Connector/J 的详细使用信息,请参考文档 《 OceanBase Connector/J》。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70026124/viewspace-2932841/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2023-01-18

  • 博文量
    184
  • 访问量
    93198