【Oracle安装及使用】超级详细的初次在python中使用Oracl图文详解!手把手教你从安装Oracle到在python中连接Oracle!

【Oracle安装及使用】超级详细的初次在python中使用Oracl图文详解!手把手教你从安装Oracle到在python中连接

  • 一、准备工作
  • 二、安装Oracle
  • 三、配置并测试Oracle
  • 四、python连接Oracle
  • 参考:

一、准备工作

需要安装pycharm、
主要任务:安装Oracle、Oracle环境配置、新建数据库、测试、pycharm中下载包、pycharm中使用Oracle。

二、安装Oracle

1.Oracle完整安装详解
这篇很详细了,还附了安装包,按照博主一套下来基本没问题。
此外有几个小改动:
(1)HOST我改成了IP地址*

查询自己的本机地址方式如下
win+R cmd 输入 ipconfig
IPv4 地址就是IP地址了

三、配置并测试Oracle

环境配置参考第二篇
2.Oracle 数据库安装(19c,SQL Developer,PL/SQL Developer)

在“环境变量”的“系统变量”(我的电脑-属性=高级系统设置)中增加:

ORACLE_HOME变量,变量值是oracle的db home目录:
ORACLE_HOME=D:\Data_Analysis\Oracle\Oracle_Database_19c\oracle_db_home_v1930

TNS_ADMIN 变量,变量值是你的databse安装目录中的\admin\tnsnames.ora文件的路径:
TNS_ADMIN=D:\Data_Analysis\Oracle\Oracle_Database_19c\oracle_db_home_v1930\network\admin

NLS_LANG变量,是用来防止Oracle出现 中文乱码 的配置
NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
————————————————
ORACLE_HOME变量以及TNS_ADMIN 变量的路径都在第一篇参考博主所属的新增加的文件夹product下面,(D:\Databases\Oracle\product)。也就是安装的时候选的目录,如下图。
所以我的分别为
ORACLE_HOME=D:\Databases\Oracle\product\11.2.0\dbhome_1
TNS_ADMIN=D:\Databases\Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN
NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

安装完成后,测试一下能否连接成功:
(1)首先检测监听程序是否打开
cmd 输入 lsnrctl start

(2)服务器打开后,在开始栏找到Net Manger ,并打开
这步还是参考2.Oracle 数据库安装(19c,SQL Developer,PL/SQL Developer)
用户名记得改成system,密码为创建数据库时候的口令。

四、python连接Oracle

(1)在Pycharm中下载cx_Oracle包
如果加载不成功,使用Anaconda Prompt在自己的环境中下载
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple cx_Oracle
(2)Pycharm中输入以下命令

# 导入cx_Oracle
import cx_Oracle as cx
'''
连接oracle需要Oracle客户端版本与 cx_Oracle 版本 与 pycharm版本一致,同时需要配置Oracle客户端的TNS_ADMIN 和path环境变量,不要配置ORACLE_HOME,
否则会出现plsql不能登录的情况。
'''
# connect参数有多种形式,可以在网上查询详细使用 举例用:用户名/密码@地址:端口/实例名
con = cx.connect('system/密码@地址:1521/ORCL')
//密码、地址可以换成自己的;system、XU也可以换其他的;XU是我自己创建的数据库名
cursor = con.cursor()       # 创建游标
cursor.execute("select * from tbl_ec_document WHERE ROWNUM <10000")  # 执行sql语句
data = cursor.fetchone()        # 获取一条数据
print(data)     # 打印数据
cursor.close()  # 关闭游标
con.close()     # 关闭数据库连接

这一步有一些人会报错
需要修改监听listener.ora文件。
(3)修改listener.ora
文件在product文件夹下,我的路径(D:\Databases\Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN)
增加

(SID_DESC =
      (GLOBAL_DBNAME = ORCL)
      (ORACLE_HOME = D:\Databases\Oracle\product\11.2.0\dbhome_1)  
      (SID_NAME = ORCL)
    )

详情参考第三篇
cx_Oracle.DatabaseError: ORA-12514: TNS:listener does not currently know of service requested in con

另外需要注意:上面新添加的内容。 (ORCL – 是你的SID 数据库名),就是pycharm中连接Oracle的代码部分监听的实例名,(3)修改listener.ora, 这步就是为了让名称全部统一。
con = cx.connect(‘system/密码@地址:1521/ORCL’)

显示下图就是成功了。(因为我数据库中没有创建表,所以报错)

(4)回到pycharm中,输入上面的代码

# 导入cx_Oracle
import cx_Oracle as cx
'''
连接oracle需要Oracle客户端版本与 cx_Oracle 版本 与 pycharm版本一致,同时需要配置Oracle客户端的TNS_ADMIN 和path环境变量,不要配置ORACLE_HOME,
否则会出现plsql不能登录的情况。
'''
# connect参数有多种形式,可以在网上查询详细使用 举例用:用户名/密码@地址:端口/实例名
con = cx.connect('system/密码@地址:1521/ORCL')
//密码、地址可以换成自己的;system、XU也可以换其他的;XU是我自己创建的数据库名
cursor = con.cursor()       # 创建游标
cursor.execute("select * from tbl_ec_document WHERE ROWNUM <10000")  # 执行sql语句
data = cursor.fetchone()        # 获取一条数据
print(data)     # 打印数据
cursor.close()  # 关闭游标
con.close()     # 关闭数据库连接

成功~

参考:

安装
1.Oracle完整安装详解
python连接
2.Oracle 数据库安装(19c,SQL Developer,PL/SQL Developer)
3.cx_Oracle.DatabaseError: ORA-12514: TNS:listener does not currently know of service requested in con
python连接Oracle时,几个报错参考
4.解决ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
5.关于oracle连接ORA-12505错误的直观解决方法
6.Oracle ORA-01017: invalid username/password;logon denied问题解决

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
心中带点小风骚的头像心中带点小风骚普通用户
上一篇 2023年11月29日
下一篇 2023年11月30日

相关推荐