الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Materialized View Replication

Featured Replies

بتاريخ:

Materialized View Replication

لنفرض في هذا المثال ان لدينا قاعدتي بيانات الأولى هي الرئيسية بإسمOEMREP والثانية الفرعية بإسم MYORA كل منهما تحتوي على مستخدم بإسم scott ولدينا بيانات نريد أن يتم نقلها بطريقة سريعة بينهما وهي في هذه الحالة عبارة عن جدول للجنسيات فكيف نقوم بهذه العملية ؟

 

أولاُ - في الجهاز الرئيسي الذي يحتوي على قاعدة البيانات الرئيسية (يتم إدخال البيانات فيه) والذي توجد فيه قاعدة البيانات OEMREP ننفذ مايلي :

 

1-ندخل على المستخدم SCOTT في قاعدة البيانات OEMREP ونقوم بإنشاء جدول

CREATE TABLE scott.countries(
country_code number primary key,
country_name VARCHAR2(40)
)
TABLESPACE users
/

2-نقوم بإنشاء MATERIALIZED VIEW لإتمام عملية ال Replication بسرعة بحيث يتم نقل البيانات التي تم تنفيذ جمل DML عليها فقط وليس كامل البيانات .

CREATE MATERIALIZED VIEW LOG 
ON scott.countries 
TABLESPACE users
WITH PRIMARY KEY 
EXCLUDING NEW VALUES; 

 

ثانياً - في الجهاز الفرعي والذي سيتم نقل البيانات إليه وهو في هذه الحالة الجهاز الذي توجد فيه قاعدة البيانات MYORA :

 

1-ندخل على المستخدم SYSTEM في قاعدة البيانات MYORA ونقوم بإنشاء PUBLIC DATABASE LINK

 

CREATE PUBLIC DATABASE LINK PLINK.US.ORACLE.COM USING 'OEMPREP'; 

 

2-ندخل على المستخدم SCOTT في قاعدة البيانات MYORA ونقوم بإنشاء PRIVATE DATABASE LINK

 

 

CREATE DATABASE LINK PLINK.US.ORACLE.COM 
CONNECT TO SCOTT IDENTIFIED BY TIGER; 

 

3-نقوم بإنشاء ال READ ONLY MATERIALIZED VIEW والتي سيتم نقل البيانات لها من الجهاز الرئيسي

CREATE MATERIALIZED VIEW SCOTT.CT_COUNTRY
BUILD IMMEDIATE 
REFRESH FAST WITH PRIMARY KEY 
AS SELECT COUNTRY_CODE, 
COUNTRY_NAME
FROM [email protected]; 

 

4-نقوم بعمل JOB يقوم بتحديث MATERIALIZED VIEW السابقة في وقت معين بحيث يتم الإتصال بالموقع الرئيسي ونقل البيانات وفي هذه الحالة سوف يتم التأكد من وجود أي بيانات أو تعديلات جديدة في الموقع الرئيسي وستتم هذه العملية كل عشر دقائق.

BEGIN
DBMS_REFRESH.MAKE (
name => 'scott.linkjob1',
list => '',
next_date => SYSDATE,
interval => 'SYSDATE + 1/144', -- every 10 minutes
implicit_destroy => FALSE,
rollback_seg => '',
push_deferred_rpc => FALSE,
refresh_after_errors => FALSE);
END;
/

 

5-بعد ذلك نقوم بإضافة ال job الى refresh group :

BEGIN 
DBMS_REFRESH.ADD ( 
name => 'scott.linkjob1', 
list => 'scott.ct_county', 
lax => TRUE); 
END;

 

لنجرب الآن إدخال البيانات في الجدول countries والموجود في قاعدة البيانات oemrep ثم ندخل على المستخدم scott والموجود في قاعدة البيانات الأخرى myora ونستعلم عن طريق ال SCOTT.CT_COUNTRY ( بعد 10 دقائق طبعا ) ونرى ماهي النتيجة .

 

