Download Oracle Client 19

0 views
Skip to first unread message

Geneva Andreotti

unread,
Aug 5, 2024, 8:04:30 AM8/5/24
to beitantsurmo
OracleInstant Client enables development and deployment of applications that connect to Oracle Database, either on-premise or in the Cloud. The Instant Client libraries provide the necessary network connectivity and advanced data features to make full use of Oracle Database. The libraries are used by the Oracle APIs of popular languages and environments including Python, Node.js, Go, PHP and Ruby, as well as providing access for Oracle Call Interface (OCI), Oracle C++ Call Interface (OCCI), JDBC OCI, ODBC and Pro*C applications. Tools included in Instant Client, such as SQL*Plus, SQL*Loader and Oracle Data Pump, provide quick and convenient data access.

Instant Client RPM packages for Oracle Linux can now be installed from yum.oracle.com for Oracle Linux 8 and Oracle Linux 7. Older releases are available for Oracle Linux 9, Oracle Linux 8, Oracle Linux 7 and Oracle Linux 6.


Whether your applications are in the cloud or on-premise, you can install Instant Client and connect to cloud databases. Follow the normal installation process for your operating system. Some cloud-specific references are shown below.


DigiCert retired the Organizational Unit (OU) field for all public TLS/SSLcertificates to comply with industry standards as of August 2022. This meansthat public TLS/SSL certificates issued by DigiCert will no longer have an OUfield. Refer to MOS note 2911553.1for details.



To avoid disruption to applications connecting to Oracle Autonomous Database onShared Exadata Infrastructure (ADB-S) during the server side certificatechange, you must use hostname based matching of the server certificate.



The following versions of Oracle Instant Client automatically support hostnamebased matching:



Versions: 18.19 (or later), 19.2 (or later), 21 (base release or later), 23.4 (or later)

Oracle Call Interface (OCI), Oracle C++ Call Interface (OCCI) or ODBCapplications must use one of the above client versions.Oracle Database drivers based on Oracle Instant Client or Oracle DatabaseClient (e.g ODPI-C, python-oracledb Thick mode, cx_Oracle, node-oracledb Thick mode,godror, PHP OCI8, PHP PDO_OCI, ruby-oci8, ROracle, and rust-oracle) must usethe driver with a compatible client version from the list above.An additional step is required if you have changed the ADB-S connection string.



ADB-S connection strings contain a hostname "...(HOST=xyz)..." which depends onthe region. For example, in the Chicago region the hostname would be"adb.us-chicago-1.oraclecloud.com". If you have replaced the default hostnamewith an IP address or a custom hostname, then hostname based DN matching willfail. The solution is to add a new entry to your /etc/hosts file using theoriginal ADB-S domain suffix. Your connection string should then use this newname. For example an entry "localtunnel.adb.us-chicago-1.oraclecloud.com"could be created and used.


IIRC, the install was just pointed to a network share, then a .reg file was generated and rolled out to the clients, so when they opened up an app that needed the client, it pointed to the client on the network drive.


Present day, company I am doing some work for is still using an Oracle 10 client for a legacy app using Oracle 10 database, which is going away in a few months. In the meantime, they need to test an app that needs an 11 or later client, and are also rolling out Windows 10 before the end of the year and want to include a newer Oracle client as part of the roll out.


I'd like to look at having the client on a network share, initially so this new app can be tested with a newer client, and if there are no show stopping issues with this use the network install approach instead of installing it on client workstations.


Can anyone point me to an Oracle document that actually states that production use of the Oracle client is covered by the server license?

All of the documents I've found talk about how database is licensed, but nothing ever actually states that the client software is covered by the server license. I've found lots of posts where people say the client is covered by the server, but no response by a person who works for Oracle.

I have an Oracle database server I need to connect to on production. We need to use orapki to create the Oracle wallet for use with Oracle Data Access Component (ODAC). The DB server admin told me to download the full client from -windows-downloads.html, but the license agreement that shows up when you do the download explicitly states that it may not be used on production.

I asked the server admin to provide the Client software and they stated they can't because their licenses are for their use, but I suspect they didn't actually check what their license covered. I'm hoping if I point to a document that states the client is covered by the database license they will provide the client software since it's their license covering it.

I've attempted to get a response to my licensing issue by contacting Oracle multiple times over the past couple weeks using multiple email addresses and the most I've got out of that is that someone will contact me back, but that hasn't happened yet.

I'd appreciate any help anyone can provide. Of course, if someone knows a better way to get orapki I'd love to know that too. I'm also looking into the openSSL solution, but that's proving harder than getting an answer to the client license question.


My configuration works fine on the old version of SQL developer, but in the new version I receive an error when testing the oracle client. My client type is set to Instant Client. See attached. I tried both the old and new instant client as well. Again, the new instant client works fine with the old version of SQL developer, but I get the same error with the new SQL developer and new instant client. Need some help. I am a little stuck right now.


We are having some difficulties getting a new application to connect to Oracle with little help, so far, from the vendor (TIBCO). All they have recommended is installing ODAC, despite our reply that we already have the client installed. Here is our problem (and this may get lengthy as I will provide all we have done so far to resolve):


