نشر بواسطة : Obay Salah , November 19, 2024

 المستخدم في قاعدة البيانات يستطيع تصدير الجداول التي يملكها، ومدير قاعدة البيانات يستطيع تصدير كافة الجداول في قاعدة البيانات.

كما يستطيع أي شخص لديه امتياز EXP_FULL_DATABASE تصدير جداول مستخدم آخر، ولكن بدون هذا الامتياز لا يستطيع تصدير جدول لا يملكه.

أ- كيف يستطيع مستخدم VBS تصدير جدول EMPLOYEE الذي يملكه؟

C:\>EXP VBS/VBS FILE=D:\EXPORT\EMPLOYEE.DMP TABLES=EMPLOYEE


يمكن صياغة أمر التصدير المذكور أعلاه على النحو التالي:

C:\>EXP VBS/VBS FILE=D:\EXPORT\EMPLOYEE.DMP TABLES=EMPLOYEE ROWS=Y TRIGGERS=Y INDEXES=Y GRANTS=Y CONSTRAINTS=Y COMPRESS=Y BUFFER=256


الصياغة مختلفة ولكن النتيجة واحدة لذا من الأفضل عدم كتابة الخيارات إلا إذا أردنا تغيير قيمها الافتراضية فمثلا إذا أردنا تصدير الجدول متضمنا القيود Constraints فمن الأفضل عدم كتابة الخيار Constraints=Y لأنه إذا لم تكتبه صراحة فإن الصيغة تحتويه ضمنا وإذا لم ترغب في تصدير القيود مع الجدول فيجب عليك كتابة الخيار Constraints=N في صيغة أمر التصدير وهكذا بالنسبة لبقية الخيارات فلنفترض الآن أن مستخدم VBS يريد تصدير جدول EMPLOYEE الذي يملكه ولكن بدون بيانات.

C:\>EXP VBS/VBS FILE=D:\EXPORT\EMPLOYEE.DMP LOG=D:\EXPORT\EMPLOYEE.LOG TABLES=EMPLOYEE ROWS=N


ب- كيف يقوم مسؤول قاعدة البيانات أو الشخص الذي لديه امتياز EXP_FULL_DATABASE بإصدار جدول Employee   المملوك لمستخدم VBS؟

C:\>EXP SYSTEM/SYS FILE=D:\EXPORT\EMPLOYEE١.DMP LOG=D:\EXPORT\EMPLOYEE1.LOG TABLES=VBS.EMPLOYEE


لاحظ أن اسم الجدول يسبقه مالكه TABLES=VBS.EMPLOYEE.

لا يحتاج مستخدم قاعدة البيانات إلى تصدير جداوله، حيث يمكن لمسؤول قاعدة البيانات أو شخص لديه امتياز EXP_FULL_DATABASE أيضًا تصدير جداول المستخدم في قاعدة البيانات. بالمناسبة، إذا عثرت Oracle على ملف آخر بنفس الاسم في المسار المحدد لإنشاء ملف التصدير FILE.DMP، فسوف تعيد كتابته.


الآن، إذا حاول المستخدم PENT تصدير الجدول EMPLOYEE المملوك للمستخدم VBS، مع العلم أن المستخدم PENTA لا يتمتع بهذا الامتياز EXP_FULL_DATABSE، فماذا تتوقع أن تكون النتيجة؟


النتيجة هي EXP-900000 no privilege to export VBS table EMPLOYEE.

ليس لديك هذا الإذن، لذا فشل التصدير.


الآن لنفترض أن مستخدم VBS يريد تصدير جدول EMPLOYEE الذي يملكه ولكنه يريد تصدير البيانات بشرط معين على سبيل المثال WHERE EMP_NO=2.

هنا نستخدم خيار Query.

C:\>EXP VBS/VBS FILE=D:\EXPORT\EMPLOYEE.DMP TABLES=EMPLOYEE QUERY=’WHERE EMP_NO=2'



علامات : Backup and Recovery

يمكن ان يعجبك ايضا


Comments

لايوجد تعليق حتى الان