Invoking SQL Loader with a DSN - windows

I'm trying to load some data to an Oracle database using SQL Loader. Is it possible to invoke it with specifying the server to load the data into using a DSN instead of a TNS?
Right now my command line looks like this: sqlldr uesr/password#tns_id..., I'd like to replace tns_id with a DSN that points to tns_id. Can SQL Loader figure out the TNS from the DSN by itself?

A database can be identified (in Oracle terms) by a hostname, port (generally 1521) and service/sid.
SQL Loader won't be able to work with a DSN itself, but if you can use Windows scripting or similar to worm the host/port/service information out, you'll be most of the way there.
With a full client installed and a tnsnames.ora do a
tnsping dbname
You should get something like
Attempting to contact
(DESCRIPTION = (ENABLE=BROKEN) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = servname)))
OK (30 msec)
You should then be able to do
sqlplus user/pass#hostname:1521/servname

Related

How to access to Oracle 12c schema from Oracle 11g instance

We have two cloned schemas (from 11g to 12c).
One was created in 2016 and another was created in 2019.
Can anyone please advise on how to connect to cloned schema (12c) from 11g client?
I am able to connect to the schema cloned (12c) in 2016 from 11g client. However, I am unable to connect to the schema which was cloned (12c) in 2019.
Anyone's inputs on priority are highly appreciated.
This is how I understood the question: in order to connect to any database, we use a connect string, e.g.
connect scott/tiger#orcl
ORCL represents the database. Usually, it is an alias we put into TNSNAMES.ORA file and looks like this:
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = db_server_2)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORA11G)
)
)
In order to connect to a new database, you'll have to edit that file and add another alias, to that newly created database. It will probably have another host name and service name. Which ones are they, I don't know. If you know it, fine; if not, ask your DBA.
Suppose it'll look like this:
ORCL12C_2019 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = db_server_12C)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORA12C_2019)
)
)
Then you'd connect to it as
connect scott/tiger#ORCL12C_2019

Connect to Oracle DB via ODBC driver

I'm trying to connect to an Oracle Database via ODBC.
This connection will allow me to connect Power BI Desktop to Oracle.
Using SQL Developer, I can managed to establish the connection, see the tables, views, etc.
Now, using Oracle Client 64-bit ODAC 12c Release 4 (12.1.0.2.4) for Windows x64, I get this tnsnames.ora file with the following configurations:
MYCONNECT=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 123.xxxx.xxx..xxx)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL)
)
)
This all looks ok, but when trying to create the ODBC driver in windows, I get the following after entering the credentials:
And the error:
So, why can I establish the connection via SQL developer and not via ODBC driver?
And how can I solve this problem?
Thanks!

How to connect Oracle 11G database using SQL developer from another computer in a LAN connection

I am very new in database and learning Oracle 11G. So, I do not have deep knowledge on it.
I have several computers in my lab connected via LAN. Oracle 11G is installed in computer-A(192.18.100.115). Now I want to use the database from other computers in my Lab via SQL Developer that is installed into all Computers.
Would you please explain
What I need to do in Computer-A for granting access from other Computers?
What I need to do in other computers for getting access from computer-A?
I will be grateful if any one gives me a proper solution.
What I need to do in Computer-A for granting access from other Computers?
You need to make sure the LISTENER is up and running to accept remote connection requests. Listener.ora is a SQL*Net configuration file used to configure Oracle Database Listeners. You will usually find that in ORACLE_HOME\NETWORK\ADMIN directory.
For example,
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521))
)
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = /u01/app/oracle/product/11.2.0)
(SID_NAME = ORCL)
)
)
As you mentioned your host 192.18.100.115, you need to put it in the hostname.
What I need to do in other computers for getting access from computer-A?
You just need to install Oracle database client. If you only want to connect to the remote DB server, you could install only Instant client.
If you are using SQL Developer, then you could use:
Basic connection type
Or,
TNS connection type
In basic connection type, you need to provide all the connection details in the connection properties itself. For using TNS connection type, you need to configure the tnsnames.ora file present in ORACLE_HOME\NETWORK\ADMIN directory.

LINQPad - Connection String to my Oracle DB

I just started using LINQPad and all works great when connecting to my SQL Server DB, but now I'm trying to set up a second connection to my Oracle DB and I'm getting stuck as to how to do it.
I downloaded the IQ driver (v 2.0.8.0 - Latest) and when I go to add a new connection, I select Oracle as my DB Provider and don't know how to do the rest based upon my usual connection string looking as follows:
Data Source=(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = [IP Address])(PORT = [Port]))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = [Service Name])));User Id=[name];Password=[password];"
I know that you usually post what you've tried, but, believe me, I've tried filling in those text boxes every which way I could think of and keep getting errors when I click the "Test" button.
Also, one of the errors I get is:
License not valid due to the problems with dotConnect for Oracle installation - I don't think that's the only issue, but I'm sure I'll also need to fix that problem too....
Any suggestions / links to offer about what to fill in where to make this work??
THANKS!!!!!!!
I've just got this working with the latest version of LINQPad (4.55.03) Premium, and IQ (2.1.1.0), as of 2015-03-09.
In our workplace, we use the TNSNAMES.ORA file to connect to Oracle 11g using PL/SQL Developer with entries such as:
TNS_NAME =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = the-host-name)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = the-service-name)
)
)
and JDBC connection strings for ColdFusion's connection to Oracle in the format
jdbc:oracle:thin:#
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = the-host-name)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = the-service-name)
)
)
In LINQPad's Choose Data Context window, select the IQ driver and click Next...
Provider: Oracle
Connection Mode: Direct (although my workstation has both 32 and 64 bit Oracle clients installed, which PL/SQL Developer and ColdFusion use, respectively)
Server: the-host-name
User Name: your Oracle username
Password: its password
On the Advanced tab:
Additional connection string options:
SERVICE NAME=the-service-name
Clicking Test shows Connection Successful
The connection icon (a cog) in the connections pane then populated with the list of tables.
There is a build issue in the newest IQDriver release. Revert to previous version (2.0.7) and you won't see that error. Author removed latest version, so you can do that directly from LINQPad (Add connection | Select IQ | Delete Driver | Re-download IQ Driver).

Error with ODBC MS ACCESS - Oracle 9i

I want connect MS Access with Oracle 9i. In Oracle I have a few table and in MS Access I want make a new reccords.
Now I have a problem with ODBC I got error:
"[Microsoft][ODBC driver for oracle][Oracle]ORA-12514: TNS: nasłuchowi nie udało się rozstrzygnąć SERVICE_NAME podanego w deskryptorze połączenia (#12514)..........."
In configuraton file DSN I have only:
[ODBC]
DRIVER=Microsoft ODBC for Oracle
and after that I must write login, password and server (I writing example data 192.168.1.1)
my TNSNAMES.ORA
BAZA_AAA =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xxxxx)(PORT = 1521))
(CONNECT_DATA = (SERVICE_NAME = BAZA_AAA))
)
Others program example SQL Server , TOAD, windows console writing my database but not access
please help me
Instead of IP of server try to use TSN name: BAZA_AAA.
Also this was the 1st time I used MS driver for Oracle. I have always used drivers by Oracle. Do you have them installed? Have you tried them? They have 'TNS Service Name' field and 'Test Connection' button :-)

Resources