الخلاصة

هذه طريقة مفيدة في نقل البيانات التي تكون للإطلاع فقط من الموقع الرئيسي إلى مواقع فرعية أخرى مثلا نقل معلومات عن المواد في المخازن الرئيسية للشركة إلى الفروع لكي تم الإطلاع عليها ومعرفة إمكانية إتمام عمليات البيع ،أتمنى ان تستفيدوا منها ولاتنسوني من دعوة صالحة ...

 

مع تحياتي :D </div>

بتاريخ:

جزاك الله الف خير على هذا الدرس المفيد ونرجوك الا تتوقف

بتاريخ:

مشاركة مميزة بارك الله فيك , يرجى تزويدنا باي معلومات عن ال Replication كون الموضوع عملي وجديد .

بانتظار المزيد اخي :D

بتاريخ:

:D

الله يجزيك ألف خير اخي الحبيب ، ويزيد من علمه، لقد كنت بحاجة هذه المعلومة ، والحمد لله قمت بتنفيذها و نجحت ، و أرجو ان تستمر بهذا النهج لتفيدنا من علمك

:D

بتاريخ:
  • كاتب الموضوع

السلام عليكم ورحمة الله وبركاته
أخواني حياكم الله جميعا وشكرا لكم على الردود الجميلة :D وهذه مجموعة من الروابط عن ال Replication :

Replication Management API Reference

Advanced Replication
http://tahiti.oracle.com

http://www.oracle.com/pls/db92/db92.docind...remark=homepage

http://www.orafaq.com/faqrepl.htm

http://www.dbasupport.com/oracle/ora9i/ors.shtml
مع تحياتي :D

بتاريخ:

ما شاء الله اخي محمد وجزاك الله خير على هذا الموضوع .

عندي بعض الأسئلة عن الReplication ارجو ان يتسع صدرك لها .. :D :D

-- هل عندك فكرة عن عمل Replication بين داتابيس اوراكل وغير اوراكل (هل هناك Tools معينة للقيام بهذه العملية)؟...
-- هل عملية ال Replication تؤثر على اداء الداتا بيس ؟..

وتقبل خالص تحياتي..

بتاريخ:
  • كاتب الموضوع

السلام عليكم ورحمة الله وبركاته
حياك الله أخي developer والله ماعندي فكرة نهائيا عن ريبليكيشين بين اوراكل وقواعد بيانات وأيضا هل هناك تأثير على قاعدة البيانات أو لا ، مازلت في بداية الموضوع ولم أصل بعد إلى ه>ه النقاط وشكرا لك ....
مع تحياتي

  • بعد 1 سنة...
بتاريخ:

الأخ الفاضل msh
كلمات الشكر لا تكفيك ، ربنا هو الذي سيكافأك إن شاء الله
وسؤالي في شرحك قلت أنه للقراءة فقط وأنا أريدة أن يكون للقراءة والكتابة
بمعني نقل جميع ما هو موجود علي السيرفر الفرعي إلي الرئيسي والتعامل معه ( تعديل أو حذف )
مع العلم أنا عندي oracle 8.1.6 وليس oracle 9i
مع خالص الشكر
محمود درويش
[email protected]

  • بعد 8 شهور...
بتاريخ:

بارك الله فيك

  • بعد 4 أسابيع...
بتاريخ:

بارك الله فيك و جزاك الله خيرا و شكرا على المعلومات المفيده

  • بعد 4 أسابيع...
بتاريخ:

الحقيقه ان كلمات الشكر لاتكفي اللهم بارك فيك يارب

  • بعد 3 أسابيع...
بتاريخ:

thank you my brother so much for this bulletin really it's very very good

  • بعد 7 شهور...
بتاريخ:

جزاك الله خيرا

بتاريخ:

brother DEVELOPER to setup replication between Oracle database and non-oracle database you need to use Oracle Heterogenous Services

بتاريخ:

I'm ready to answer any question related to Oracle Replication

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.