@@ -899,8 +899,16 @@ If using python-oracledb fails:
899899- If you have multiple versions of Python installed, ensure that you are
900900 using the correct python and pip (or python3 and pip3) executables.
901901
902+ - If ``import oracledb `` gives a warning like ``Python 3.6 is no longer
903+ supported by the Python core team. Therefore, support for it is deprecated in
904+ python-oracledb and will be removed in a future release `` then plan to
905+ upgrade Python. You can temporarily suppress the warning by importing the
906+ `warnings <https://docs.python.org/3/library/warnings.html >`__ module and
907+ adding a call like ``warnings.filterwarnings(action='ignore',
908+ module="oracledb") `` *before * importing ``oracledb ``.
909+
902910- If you get the error ``DPI-1047: Oracle Client library cannot be
903- loaded ``:
911+ loaded `` then :
904912
905913 - Review the :ref: `features available in python-oracledb's default Thin mode
906914 <featuresummary>`. If Thin mode suits your requirements, then remove calls
@@ -958,17 +966,53 @@ If using python-oracledb fails:
958966 file in the ``/etc/ld.so.conf.d `` directory contains the path to the
959967 Instant Client directory, and then run ``ldconfig ``.
960968
961- - If you get the error ``DPY-3010: connections to this database server
962- version are not supported by python-oracledb in thin mode `` when
963- connecting to Oracle Database 11.2, then you need to enable Thick mode by
969+ - If you get the error ``DPY-3010: connections to this database server version
970+ are not supported by python-oracledb in thin mode `` when connecting to Oracle
971+ Database 11.2, then you need to enable python-oracledb's Thick mode by
964972 installing Oracle Client libraries and calling
965- :meth: `oracledb.init_oracle_client() ` in your code. Alternatively,
966- upgrade your database.
973+ :meth: `oracledb.init_oracle_client() ` in your code. Alternatively, upgrade
974+ your database.
967975
968976- If you get the error ``DPI-1072: the Oracle Client library version is
969- unsupported ``, then review the installation requirements. The Thick
970- mode of python-oracledb needs Oracle Client libraries 11.2 or later.
971- Note that version 19 is not supported on Windows 7. Similar steps shown
972- above for ``DPI-1047 `` may help. You may be able to use Thin mode which
973- can be done by removing calls :meth: `oracledb.init_oracle_client() ` from
974- your code.
977+ unsupported ``, then review the installation requirements. The Thick mode of
978+ python-oracledb needs Oracle Client libraries 11.2 or later. Note that
979+ version 19 is not supported on Windows 7. Similar steps shown above for
980+ ``DPI-1047 `` may help. You may be able to use python-oracledb Thin mode
981+ which can be done by removing calls :meth: `oracledb.init_oracle_client() `
982+ from your code.
983+
984+ - If you get the error ``DPY-3015: password verifier type 0x939 is not
985+ supported by python-oracledb in thin mode ``, then either :ref: `enable Thick
986+ mode <enablingthick>` or:
987+
988+ 1. Make sure the database initialization parameter
989+ ``sec_case_sensitive_logon `` is not FALSE. To check the value, connect as
990+ SYSDBA in SQL*Plus and run ``show parameter sec_case_sensitive_logon ``.
991+ Note this parameter has been `removed in Oracle Database 21c
992+ <https://docs.oracle.com/en/database/oracle/oracle-database/21/nfcon/security-solutions.html#GUID-FAF4C7A6-A2CD-4B9B-9A64-3705F693ECF0> `__
993+ so only step 2 is required for this, or subsequent, database versions.
994+
995+ 2. Regenerate passwords for users who have old password verifiers. You can
996+ find such users with the query:
997+
998+ .. code-block :: sql
999+
1000+ select username from dba_users
1001+ where (password_versions = '10G ' or password_versions = '10G HTTP ')
1002+ and username <> 'ANONYMOUS';
1003+
1004+ You can reset passwords for these users with commands like ``alter user
1005+ x identified by y ``.
1006+
1007+ See the Oracle documentation `Finding and Resetting User Passwords That Use
1008+ the 10G Password Version
1009+ <https://www.oracle.com/pls/topic/lookup?ctx=dblatest&id=GUID-D7B09DFE-F55D-449A-8F8A-174D89936304> `__
1010+ for more information.
1011+
1012+ - If you get the error ``DPY-4011: the database or network closed the
1013+ connection `` in python-oracledb's default Thin mode, check if the database
1014+ requires the use of Native Network Encryption (NNE). The python-oracledb
1015+ documentation on :ref: `nne ` shows a query from V$SESSION_CONNECT_INFO and
1016+ sample output to confirm this. To resolve the error, either change the
1017+ architecture to use TLS instead of NNE, or :ref: `enable python-oracledb Thick
1018+ mode <enablingthick>`.
0 commit comments