View Full Version : مشکل در import اطلاعات
irana8
دوشنبه 11 دی 1391, 21:36 عصر
با سلام دوستان و اساتید محترم اوراکل
لطفا در خصوص improt اطلاعات اگه میتونید کمک کنید. 2 تا سرور اوراکل دارم .یکی از سرورها رو باهاش کار میکنند دیگری به صورت پشتیبان هست که اگه این سرور از کار افتاد از اون یکی استفاده بشه.من اطلاعات سرور اصلی را cold backup به سرور پشتبان انتقال داده و با موفقیت start کردم.اما خوب اطلاعاتش مربوط به 10 روز پیشه.از اونجایی که در سرور اصلی هر روز به وسیله datapump فایل dump پشتیبان گرفته میشه من در import اطلاعات به سرور جدید برای بروز کردن داد ها مشکل دارم.یعنی import با خطاهای زیادی به پایان میرسه و در حقیقت اطلاعات انتقال پیدا نمیکنن.ممنون میشم راهنمایی کنید.
irana8
سه شنبه 12 دی 1391, 10:27 صبح
ای بابا 33 بار مشاهده و دریغ از یک جواب؟؟؟
oracledba
سه شنبه 12 دی 1391, 15:23 عصر
سلام
واسه اين كار شما بايد Data Guard راه اندازي كنيد نه import / exportدستي. اينطوري اولا اطلاعاتتون همواره باهم يكي نيست و دوما اينكه احتمال خطا هم زياده....
irana8
سه شنبه 12 دی 1391, 18:07 عصر
سلام
واسه اين كار شما بايد Data Guard راه اندازي كنيد نه import / exportدستي. اينطوري اولا اطلاعاتتون همواره باهم يكي نيست و دوما اينكه احتمال خطا هم زياده....
با سپاس و تشکر فراروان در صورت امکان در مورد data guard کمی بیشتر توضیح دهید.
مساله دوم هم اینه که یکی بودن اطلاعات برام مهم نیست.اگه ممکنه دستورات import برای انتقال داده ها را بفرمایید بینهایت ممنون میشم.با سپاس فراوان
oracledba
پنج شنبه 14 دی 1391, 00:45 صبح
با سپاس و تشکر فراروان در صورت امکان در مورد data guard کمی بیشتر توضیح دهید.
مساله دوم هم اینه که یکی بودن اطلاعات برام مهم نیست.اگه ممکنه دستورات import برای انتقال داده ها را بفرمایید بینهایت ممنون میشم.با سپاس فراوان
سلام
تمامی مطالب رو نمیشه اینجا بیان کرد (به علت حجم زیاد)؛ پیشنهاد می کنم کتاب زیر را تهیه کنید:
http://naghoospress.ir/bookview.aspx?bookid=1486184
تو این کتاب import/export به طور کامل توضیح داده شده است.
تو سایت زیر نیز فهرست مطالب کتاب فوق ذکر شده است:
http://www.iranoracle.com
Cold.82
پنج شنبه 14 دی 1391, 12:43 عصر
این مقاله رو ببینید
http://www.oracle-base.com/articles/10g/oracle-data-pump-10g.php
irana8
پنج شنبه 14 دی 1391, 23:15 عصر
این مقاله رو ببینید
http://www.oracle-base.com/articles/10g/oracle-data-pump-10g.php
با تشکر از شما دوست عزیز این لینکو دیدم اما سوال من اینجاست که آیا قبل از import ایا باید اسکیمای اون کاربری که میخام import کنم را حذف کنم یا نه؟
irana8
شنبه 16 دی 1391, 13:21 عصر
ای بابا یه آدم خیری پیدا نمیشه در مورد import با datapump یه مختصر کمکی به ما بکنه؟؟؟
PhoenixNet
شنبه 16 دی 1391, 23:03 عصر
سلام
شما باید از Oracle Parallel Server استفاده کنی.دومزیت عمده داره :
1-سرعت دیتابیس افزایش پیدا میکنه و یک سرورت بیکار نمی مونه.
2-اگه یکی از سرورا دچار مشکل یشه کاربرا هنوز میتونن از دیتابیس استفاده کنن.
برای اطلاعات بیشتر............ (http://docs.oracle.com/cd/A87860_01/doc/paraserv.817/a76968/psintro.htm)
irana8
یک شنبه 17 دی 1391, 09:41 صبح
سلام
شما باید از Oracle Parallel Server استفاده کنی.دومزیت عمده داره :
1-سرعت دیتابیس افزایش پیدا میکنه و یک سرورت بیکار نمی مونه.
2-اگه یکی از سرورا دچار مشکل یشه کاربرا هنوز میتونن از دیتابیس استفاده کنن.
برای اطلاعات بیشتر............ (http://docs.oracle.com/cd/A87860_01/doc/paraserv.817/a76968/psintro.htm)
دوست عزیز همه اینارو می دونم .اما من در import اطلاعات مشکل دارم...:گریه:
Cold.82
یک شنبه 17 دی 1391, 12:08 عصر
با تشکر از شما دوست عزیز این لینکو دیدم اما سوال من اینجاست که آیا قبل از import ایا باید اسکیمای اون کاربری که میخام import کنم را حذف کنم یا نه؟
بله دوست عزیز باید drop کنی .
irana8
جمعه 22 دی 1391, 11:22 صبح
بله دوست عزیز باید drop کنی .
با تشکر از پاسختون.
متاسفانه علیرغم اینکه با دستور drop user tx1 اقدام به حذف و سپس iport اطلاعات میکنم اما باز با مشکل مواجه میشم.در وسط های کار با پیغام خطآیی مبنی بر constraint......مواجه میشم و import با خطا تمام میشه.لطفا اگه ممکنه در این مورد راهتمایی کنید.
xxxxx_xxxxx
جمعه 22 دی 1391, 15:36 عصر
با تشکر از پاسختون.
متاسفانه علیرغم اینکه با دستور drop user tx1 اقدام به حذف و سپس iport اطلاعات میکنم اما باز با مشکل مواجه میشم.در وسط های کار با پیغام خطآیی مبنی بر constraint......مواجه میشم و import با خطا تمام میشه.لطفا اگه ممکنه در این مورد راهتمایی کنید.
وقتی میخواید برای import، یوزر رو Drop کنید باید به صورت Cascade این کار وانجام بدید تا همه Structure های متعلق به این کاربر هم حذف بشه.
Drop user tx1 cascade;
ولی در کل برای مشکلی که در پست اول مطرح کردید، همونطور که دوستان گفتند باید از Data Guard استفاده کنید. شما به یک Physical Data Guard احتیاج دارید که به طور خودکار Archive Logfile ها از سرور اصلی به سرور Guard منتقل بشن. اونوقت دیگه نیازی نیست همیشه Import/Export کنید. روند Import و Export در دیتابیس های بزرگ، خیلی خیلی طولانی و مشکل میشه و اصلاً ارزش هزینه اش رو نداره که بخواید همیشه از این روش برای بکاپ گیری استفاده کنید. در ضمن برای تهیه بکاپ بهتره از RMAN استفاده کنید.
irana8
شنبه 23 دی 1391, 01:00 صبح
با تشکر از شما دوست گرامی از زمانی که صرف پاسخ دادن به مشکل بنده کردید.
باید به عرضتون برسونم که درسته من به دو تا سرور دارم اما واقعیتش یکی از سرورها فقط اسمشرسروره و در اون حدی نیست که بخام روش سرمایه گذاری کنم و من بیشتر منظورم از ریستور بک آپ رو خود سرور اصلی هست در شرایط بحرانی.به هر حال بندده هم با این دستور userرا پاک و بعد اقدام به ایمپورت میکنم.
drop user tx1 cascade;
impdp system/tmmts@oracle directory=backup_dir dumpfile=backup.dmp logfile=back.log
اما باز به مشکل بر میخورم و در میانه راه به خطای constraint ...برمیخورم که به foregin key های user tx ایراد میگره و میگه رفرنس هستند.اگر اجازه بدید هم فایل log مربوط به export و هم فایل log مربوط به import را تقدیم کنم تا اگه بشه راهنمیی بفرمایید.باز هم از زحمات شما سپاسگذاری میکنم
irana8
دوشنبه 25 دی 1391, 00:47 صبح
این تالار چرا اینجوریه؟؟؟؟این همه استاد تو این تالار هست ولی یه نفر نیست دو کلنه impot و توضیح بدهه.اوراکل کارا چشون شده
آدم تاسف میخوره واقعا.
Cold.82
سه شنبه 26 دی 1391, 08:41 صبح
شما export که می گیرین درسته ؟ بدون مشکل به log اش نیگاه بکنین اگه درست باشه احتمالا تو سورستون data invalid دارین که چک نشده و در موقع import چون چک میشه error می گیره . ولی من فکر کنم در موقع گرفتن export به احتمال زیاد error گرفتین
irana8
سه شنبه 26 دی 1391, 23:21 عصر
شما export که می گیرین درسته ؟ بدون مشکل به log اش نیگاه بکنین اگه درست باشه احتمالا تو سورستون data invalid دارین که چک نشده و در موقع import چون چک میشه error می گیره . ولی من فکر کنم در موقع گرفتن export به احتمال زیاد error گرفتین
اگه تو سورسم data invalid داشته باشپ چاره چیه؟ممنون میشم اگه پاسخ بدید.
نه دوست عزیز موقه export کاملا درسته و نن هیچ پیغام خطایی تو فایل log ندارم
Cold.82
چهارشنبه 27 دی 1391, 00:19 صبح
پس log import رو نیگاه بکنید و ببینید تو کدوم جداول موقع error import می گیرین . بعد به سورستون نیگاه کنید .
اگه می خواین log هردو import و export رو بزارین ببینم می تونم کمکی بکنم
xxxxx_xxxxx
پنج شنبه 28 دی 1391, 00:26 صبح
سلام،
metadata و data رو باهم import میکنید یا جدا؟
اگر جدا از هم Import میکنید، زمانی که ایمپورت Metadata تموم میشه، همه Constraint ها رو Disable کنید، بعد که Data رو ایمپورت کردید، فعالشون کنید.
فقط باید اول FK ها رو غیرفعال کنید، بعد PK ها رو.
irana8
پنج شنبه 28 دی 1391, 17:48 عصر
سلام،
metadata و data رو باهم import میکنید یا جدا؟
اگر جدا از هم Import میکنید، زمانی که ایمپورت Metadata تموم میشه، همه Constraint ها رو Disable کنید، بعد که Data رو ایمپورت کردید، فعالشون کنید.
فقط باید اول FK ها رو غیرفعال کنید، بعد PK ها رو.
با سلام و سپاس فراوان
دوست عزیز دستوری که برای import استفاده میکنم به این شکل هست
drop user tx1;
impdp system/tmmts@oracle directory=backup_dir dumpfile=backup.dmp logfile=back.log
اگر ممکن هست لطفا در باده فعال و غیر فعال کردن Constraint ها و همچنین FK و PK یکم بیشتر توضیح بدید ممنون میشم.
با سپاس
xxxxx_xxxxx
جمعه 29 دی 1391, 21:08 عصر
سلام؛
همون log رو بزارید ببینیم بهتره. (با پست شماره 16 موافقم)
پیشنهاد من این هست که دوباره export بگیرید، یک بار این option رو تنظیم کنید:
content = metadata_only
و یک بار هم این Option رو اینطوری تنظیم کنید:
content = data_only
حالا شما دو تا دامپ دارید، که اولی فقط حاوی Structure هاست (ساختار جداول، ایندکس ها، constraint ها و ...) و هیچ دیتایی نداره و دومی فقط حاوی دیتا هست.
حالا تو دیتابیس مقصد، باید اول اونی که فقط structure ها رو داره ایمپورت کنید، بعدش باید حتماً Constraint ها رو غیر فعال کنید، این کار باعث میشه که در حین ایمپورت دیتا، به این خطاهای Constraint validation برخورد نکنید. برای ان کار هم باید یه dynamic sql بنویسید تا همه constraint های FK رو اول پیدا و disable کنه، بعدش باید یکی هم برای PK ها بنویسید، در آخر هم هرچی constraint باقی مونده رو disable میکنید.
حالا میتونید دیتا رو ایمپورت کنید. و بعدش همه constraint رو enable کنید، فقط این بار باید برعکس ترتیب قبل enable کنید.
irana8
شنبه 30 دی 1391, 13:35 عصر
با سلام خدمت اساتید محترم
این فایل log مربوط به import metadata_only هست.خواهش میکنم لطف کنید بررسی کنید و بفرمایید ایراد کار من کجاست.با تشکر از همه دوستان عزیز.:قلب:
xxxxx_xxxxx
شنبه 30 دی 1391, 22:07 عصر
سلام،
خب چهار تا FK موقع ایجاد شدن به خطا خوردن و ایجاد نشدن:
ORA-31685: Object type REF_CONSTRAINT:"TMDS91"."FK1_MED_TB_HESAB_NO" failed due to insufficient privileges. Failing sql is:
ALTER TABLE "TMDS91"."MED_TR_CHEQ" ADD CONSTRAINT "FK1_MED_TB_HESAB_NO" FOREIGN KEY ("ACCNO") REFERENCES "TMDS"."MED_TB_HESABNO" ("ACCNO") ENABLE
ORA-31685: Object type REF_CONSTRAINT:"TMDS91"."FK_MED_TR_B_REL_105_MED_TB_M" failed due to insufficient privileges. Failing sql is:
ALTER TABLE "TMDS91"."MED_TR_BILL" ADD CONSTRAINT "FK_MED_TR_B_REL_105_MED_TB_M" FOREIGN KEY ("MED_MSG_NO") REFERENCES "TMDS"."MED_TB_MSG" ("MSG_NO") ENABLE
ORA-31685: Object type REF_CONSTRAINT:"TMDS91"."FK_MED_TR_B_REL_106_MED_TB_M" failed due to insufficient privileges. Failing sql is:
ALTER TABLE "TMDS91"."MED_TR_BILL" ADD CONSTRAINT "FK_MED_TR_B_REL_106_MED_TB_M" FOREIGN KEY ("MSG_NO") REFERENCES "TMDS"."MED_TB_MSG" ("MSG_NO") ENABLE
ORA-31685: Object type REF_CONSTRAINT:"TMDS91"."FK_MED_TB_HESAB_NO_TAX" failed due to insufficient privileges. Failing sql is:
ALTER TABLE "TMDS91"."MED_TR_CHEQ_TAX" ADD CONSTRAINT "FK_MED_TB_HESAB_NO_TAX" FOREIGN KEY ("ACCNO") REFERENCES "TMDS"."MED_TB_HESABNO" ("ACCNO") ENABLE
مطمئنید که grant های لازم برای دسترسی یوزر tmds91 به جداول یوزر tmds داده شده؟
این چهار تا FK ایجاد نشده، میتونید برای صرفه جویی در وقت، فقط grant های لازم رو به یوزر tmds91 بدید و به صورت دستی این چهار تا FK رو ایجاد کنید.
بعد از این مرحله باید، Constraint ها رو به همون ترتیبی که قبلا عرض کردم Disable کنید.
پ.ن: پیشنهاد میشه موقع تهیه Export، از Statistics صرف نظر کنید. با این Option:
Exclude=Statistics
irana8
شنبه 30 دی 1391, 22:15 عصر
با تشکر از پاسختون و در مورد warning ها چی؟
irana8
سه شنبه 03 بهمن 1391, 23:24 عصر
سلام؛
همون log رو بزارید ببینیم بهتره. (با پست شماره 16 موافقم)
پیشنهاد من این هست که دوباره export بگیرید، یک بار این option رو تنظیم کنید:
content = metadata_only
و یک بار هم این Option رو اینطوری تنظیم کنید:
content = data_only
حالا شما دو تا دامپ دارید، که اولی فقط حاوی Structure هاست (ساختار جداول، ایندکس ها، constraint ها و ...) و هیچ دیتایی نداره و دومی فقط حاوی دیتا هست.
حالا تو دیتابیس مقصد، باید اول اونی که فقط structure ها رو داره ایمپورت کنید، بعدش باید حتماً Constraint ها رو غیر فعال کنید، این کار باعث میشه که در حین ایمپورت دیتا، به این خطاهای Constraint validation برخورد نکنید. برای ان کار هم باید یه dynamic sql بنویسید تا همه constraint های FK رو اول پیدا و disable کنه، بعدش باید یکی هم برای PK ها بنویسید، در آخر هم هرچی constraint باقی مونده رو disable میکنید.
حالا میتونید دیتا رو ایمپورت کنید. و بعدش همه constraint رو enable کنید، فقط این بار باید برعکس ترتیب قبل enable کنید.
با سلام و شب بخیر
دقیقا کاری را که فرموده بودید انجام دادم و دوتا بک اپ گرفتم
اما باز هم موقع ایمپورت متا دیتا با همون خطا مواجه میشم.
واقعا چاره کار من کجاست؟
xxxxx_xxxxx
پنج شنبه 05 بهمن 1391, 19:51 عصر
با تشکر از پاسختون و در مورد warning ها چی؟
warning ها در زمان import مشکلی ایجاد نمی کنند، فقط به شما اخطار میده که ایمپورت آبجکت موردنظر انجام شد، اما یک یا چند وضعیت غیر منطقی در اون آبجکت وجود داره. (تغییرات غیر اصولی در آبجکت)
دقیقا کاری را که فرموده بودید انجام دادم و دوتا بک اپ گرفتم
اما باز هم موقع ایمپورت متا دیتا با همون خطا مواجه میشم.
واقعا چاره کار من کجاست؟
مجوزهای دسترسی یوزر tmds91 رو چک کردید؟ این یوزر باید به بعضی جدول های یوزر tmds دسترسی داشته باشه تا بتونه روشون FK ایجاد کنه.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.