Right now we're just trying to install the new application on a limited number of developer computers. These computers all have both the 32 and 64-bit Oracle 11.2 client install (with the Administrator option selected). According to the OUI inventory, they have all the seemingly necessary components: ODBC Driver, Oracle Provider for OLE DB, Oracle Data Provider for .NET, and Oracle Providers for ASP.NET. Since the vendor has suggested ODAC, a coworker went ahead and installed it on top of the Oracle client. While it did fix the issue, it appears to have messed up Visual Studio. I'm hesitant to install ODAC simply because I've already got the 32 & 64 bit clients and I don't want to mess up the path variables and registry with unnecessary installs. Not to mention that whatever the final fix is will have to be deployed to dozens of machines, so I'd like to keep it simple.This co-worker sent me a screenshot of the files created by ODAC (12c). I found that all the OLEDB files were already in by BIN directory. However, some files were missing (like oramts.dll). After some googling, I found that the administrator install for the client doesn't exactly install everything. I reran OUI and installed the Oracles Services for Microsoft Transaction Server product, which created the missing files in by BIN directory. So now, I have the 11g version of every file contained in the ODAC screenshow my coworker provided and the application still doesn't recognize it. I have played with my path variable (the ODAC readme suggests putting both the home folder and the BIN folder at the front of the path variable) and done all sorts of combinations (32-bit first, 64-bit first). Also, my registry seems to be in order. HKLM\Software\Oracle\ODP.NET\2.112.1.0 - the DllPath setting is pointing to the 64-bit client BIN directory; Oracle\KEY_OraClient11g_home1 is pointing to 64-bit directory.


When I try to connect to Oracle, I experience this error message. Currently I have both of 32 bits and 64 bits OCI installed. How do I make sure Alteryx picks up 64 bits instead of 32 bits? Any settings from Alteryx?



Currently if I use 32 bits OCI, it works.


I just wanted to respond to this post just to put closure to it, even Henriette had helped you resolve the issue. Generally speaking, the issue appears to have stemmed from moving the location of the installation of the Oracle instant client. Alteryx did not know where to find it after that point. Pointing Alteryx to the new location, along with a few other troubleshooting steps, resolved your issue.


Thank you for your post. As this will likely require a closer look at your computer and configurations, please submit a support request to sup...@alteryx.com. A Customer Support Engineer will be more than happy to assist you.


You can also have both versions of the driver running if needed for backwards compatibility. You just need to have you SQL_PATH with both locations separated by a semi-colon. Keep in mind that Alteryx will only read the variables when it opens, so you will need to close designer and re-open to make Alteryx aware of the new location.


Viewed 10K+ times! This question is You Asked Hi Tom,



Wish you a happy new year!



A theoretical problem that is eating up my mind over the past few days. Your advise would be helpful.



A DBA from our project informed me that a session from my PC got connected on day 1 and is running still in ACTIVE status for two weeks. This has resulted in a lock on the dictionary tables owing to which we have got a performance problem. On day 14, the session was killed at the database to get rid of the problem. (as stated by the DBA)



When I checked the client tool status in my PC, (PL SQL developer in this case), it was not running and I cannot find any relevant process as well in the task manager. We connect to the database over a VPN connection, which terminates itself after 24 hours.



In this case,



How can the session remain ACTIVE in Oracle and holding a lock? When there is an abnormal (VPN exit, process killed) exit / normal termination (proper exit), the session should not hold any locks, isn't? Is the DBA trying to cheat me here? The DBA has provided a session ID, name, logon time, SQL Hash value but says he holds no information on the SQL / PL SQL executed by the session, which resulted in a lock. Please throw some light on this.



Thanks as Always.




and Tom said...It is deceptively easy to do.



TCP/IP doesn't interrupt things by default, by design. When a connection goes away, the client and/or server do not immediately get notified. So, if your client connects to the database and does nothing - and you unplug your client (blue screen it, kill it, pull out the network cable, crash the computer, whatever) the odds are the session will stay in the database. The server will not know that it will never receive a message from you. We have dead client detection for that if it becomes an issue:



_01/network.101/b10776/sqlnet.htm#sthref476



As for the active session, that is really easy. You open a connection, you submit a request over this connection like "lock table T". Table t is locked by your transaction in your session. You then submit a block of code like:



begin

loop

dbms_lock.sleep(5);

end loop;

end;

/



your session will be active for as long as that code is running - the client process is blocked on a socket read waiting for the server to send back a result - a response (which of course will never come). The server isn't touching the network at all right now - it is active with your code. So, if your client 'dies' right now - the block of code will continue to run, and run, and run - and since it never commits - it'll just hang in there and run and of course any locks you have will remain in place.





The dba isn't trying to cheat you. If they were capturing statspack reporting information - they should be able to turn that hash into a sql string, the historical sql statements would be captured in the statspack tables.

Rating (4 ratings)

Is this answer out of date? If it is, please let us know via a Comment Comments Comment Active sessionSrini Sr, January 05, 2010 - 5:05 pm UTC

3a8082e126
Reply all
Reply to author
Forward
0 new messages