Connect database oracle for automation test (robotframework) - oracle

Can someone help me connecting database oracle on robotframework for data manipulation?
So far I did:
*** Keywords ***
Connect to database
Connect To Database Using Custom Params cx_Oracle
... user='${DBUSER}', password='${DBPASS}', dsn='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=${DBHOST})(PORT=${DBPORT})))(CONNECT_DATA=(SID=${DBName})))'
*** Test Cases ***
Connect to database
#{queryResults} Query SELECT * from tb_example_table
log to console #{queryResults}
But I got error:
DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library: "failed to get message for Windows Error 126". See https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html for help
I tried to install Oracle Instant Client Downloads for Microsoft Windows (x64) 64-bit, but I couldn't find any executable file.

Related

DPI-1047: Cannot locate a 64-bit Oracle Client library: "failed to get message for Windows Error 126"

I am working with dagster and dbt. I have a test repo that I use both on a Debian VM and on my Windows PC. On Debian everything works fine, here on Windows I receive the following Oracle error and can't fix it.
ERROR oracle adapter: Got an error when attempting to open an Oracle connection:
'DPI-1047: Cannot locate a 64-bit Oracle Client library:
"failed to get message for Windows Error 126".
See https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html for help'
INFO oracle adapter: Rolling back transaction.
I am receiving this error even after:
Downloading Oracle Instant client and unzipping it in my Oracle folder (C:\Program Files (x86)\Oracle\instantclient_21_6)
Setting the ORACLE_HOME and PATH.
Installing and importing cx_Oracle.
Initializing cx_Oracle.

Oracle GoldenGate dblogin failed with GGSIC : no OCI environment handle created

I'm in trouble with OGG dblogin.
I've installed an Oracle Server 11.2.0 on my windows server 2012, and I attempted to install an Oracle GoldenGate extension.
When using dblogin with ggsci to create a connection , I got this error:
GGSCI<XXXXX>1>dblogin userid xxx xxx
ERROR:OCI Error DPI <status = 3-DPI-003:no OCI environment handle created>.

ERROR: ORA-12545: Connect failed because target host or object does not exist

I followed this steps to install Oracle 19.6.0 for Ubuntu 18.04:
https://medium.com/#TechExpertise/installing-oracle-sql-developer-on-ubuntu-16-04-lts-bfa4af959deb
Then for some reason I was not able to open sqlplus, so I followed this steps as solution:
https://gist.github.com/tcnksm/7316877
And now I want to log in sqlplus by typing sqlplus / as sysdba, but I am getting:
ERROR: ORA-12545: Connect failed because target host or object does
not exist
So I think I have to make the appropriate settings in listener.ora and tnsnames.ora,
but I am missing this files.
SQL Developer and SQL*Plus are client only tools that connect to a database that must be running somewhere: either on the same host or on another host.
If this database exists you should have its connect string to connect to it with SQL Developer or SQL*Plus
If this database does not exist, you must first create it: there are several ways to do this in addition to install Oracle Database (server - not client) and to create a database:
install Oracle XE 18c on Oracle Linux or Windows: installation will install database software and create a database at the same time (easier for non database specialist)
use a pre-installed VM such as: https://www.oracle.com/database/technologies/databaseappdev-vm.html.

ORA-12170: TNS:Connect timeout occurred on CentOS 7

I am configuring a server in CentOS 7 to connect to an Oracle database within the same network. IP ORACLE = 192.167.10.100 IP SERVER = 192.167.15.123
I have installed the Instant Client Package: Basic, SDK and SQL * Plus. Download link
Then set the environment variables:
ORACLE_HOME=/usr/lib/oracle/12.2/client64
PATH=$PATH:$ORACLE_HOME/bin
LD_LIBRARY_PATH=$ORACLE_HOME/lib
TNS_ADMIN=$ORACLE_HOME/network/admin
When entering with the SQL * Plus through the implicit connection string: With the format.
sqlplus username/password#host:port/sid
sqlplus testuser/orcltiger#192.167.10.100:1521/testdb
I get the error: ORA-12170: TNS: the connection timeout occurred
I have been able to connect with the same credentials from a Windows PC with Oracle SQL Developer but from CentOS I get an error:
Someone to help me find the solution, please.

Perl to Oracle Connection Error: ERROR OCINlsEnvironmentVariableGet(OCI_NLS_CHARSET_ID)

I'm trying to connect to a remote oracle database in my perl app.
When running the app, the following error appears:
"Connection Error: ERROR OCINlsEnvironmentVariableGet(OCI_NLS_CHARSET_ID)"
I got Oracle Instant Client and placed it locally then set the Oracle Home env to it, as I don't have Oracle client installed there.
My code is below:
BEGIN {
$ENV{NLS_LANG} = "AMERICAN_AMERICA.UTF8";
$ENV{OCI_NLS_CHARSET_ID} = "AMERICAN_AMERICA.UTF8";
$ENV{ORACLE_HOME} = #The path to the instant Oracle client";
}
#Connect to database
my $DBHandle = DBI->connect(
"dbi:Oraclehost=$host;sid=$sid;port=$port",
$userName,
$passWord
) or die "Connection Error: $DBI::errstr\n";
I'm using ActiveStat perl on Windows Server 2008, ORACLE 10g
I could find the root cause. I used Oracle Instant Client lite (instantclient-basiclite-win64-10.2.0.5) which contains only binaries. Then I tried Oracle Instant Client - SDK, which contains only lib.
I found that I need to merge both to get my code working, I used the SDK as main client, created a bin directory into it then placed the lite client into it...it works !

Resources