Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Python DPI-1047 Không thể định vị dlopen (libclntsh.dylib) trên macOS

Mã của tôi luôn thực hiện điều này:

import os
import platform
if platform.system() == "Darwin":
    cx_Oracle.init_oracle_client(lib_dir=os.environ.get("HOME")+"/Downloads/instantclient_19_8")

Đây là giải pháp thuận tiện nhất. Nếu bạn gặp lỗi 'đã được khởi tạo', hãy đảm bảo rằng bạn chỉ gọi init_oracle_client() một lần mỗi quy trình Python.

Ngoài ra, bạn có thể tìm mã nhị phân cx_Oracle của mình như:

[email protected]:~$ python
Python 3.9.6 (default, Aug 20 2021, 13:36:17) 
[Clang 12.0.5 (clang-1205.0.22.11)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import cx_Oracle
>>> cx_Oracle
<module 'cx_Oracle' from '/Users/cjones/.local/lib/python3.9/site-packages/cx_Oracle.cpython-39-darwin.so'>

và sau đó, trong cửa sổ dòng lệnh, hãy làm như sau:

ln -s $HOME/Downloads/instantclient_19_8/libclntsh.dylib $HOME/.local/lib/python3.9/site-packages

Phần mềm này dành cho macOS - bất kỳ người dùng Linux nào đọc phần này nên lưu ý rằng giải pháp này sẽ không hoạt động trên Linux.

oradiag_xxx thư mục dành cho các dấu vết "khách hàng" của Oracle. Bạn có thể xóa nó bất cứ lúc nào.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. làm thế nào để gán giá trị cho biến trong biểu thức cho một khối PL / SQL?

  2. Cách phân tích cú pháp xml bằng xmltable khi sử dụng không gian tên trong xml (Oracle)

  3. Oracle - VỚI BẢN THÂN => MERGE? (Lỗi cú pháp, )

  4. Cài đặt các biểu mẫu và báo cáo Oracle 11g Release 2

  5. CHỌN trả về nhiều hàng dưới dạng chuỗi