RE: DBD Oracle connectivity
What do you have set for your ORACLE_HOME and any NLS variables? env|grep ORA env|grep NLS Execute the above commands. -Mark -Original Message- From: Vinod Guleria [mailto:vinod.gule...@gmail.com] Sent: Monday, July 26, 2010 12:42 AM To: Alexander Foken Cc: John Scoles; Martin J. Evans; dbi-users@perl.org Subject: Re: DBD Oracle connectivity Hi, I have installed oracle 10g client on my system. But still i am getting error while trying to connect to oracle as follows: DBI connect('host=10.7.85.32;sid=SMDB1;port=1521','wb',...) failed: ERROR OCINls EnvironmentVariableGet(OCI_NLS_CHARSET_ID) Check ORACLE_HOME and NLS settings et c. at test.pl line 19 Pls help me to get rid of this error. Regards, Vinod. On Mon, Jul 19, 2010 at 1:57 PM, Alexander Foken alexan...@foken.de wrote: No, even with DBD::ODBC you need an Oracle client, not for DBD::ODBC itself, but the ODBC manager needs one. Windows comes out of the box with a prehistoric Oracle client that causes more trouble than it is worth, so even there, you want to install a RECENT Oracle client. The only way to avoid installing an Oracle client on a specific machine is to use another machine with an installed Oracle client as a proxy, using DBD::Proxy or DBD::Gofer, or some other proxying code. Alexander John Scoles wrote: I guess you could use DBD::ODBC that does net require an oracle client. cheers John Scoles On Fri, Jul 16, 2010 at 4:50 AM, Martin J. Evans martin.ev...@easysoft.comwrote: Vinod Guleria wrote: Dears, Could you pls let me know that Is there a way to connect to oracle DB(on remote system) without having oracle client on my system. Thanks Regards, Vinod Guleria. If you are absolutely sure you cannot install any Oracle software on your machine you need to search for Oracle Wire Protocol drivers. However, none of these are made by Oracle and if Oracle change the network protocol they will probably stop working until you can get an update from the manufacturer. Also, these WP drivers don't tend to support encryption, XA, failover etc and many other features you get with the Oracle client. A better bet in my opinion is to install Oracle Instant Client. It is a relatively small download and can be installed anywhere - you do not need root permission. Martin -- Martin J. Evans Easysoft Limited http://www.easysoft.com -- New! Learn why how to love your data with Pythian's new webinar series. Topics, details register: http://www.pythian.com/webinars
Re: DBD Oracle connectivity
On 07/25/2010 09:42 PM, Vinod Guleria wrote: Hi, I have installed oracle 10g client on my system. But still i am getting error while trying to connect to oracle as follows: DBI connect('host=10.7.85.32;sid=SMDB1;port=1521','wb',...) failed: ERROR OCINls EnvironmentVariableGet(OCI_NLS_CHARSET_ID) Check ORACLE_HOME and NLS settings et c. at test.pl line 19 Pls help me to get rid of this error. Regards, Vinod. On Mon, Jul 19, 2010 at 1:57 PM, Alexander Foken alexan...@foken.de wrote: No, even with DBD::ODBC you need an Oracle client, not for DBD::ODBC itself, but the ODBC manager needs one. Windows comes out of the box with a ---deleted other ODBC related discussion--- Since you appear to be running in a Windows environment, I wonder if a problem my group encountered several years ago might be the issue? The error text is not identical, at least the portion you've supplied, so this may not be relevant. Use regedit to check you NLS key value at: HKEY_LOCAL_MACHINE\SOFTWARE\Oracle\HOME\NLS_LANG We found it was set to 'NA', which is not a legal language value. Setting it to a legal value ('AMERICAN_AMERICA.WE8MSWIN1252' in our case) fixed the problem. -- Bob McGowan
Re: DBD Oracle connectivity
Hi, I have installed oracle 10g client on my system. But still i am getting error while trying to connect to oracle as follows: DBI connect('host=10.7.85.32;sid=SMDB1;port=1521','wb',...) failed: ERROR OCINls EnvironmentVariableGet(OCI_NLS_CHARSET_ID) Check ORACLE_HOME and NLS settings et c. at test.pl line 19 Pls help me to get rid of this error. Regards, Vinod. On Mon, Jul 19, 2010 at 1:57 PM, Alexander Foken alexan...@foken.de wrote: No, even with DBD::ODBC you need an Oracle client, not for DBD::ODBC itself, but the ODBC manager needs one. Windows comes out of the box with a prehistoric Oracle client that causes more trouble than it is worth, so even there, you want to install a RECENT Oracle client. The only way to avoid installing an Oracle client on a specific machine is to use another machine with an installed Oracle client as a proxy, using DBD::Proxy or DBD::Gofer, or some other proxying code. Alexander John Scoles wrote: I guess you could use DBD::ODBC that does net require an oracle client. cheers John Scoles On Fri, Jul 16, 2010 at 4:50 AM, Martin J. Evans martin.ev...@easysoft.comwrote: Vinod Guleria wrote: Dears, Could you pls let me know that Is there a way to connect to oracle DB(on remote system) without having oracle client on my system. Thanks Regards, Vinod Guleria. If you are absolutely sure you cannot install any Oracle software on your machine you need to search for Oracle Wire Protocol drivers. However, none of these are made by Oracle and if Oracle change the network protocol they will probably stop working until you can get an update from the manufacturer. Also, these WP drivers don't tend to support encryption, XA, failover etc and many other features you get with the Oracle client. A better bet in my opinion is to install Oracle Instant Client. It is a relatively small download and can be installed anywhere - you do not need root permission. Martin -- Martin J. Evans Easysoft Limited http://www.easysoft.com -- New! Learn why how to love your data with Pythian's new webinar series. Topics, details register: http://www.pythian.com/webinars
Re: DBD Oracle connectivity
No, even with DBD::ODBC you need an Oracle client, not for DBD::ODBC itself, but the ODBC manager needs one. Windows comes out of the box with a prehistoric Oracle client that causes more trouble than it is worth, so even there, you want to install a RECENT Oracle client. The only way to avoid installing an Oracle client on a specific machine is to use another machine with an installed Oracle client as a proxy, using DBD::Proxy or DBD::Gofer, or some other proxying code. Alexander John Scoles wrote: I guess you could use DBD::ODBC that does net require an oracle client. cheers John Scoles On Fri, Jul 16, 2010 at 4:50 AM, Martin J. Evans martin.ev...@easysoft.comwrote: Vinod Guleria wrote: Dears, Could you pls let me know that Is there a way to connect to oracle DB(on remote system) without having oracle client on my system. Thanks Regards, Vinod Guleria. If you are absolutely sure you cannot install any Oracle software on your machine you need to search for Oracle Wire Protocol drivers. However, none of these are made by Oracle and if Oracle change the network protocol they will probably stop working until you can get an update from the manufacturer. Also, these WP drivers don't tend to support encryption, XA, failover etc and many other features you get with the Oracle client. A better bet in my opinion is to install Oracle Instant Client. It is a relatively small download and can be installed anywhere - you do not need root permission. Martin -- Martin J. Evans Easysoft Limited http://www.easysoft.com -- New! Learn why how to love your data with Pythian's new webinar series. Topics, details register: http://www.pythian.com/webinars
Re: DBD Oracle connectivity
Alexander Foken wrote: No, even with DBD::ODBC you need an Oracle client, not for DBD::ODBC itself, but the ODBC manager needs one. Windows comes out of the box with a prehistoric Oracle client that causes more trouble than it is worth, so even there, you want to install a RECENT Oracle client. The only way to avoid installing an Oracle client on a specific machine is to use another machine with an installed Oracle client as a proxy, using DBD::Proxy or DBD::Gofer, or some other proxying code. Alexander You may decide I'm being a little pedantic here but it depends on what you class as an Oracle client. If it is THE Oracle client as in the oci and net8 libraries (whether they come from Oracle's InstantClient or a full database install) then there are ways of talking to Oracle via ODBC that do not need THE client. These are generally called wire protocol drivers and do not need anything installed from Oracle. I mentioned them before because I thought the OP was on a non-windows operating system but even on Windows you do not need THE oracle client for DBD::ODBC or the ODBC driver manager if you use a so called wire protocol driver. Martin -- Martin J. Evans Easysoft Limited http://www.easysoft.com John Scoles wrote: I guess you could use DBD::ODBC that does net require an oracle client. cheers John Scoles On Fri, Jul 16, 2010 at 4:50 AM, Martin J. Evans martin.ev...@easysoft.comwrote: Vinod Guleria wrote: Dears, Could you pls let me know that Is there a way to connect to oracle DB(on remote system) without having oracle client on my system. Thanks Regards, Vinod Guleria. If you are absolutely sure you cannot install any Oracle software on your machine you need to search for Oracle Wire Protocol drivers. However, none of these are made by Oracle and if Oracle change the network protocol they will probably stop working until you can get an update from the manufacturer. Also, these WP drivers don't tend to support encryption, XA, failover etc and many other features you get with the Oracle client. A better bet in my opinion is to install Oracle Instant Client. It is a relatively small download and can be installed anywhere - you do not need root permission. Martin -- Martin J. Evans Easysoft Limited http://www.easysoft.com -- New! Learn why how to love your data with Pythian's new webinar series. Topics, details register: http://www.pythian.com/webinars
Re: DBD Oracle connectivity
I guess you could use DBD::ODBC that does net require an oracle client. cheers John Scoles On Fri, Jul 16, 2010 at 4:50 AM, Martin J. Evans martin.ev...@easysoft.comwrote: Vinod Guleria wrote: Dears, Could you pls let me know that Is there a way to connect to oracle DB(on remote system) without having oracle client on my system. Thanks Regards, Vinod Guleria. If you are absolutely sure you cannot install any Oracle software on your machine you need to search for Oracle Wire Protocol drivers. However, none of these are made by Oracle and if Oracle change the network protocol they will probably stop working until you can get an update from the manufacturer. Also, these WP drivers don't tend to support encryption, XA, failover etc and many other features you get with the Oracle client. A better bet in my opinion is to install Oracle Instant Client. It is a relatively small download and can be installed anywhere - you do not need root permission. Martin -- Martin J. Evans Easysoft Limited http://www.easysoft.com -- New! Learn why how to love your data with Pythian's new webinar series. Topics, details register: http://www.pythian.com/webinars
Re: DBD Oracle connectivity
Vinod Guleria wrote: Dears, Could you pls let me know that Is there a way to connect to oracle DB(on remote system) without having oracle client on my system. Thanks Regards, Vinod Guleria. If you are absolutely sure you cannot install any Oracle software on your machine you need to search for Oracle Wire Protocol drivers. However, none of these are made by Oracle and if Oracle change the network protocol they will probably stop working until you can get an update from the manufacturer. Also, these WP drivers don't tend to support encryption, XA, failover etc and many other features you get with the Oracle client. A better bet in my opinion is to install Oracle Instant Client. It is a relatively small download and can be installed anywhere - you do not need root permission. Martin -- Martin J. Evans Easysoft Limited http://www.easysoft.com