Skip to Main Content

Breadcrumb

Question and Answer

Connor McDonald

Thanks for the question, Stanley.

Asked: July 14, 2017 - 12:44 pm UTC

Last updated: July 19, 2017 - 11:05 pm UTC

Version: 12c

Viewed 1000+ times

You Asked

How do I sync two Oracle databases, so that every transaction from A is copied to B using database link. How do I go about it. We do not want to use GOLDENGATE or DATAGUARD for this. PLEASE HELP!!!

and Connor said...

Have a read up on Change Data Capture or Streams.

Both of which are going to be

- harder
- more complex
- slower
- less scable
- more restrictive

than DataGuard or Goldengate.

Good luck :-)

Rating

  (1 rating)

Is this answer out of date? If it is, please let us know via a Comment

Comments

Using dblink you can try materialized view

Abiven, July 18, 2017 - 8:43 am UTC

Hello,

I will try to gave you more details:
If you have no money and use dblink , You could try to use Materialized view (or create snapshot it is the same purpose).
Here an example:
CREATE MATERIALIZED VIEW abcview
PCTFREE 10 PCTUSED 40 MAXTRANS 255
STORAGE (INITIAL 1024K NEXT 1024K MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1)
TABLESPACE TS_DATA_NAME
BUILD IMMEDIATE
USING INDEX TABLESPACE TS_INDEX_NAME
PCTFREE 10 INITRANS 2 MAXTRANS 255
STORAGE(INITIAL 256K NEXT 256K PCTINCREASE 0 MINEXTENTS 1 MAXEXTENTS 2147483645
FREELISTS 1 FREELIST GROUPS 1)
REFRESH force WITH PRIMARY KEY
START WITH trunc(sysdate) + 4/24
NEXT trunc(sysdate+1) + 4/24
AS
SELECT * FROM table1@base_jc;

It is an example.

Jean Christophe Abiven
DBA OCP
Connor McDonald
July 19, 2017 - 11:05 pm UTC

Good point, I should have mentioned mviews as well