mysqldump বনাম mysqlpump


17

আমি সবেমাত্র মাইএসকিএলপ্যাম্প সম্পর্কে শুনেছি - দেখে মনে হচ্ছে এটি মাইএসকিউএল 5.7 দিয়ে প্রকাশিত হয়েছিল, তবে মাইএসকিউএল 5.7 এ এখনও মাইএসকিএলডম্প অন্তর্ভুক্ত রয়েছে । তারা উভয়ই ব্যাকআপ প্রোগ্রাম, তবে কেউ কি মূল পার্থক্যগুলি সংক্ষিপ্ত করতে পারে? এমন পরিস্থিতিতে কি আছে যেখানে তাদের একজন আরও ভাল কাজ করতে পারে? মাইএসকিএলডাম্প কি মাইএসকিপ্লাম্পের জন্য পর্যায়ক্রমে বেরিয়ে যাচ্ছে?


এর অর্থ প্রায় একই রকম দুটি অনুরূপ সরঞ্জামের নামকরণ করা।
এরিক

@ এরিককে দেখে মনে হচ্ছে এটি একটি " পি সমান্তরাল ডি আম্প " এবং এটি ডেটা দ্রুত পাম্প করতে পারে .. তবে অন্যথায় আমি সম্মত হই।
jkavalik

1
আপনি মাইডাম্পারে আগ্রহীও হতে পারেন । এটি প্রদর্শিত হয় যে মাইএসকিএলপ্যাম্প এটি থেকে বেশ কয়েকটি ধারণা নিয়েছে - এটি কোনও খারাপ জিনিস নয়, যেহেতু প্রকল্পটি এক বছরেরও বেশি সময় ধরে
সরেনি

আমি কিছু পারফরম্যান্স পরীক্ষা দেখার আগ্রহী!
রায়ান ফোলি

এক্সট্রাডব্যাকআপ আরেকটি গুরুতর প্রতিযোগী।
রিক জেমস

উত্তর:


16

যেহেতু আমি নিজেই এটি গবেষণা করে চলেছি, তাই আমি যা পেয়েছি তার একটি সংক্ষিপ্তসার এখানে।

মাইএসকিউএল দেব দলের 2015 সালের ব্লগ পোস্ট অনুসারে , মাইএসকিপল্পের প্রধান সুবিধা হ'ল এটি ডাম্পিংকে গতি বাড়ানোর জন্য সমান্তরালভাবে একাধিক থ্রেড ব্যবহার করতে পারে এবং এটি মাইএসকিএলডাম্পের পিছনের দিকের সামঞ্জস্যতার প্রয়োজনীয়তাগুলি ভাগ করে না, যা আরও দরজা খোলা উচিত উন্নতি।

তবে পোস্টটি সতর্ক করে দিয়েছে যে মাইএসকিপ্ল্যাম্প "একটি সাধারণ উদ্দেশ্য ব্যাকআপ প্রতিস্থাপন হিসাবে বর্তমানে অনিরাপদ" কারণ পৃথক থ্রেডগুলি তাদের ডাম্পের বিভাগগুলি ডেটাবেসের বিভিন্ন রাজ্য থেকে উত্পন্ন করতে পারে। এটি মাইএসকিল্ডম্পকে অবমূল্যায়নের কোনও পরিকল্পনার কথা উল্লেখ করে না।

জিউসেপ ম্যাক্সিয়া ২০১৫ সালে মাইএসকিল্প্পের সাথে ঘুরেফিরে খেলেন এবং ডাম্পিংয়ের গতিবেগ মোটামুটি ছোট বলে খুঁজে পান। তিনি সঠিকভাবে কোন বস্তুটি ডাম্প করতে হবে তা নির্বাচন করার নতুন ক্ষমতাটির প্রশংসা করেছেন, তবে উল্লেখ করেছেন যে ডাম্প ফিরে লোড করা কেবলমাত্র একক থ্রেডযুক্ত করা যেতে পারে এবং (মাইসকিल्डম্পের বিপরীতে) ডাম্পগুলি কেবল একই নামের সাথে ডাটাবেসে লোড করা যায়।


2
সতর্কতা: mysqlpumpবদ্ধ উত্স সফ্টওয়্যার (অনিশ্চিত ভবিষ্যত)। এর একটি ওপেন সোর্স বিকল্প mysqlpumpহ'ল github.com/maxbube/mydumper mydumper
Ivanov

12

