আমদানিতে কোনও মাইএসকিএল টেবিলের ডাম্প বিদ্যমান রেকর্ডগুলিকে প্রতিস্থাপন করে


9

আমি মাইএসকিএলডাম্প ব্যবহার করে একটি ডাম্প নিলাম ..

mysqldump -u... -p... mydb t1 > mydb_table.sql

তারপরে আমি একই টেবিলে থাকা অন্য একটি ডাটাবেসে ডাম্প আমদানি করেছিলাম, তবে বিভিন্ন রেকর্ডে ..

mysql -u...-p... mydb < mydb_tables.sql

আমদানি ডিবিতে প্রাথমিক_কি 1 থেকে 1000 এবং রফতানির ডিবিতে 5000 থেকে 10,000 পর্যন্ত রেকর্ড রয়েছে ...

তবে আমদানিতে বিদ্যমান রেকর্ডগুলি, অর্থাৎ 1 থেকে 1000 মুছে ফেলা হয়েছে ..

কিভাবে ?? কেন ?? যদি এটি ডিফল্ট আচরণ হয়, তবে পরবর্তী বারের ঘটনাটি ঘটতে না দেওয়ার জন্য আমি কী বিকল্পগুলি দিতে পারি ..

উত্তর:


12

ডিফল্টরূপে mysqldump, টেবিলটি ফেলে দেবে। আপনার --no-create-infoএই বিকল্পটি নির্দিষ্ট করা উচিত :

mysqldump -u... -p... --no-create-info --skip-extended-insert mydb t1 > mydb_table.sql

এইভাবে, আপনার সাথে ডিল করার জন্য কেবল সন্নিবেশ রয়েছে। ব্যবহার করে --skip-extended-insertএকবারে একটি সারি will োকানো হবে। সদৃশ ইস্যুগুলির সাথে এটি সহায়তা করে তবে আপনার এই জাতীয় আমদানি হবে:

mysql -u...-p... --force mydb < mydb_tables.sql

--forceবিকল্প অব্যাহত টিপে ইভেন্টে সদৃশ কী সম্মুখীন হয় একমাত্র উদ্দেশ্য জন্য। এই পরিস্থিতিতে, আপত্তিজনক INSERT এর ত্রুটি উপেক্ষা করা হবে এবং পরবর্তী INSERT- এ on


ডাম্পের সময় মুছে ফেলা তথ্যটি পুনরুদ্ধার করা সম্ভব?
অরুণ কুমারেশ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.