I've begun experiencing a very odd issue with one instance and all of their their db links. When I'm connected via telnet to the unix server, and I connect:
connect myuser/password via sql plus, I connect fine, and the link works.
but when I connect this way:
connect myuser/password@db.tnsname.entry.com using the TNS name specified, I again connect fine but the link calls fails with a TNS cannot resolve service name issue.
This is an existing instance with existing db links, but I repeat the issue on this machine alone with new links. the fully qualified name is the same name entry I'm using to create the link, both when it succeeds and when it fails. This is an 11g instance and the TNSnames file is in the ASM home.Also, i f I connect
connect sys as sysdba I get success as well. This behavior happens with both private and public database links. I'm not aware of any setting changes within this instance, and I've modified (after backing up) the TNSNames file with values from another that works perfectly well. Connecting via remote sqlplus or other JDBC connections gives the same error. Success connecting locally but failure connecting to DB Links when I'm remote. Connecting to the instance shows no issue.
Another instance on the network? An IP config issue in DNS? We have 100's of servers so it's needle in a haystack time. Can I run some sort of trace to see what it's calling to when it works and when it doesn't? (It selects another db's single table and I've confirmed the target is correct and the data is correct).
Send me the M-View broken alert script? as i need to enable M-View broken alert script in my crontab. I need to create a monitoring script that will send an alert when there is any M-View failed in my DB.
i want to use more than four db links in my stored procedure to retrieve data from different databases. but it says ORA-02020: too many database links are opened. i also wrote execute immediate to close some links but its not working.
We have two databases A and B, both are 10g Enterprise edition and we have to replicate only one table from A to B. A is the source and B needs a read only copy. The source of A is modified by User through Oracle Forms.
A latency of 1day can be accepted though the lesser the better. The problem is that this company does not approve of DB links in any form or any tool which in the end has to create a DB link.
Seemingly a very simple problem, but I can't seem to figure it out. Table below is a table that holds UserId' s and LinkId's.
CREATE TABLE UserLink (UserId NUMBER, LinkId NUMBER ); ALTER TABLE UserLink ADD PRIMARY KEY (UserId, LinkId); INSERT INTO UserLink VALUES (1, 1); INSERT INTO UserLink VALUES (1, 2); INSERT INTO UserLink VALUES (3, 1); INSERT INTO UserLink VALUES (4, 1);
I'm looking for a query in which I can plug a List of LinkId's that outputs only users that have a relationship with ALL LinkId's provided. In this example you may assume that the List is equal to (1, 2), but you can't make any assumptions about the size of the list, other than size != 0. The query to find users that match ANY of the provided LinkId's is quite simple:
SELECT UserId FROM UserLink WHERE LinkId IN (1,2)
The correct query should output:
USERID ------ 1
And it should work for any size > 0 list of values.
Basically, we have 2 procedures in 2 different databases. One of them makes a call to the other over a database link passing an associative array as a parameters.
This has woked fine for many years 9.2.0.8.0 but we are in the process of migrating to 11.2.0.2.0 and have started getting compilation errors.
1 > Create TYPE in Database_1 ===================== CREATE OR REPLACE PACKAGE DB1_Pkg IS type x_tab is table of number index by binary_integer; v_tab x_tab; END DB1_Pkg;
How can I determine what views have a dblink hard coded in them? I am talking about a large number of views so bringing up each view's DDL in a GUI data dictionary tool to look is not an option. I tried running the query below unfortunately "text" is a LONG and doesn't allow the use of the "like" statement.
the thread title was a bit confusing, couldn't come up with anything short to describe the question. What I am looking for is a query which will put records into groups based on matching values in one of two columns. So if two records have a matching value in column 1 or column 2 they are in the same group. See the example bellow and expected output for a "better" explanation:
--setup CREATE TABLE foo (foo_id NUMBER NOT NULL PRIMARY KEY, record_number NUMBER, record_value VARCHAR2(1));
[Code]...
--expected output
group# foo_id record_number record_value 1 1 1 A 1 2 1 B 1 3 2 B 1 4 2 C 2 5 3 D 3 6 4 E 3 7 5 E
My initial thought is that is feels a little bit like the sequential seat problem but not quite close enough. I know it could be done iteratively with PL/SQL but I am thinking there must be a way to do it in SQL I am not seeing yet.
I'm currently assessing the design/performance of a Distributed System in which hundreds of Field reps have local Oracle DBs (10.2.0.4) on laptops & have to update a remote database (11.2.0.1) via a PUBLIC database link. Field data (millions of records) collected daily is synched from the local to the remote DB & vise versa through this database link. I have 2 concerns here:
1. Is the database link the best option for such a configuration? (recently field reps have been complaining about the slowness in synchronizing data between local & remote DBs). If not, what other options are available for such processing?
2. I've read a lot about security concerns with using PUBLIC database links, but haven't seen any documents to proof they're a majority security issue. why PUBLIC database links are considered not to be very secure?
I am using SQL Developer.I am self-teaching myself PL/SQL. What I am trying accomplish is to run a select query across many database links at runtime and to insert that query onto a local table. So far, I have only gotten as far as querying the database link names. I am stuck at where my variable calls the database link name. It does not recognize the database link name, and I can't quite grasp the reason why. Below is the first part of my script which does retrieves the column values no problem:
If I break the script down to the bare select query, it will query absolutely fine.If I run the script in its entirety, it will not pick up the variable dbl as a dynamic database link. 02019. 00000 - "connection description for remote database not found"
If I comment out line 031 and prevent the looping of querying of database links (which will only fetch the first value of db_link from dba_db_links), the script will complete and I will have a row inserted into my local table.
I am suspecting it's the looping that is incorrect but I understand it is not going to do anything beyond line 059.
A website requires to display consolidated data from databases located in different geographical regions (India, London and New York). The application server for the website is hosted only in one location India. What are the techniques that can be used for faster retrieval of data from all 3 databases?
Note: There is no need of real time data retrieval from different regions; however the user should able to view the updated data at predefined intervals.
I know how to use database links in various forms, but I've been trying to think through how the authentication works for a connected user link in 11g. If I create the link like this,
create public database link using 'orcl';
then any user can use the link, provided they have an identical username/password in the two databases. With pre-11g passwords, it was understandable: the password was salted with the username, so the hash of the password would be the same in both databases, and I assumed that the logon through the link used some sort of IDENTIFIED BY VALUES mechanism. But in 11g, the salt will different in the two databases. So the hash will be different. And of course Oracle never stores the actual password. So I don't see how the authentication works.
I would like to know if we can insert 300 million records into an oracle table using a database link. The target table is inproduction and the source table is in development on different servers.The target table will be empty and have its indexes disabled before the insert. if this can be accomplished in less than 1 hour.
I know how to use database links in various forms, but I've been trying to think through how the authentication works for a connected user link in 11g. If I create the link like this,create public database link using 'orcl';then any user can use the link, provided they have an identical username/password in the two databases. With pre-11g passwords, it was understandable: the password was salted with the username, so the hash of the password would be the same in both databases, and I assumed that the logon through the link used some sort of IDENTIFIED BY VALUES mechanism. But in 11g, the salt will different in the two databases. So the hash will be different. And of course Oracle never stores the actual password. So I don't see how the authentication works.
Application which I`m creating would work only inside domain. In the report I would like to have a link to files that stored outside from oracle server ( so apex cannot see the file but knows the absolute path to the file ).
And when I click in the report on the link to the file I would like to have this file opened in the application controlled from my OS ( naturally if I have rights to the path specified given from domain level).
I have been trying with column link ( a href, file:// ) and none of them works. I want to avoid APEX from copying files to local path or opening using java or creating directory.
I want to revoke some privileges (given from user, say A, on table TABLE to user B) with SYS, and i've got an error : It says that I can't revoke a privilege that I didn't give.
In DBA_TAB_PRIVS, there's no information about that : I can't know who gives the privilege (when I try to perform the REVOKE statment with OWNER, GRANTOR, I've got the same error).
I'm trying to configure and run replication. I have two PC's running as Oracle servers, having both of them the same configuration:
Windows XP Pro Oracle 11g Enterprise Edition
First server is called Oracle1, and database name is orcl1. Second server name is Oracle2 and database name is orcl2..I'm running the following
SYSTEM/oracle1 alter system set global_names=true; alter system set job_queue_processes=100; ALTER DATABASE RENAME global_name TO orcl1.world;
SYSTEM/oracle2 alter system set global_names=true; alter system set job_queue_processes=100; ALTER DATABASE RENAME global_name TO orcl2.world;
SYSTEM/oracle1
CREATE PUBLIC DATABASE LINK orcl2.world USING '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(Host=Oracle2)(Port=1521)))(CONNECT_DATA=(SID=orcl2.world)))';
CREATE USER repadmin IDENTIFIED BY clave DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp QUOTA UNLIMITED ON users; [code]...
I am not able to register the database with 12cR1 CRS . Gettting the error as follows,
bash-3.2$ /opt/oracle/product/11.2.0/db3/bin/srvctl add database -d 11gr2tstdb -o /opt/oracle/product/11.2.0/db3PRCR-1006 : Failed to add resource ora.nishtest.db for nishtestPRCD-1184 : Failed to upgrade configuration of database type to version 11.2.0.3.0PRCR-1071 : Failed to register or update resource type ora.database.typeCRS-0245: User doesn't have enough privilege to perform the operation
We are into pre-production stage for Oracle RAC implementation. I have setup Oracle 10g 2 node RAC, currently i have been experiencing TAF failures for TOAD client. TOAD client session simply disconnects rather than failing over to the next node, It is noticed that TAF succesfully works for SQL client from the same client machine. Attached herewith are following from both nodes :
1) Listener file node1, node2 2) TNS file node1, node2 3) TNS file client 4) Output of show parameter listener from node1, node2 5) Output of lsnrctl services node1, node2
Summary of environment :
OS - Windows 2003 entp edition sp2, 32 bit Database server - 10.2.0.5.0
I have a large 10G database, with records being inserted almost constantly. In order to "UPDATE" records, I need to be able to DELETE the old record and INSERT the new record (even while records are being inserted into the table). It appears that DELETES won't work while records are being inserted (1.5 million records per day). Is there a way around this (which I'm assuming at this point is a contention issue)? The INSERT uses the NOPARALLEL hint; no hints on the DELETE.
as long as the password contains no special chars (namely semicolon) it works fine. but when I try to use special chars in the password It stops working, with an invalid username/password error.
i tried different variations of adding " (\") over the password, over the entire pwd=a;b or braces { but nothing seems to work.the thing is that using ODBC works! what I did was: open ODBC, go to System DSN tab, add "Oracle in instantclient11_1", then fill the following information:
Data source name: Anything TNS Service Name: //10.10.101.66:1521/orcl User ID: myUser
then i press test connection, enter the password "a;b" and it works!
I have a pl/sql package called advisory_form. It has 3 procs. First one asks for the term it calls another web form to get it then asks for student id. Post id to second procedure and web form shows students course information with a cursor also three empty items. When advisor fills this items for each course the data should be inserted into a table.I try to do this with a loop but it didn't work properly. The data which I get from cursor is inserted properyl but when it comes to filled text boxes and select list it does not work. Some data is lost. I am adding screenshot of my web form and the data inserted to table and of course my package code.
This is what I want to insert.
CREATE OR REPLACE package body advisory_form is
countc number; pidm number;
procedure p_sel_tid(term in term.term_code%type default null) is
hold_term varchar2(30); begin if not tmain.F_Vuser(pidm) then return; end if;