আমি এই দুটি ইউটিলিটির মধ্যে পার্থক্যগুলিও খতিয়ে দেখছি এবং @ নীলের উত্তরে যা উল্লেখ করা হয়েছে তা ছাড়াও দেখে মনে হয় যে মাইএসক্লাম্পের কাছে মাইএসকিএলডাম্পের চেয়ে কম বিকল্প রয়েছে , যেমন নিম্নলিখিতগুলির জন্য অনুমতি না দেওয়া:

  • --compatible=
  • --tab, এবং এর সম্পর্কিত বিকল্পগুলি:
    • --fields-terminated-by=
    • --fields-enclosed-by=
    • --fields-optionally-enclosed-by=
    • --fields-escaped-by=
    • --lines-terminated-by=
  • --quote-names
  • --add-drop-trigger
  • --allow-keywords
  • --apply-slave-statements
  • --comments
  • --compact
  • --compatible
  • --create-options
  • --delete-master-logs
  • --disable-keys
  • --dump-date
  • --dump-slave
  • --enable-cleartext-plugin
  • --flush-logs
  • --flush-privileges
  • --force
  • --ignore-error
  • --include-master-host-port
  • --lock-all-tables
  • --lock-tables
  • --master-data
  • --no-autocommit
  • --no-tablespaces
  • --opt
  • --order-by-primary
  • --pipe
  • --quick
  • --quote-names
  • --set-gtid-purged
  • --shared-memory-base-name
  • --skip-add-drop-table
  • --skip-add-locks
  • --skip-comments
  • --skip-compact
  • --skip-disable-keys
  • --skip-extended-insert
  • --skip-opt
  • --skip-quick
  • --skip-quote-names
  • --skip-triggers
  • --skip-tz-utc
  • --verbose
  • --where
  • --xml

অন্যদিকে, মাইএসকিপ্ল্যাম্পের নিম্নলিখিত বিকল্পগুলি রয়েছে যা মাইএসকিল্ড্পে উপলভ্য নয়

  • --compress-output
  • --default-parallelism
  • --defer-table-indexes
  • --exclude-databases=
  • --exclude-events=
  • --exclude-routines=
  • --exclude-triggers=
  • --exclude-users=
  • --include-events=
  • --include-routines=
  • --include-triggers=
  • --include-users=
  • --parallel-schemas=
  • --skip-definer
  • --users
  • --watch-progress

নতুন নামকরণ বা অনুরূপ:

  • --no-dataমধ্যে ডাম্প == --skip-dump-rowsমধ্যে পাম্প
  • --no-set-namesমধ্যে ডাম্প বিদ্যমান নেই পাম্প , কিন্তু তার সমার্থক - --skip-set-charset- উভয় বিদ্যমান
  • --ignore-table=মধ্যে ডাম্প বেশিরভাগই হয় --exclude-tables=মধ্যে পাম্প ছাড়া --exclude-tablesসব টেবিল, কমা দ্বারা পৃথক নির্দিষ্ট করতে পারেন, এবং ওয়াইল্ডকার্ড অক্ষর জন্য করতে পারবেন ( %এবং _)
  • --tablesমধ্যে ডাম্প বেশিরভাগই হয় --include-tables=মধ্যে পাম্প ছাড়া --include-tablesসব টেবিল, কমা দ্বারা পৃথক নির্দিষ্ট করতে পারেন, এবং ওয়াইল্ডকার্ড অক্ষর (জন্য করতে পারবেন %এবং _)। এছাড়াও, --tablesঅগ্রাহ্য --databasesমধ্যে ডাম্প , যেহেতু --include-tables=পাম্প না।
  • --databasesউভয় ডাম্প এবং পাম্প বেশিরভাগই হয় --include-databases=মধ্যে পাম্প ছাড়া --include-databasesসব ডাটাবেস কমা দ্বারা পৃথক নির্দিষ্ট করতে পারেন, এবং ওয়াইল্ডকার্ড অক্ষর (জন্য করতে পারবেন %এবং _)।

3

ব্যাকআপ উভয় সরঞ্জামের মধ্যে আমি কী বুঝলাম তার সংক্ষিপ্ত বিবরণ এখানে।

ম্যানুয়ালডাম্প্পের সংজ্ঞা ম্যানুয়াল পৃষ্ঠাতে দেওয়া হয়েছে

Mysqldump ক্লায়েন্ট ইউটিলিটি লজিকাল ব্যাকআপগুলি সম্পাদন করে, এসকিউএল স্টেটমেন্টগুলির একটি সেট তৈরি করে যা মূল ডাটাবেস অবজেক্টের সংজ্ঞা এবং সারণী ডেটা পুনরুত্পাদন করার জন্য কার্যকর করা যেতে পারে। এটি ব্যাকআপ বা অন্য এসকিউএল সার্ভারে স্থানান্তর করার জন্য এক বা একাধিক মাইএসকিউএল ডাটাবেস ডাম্প করে। মাইএসকিএলডাম্প কমান্ডটি সিএসভি, অন্যান্য সীমাবদ্ধ পাঠ্য বা এক্সএমএল ফর্ম্যাটে আউটপুট জেনারেট করতে পারে।

মাইস্ক্লডাম্প ব্যবহার করা খুব সহজ এবং বাক্য গঠনও খুব সহজ। যখন আমরা এটি কার্যকর করি, এটি সমস্ত সারিগুলিকে এসকিউএল কোয়েরিতে রূপান্তরিত করে এবং স্ট্যান্ডার্ড আউটপুটে মুদ্রণ করে। আমরা এই আউটপুটটিকে একটি আউটফাইলে (>) বা একটি বিকল্প - ফলাফল-ফাইল ব্যবহার করে পুনর্নির্দেশ করতে পারি।

ডিফল্টরূপে, মাইএসকিএলড্প তথ্য_চেমার টেবিলগুলি ডাম্প করে না এবং এটি কখনই পারফরম্যান্স_চেমি লাগে না। মাইএসকিএলডাম্পের প্রধান অপূর্ণতা হ'ল ব্যাকআপ নেওয়ার সময় এটি কেবল একটি থ্রেড ব্যবহার করে এবং পুনরুদ্ধার করে।

মাইএসকিএলপ্প আরেকটি ইউটিলিটি যা মাইএসকিউল্পের সাথে তুলনা করার সময় আরও কয়েকটি বৈশিষ্ট্য সহ মাইএসকিউএল ৫.7 এ প্রবর্তিত হয়েছিল

ম্যানুয়ালপ্যাম্পের সংজ্ঞা ম্যানুয়াল পৃষ্ঠাতে দেওয়া হয়েছে

Mysqlpump ক্লায়েন্ট ইউটিলিটি লজিকাল ব্যাকআপগুলি সম্পাদন করে, এসকিউএল স্টেটমেন্টগুলির একটি সেট তৈরি করে যা মূল ডাটাবেস অবজেক্টের সংজ্ঞা এবং সারণী ডেটা পুনরুত্পাদন করার জন্য কার্যকর করা যেতে পারে। এটি ব্যাকআপ বা অন্য এসকিউএল সার্ভারে স্থানান্তর করার জন্য এক বা একাধিক মাইএসকিউএল ডাটাবেস ডাম্প করে।

প্রধান বৈশিষ্ট্যগুলি হ'ল

  • ব্যাকআপটি গতি বাড়ানোর জন্য সমান্তরাল প্রক্রিয়াকরণ (মাল্টি থ্রেডেড)

  • অগ্রগতি সূচক

  • ব্যবহারকারীর অ্যাকাউন্টগুলি ডাম্পিং (মাইএসকিউএল সিস্টেম ডাটাবেসের জন্য সন্নিবেশ হিসাবে না হিসাবে বিবরণী তৈরি করুন, তৈরি করুন)

ডিফল্টরূপে, মাইএসকিএলপ্প সিস্টেম ডেটাবেজ যেমন তথ্য স্কিমা, পারফরম্যান্স স্কিমা এবং কিছু মাইএসকিউএল সিস্টেম টেবিলগুলির স্পষ্টভাবে উল্লেখ না করে ব্যাকআপ নেয় না।

এটিতে বিকল্প অন্তর্ভুক্ত রয়েছে - অন্তর্ভুক্ত-ডাটাবেস, অন্তর্ভুক্ত-ডাটাবেস, অন্তর্ভুক্ত-টেবিল, প্যাটার্ন ম্যাচিংয়ের সাথে অন্তর্ভুক্ত টেবিল (%)।

এই বিকল্পগুলি এমন ব্যবহারকারীদের জন্য আরও সুবিধাজনক যারা পুরো ডেটাসেট থেকে কেবল কয়েকটি বস্তুর ব্যাকআপ নিতে চান।

সাধারণভাবে, মাইএসকিএলপ্প এর কাজগুলিকে অংশগুলিতে ভাগ করে দেয় এবং প্রতিটিকে একটি বহু-থ্রেডযুক্ত কাতারে দেওয়া হয়।

  • এই মাল্টিথ্রেডেড সারিটি এন থ্রেডগুলি দ্বারা প্রক্রিয়াজাত করা হয় (ডিফল্টরূপে এটি 2 টি থ্রেড ব্যবহার করে)।

  • আমরা এই বিকল্পটি - ডিফল্ট-প্যারালালিজম এবং –প্যারালাল-স্কিমার ব্যবহার করে অনেকগুলি থ্রেড সংজ্ঞায়িত করতে পারি।

  • পুনরুদ্ধারকালে, এটি একক থ্রেড ব্যবহার করে যা মাইএসকিলডাম্পের সমান, এতে সমান্তরাল পুনরুদ্ধার অভাব রয়েছে।

অ্যাড-অন হিসাবে, আমাদের কাছে আরও একটি সরঞ্জাম রয়েছে যা ব্যাকআপ এবং পুনরুদ্ধার উভয় ক্ষেত্রে সমান্তরাল কার্য সম্পাদন করে (যেখানে মাইএসক্লাম্প এবং মাইসকিলডাম্পের অভাব রয়েছে) যা মাইডাম্পার এবং মাইলোডার বলে । বিশাল ডাটাবেস পুনরুদ্ধার করার সময় এটি ব্যাপকভাবে ব্যবহৃত হবে।

আপনি এই ব্লগটি আরও কিছু বিশদ এবং এর সরঞ্জামগুলির দরকারী বিকল্পগুলি এই ব্লগে মাইসক্ল্ড্প্প বনাম মাইএসক্ল্যাম্প বনাম মাইদাম্প্পারে খুঁজে পেতে পারেন

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