Skip to main content

Mysqldump কি এবং আমি এটা কিভাবে ব্যবহার করব?

ওয়ার্কিং উদাহরণ - mysqldump কমান্ড কীভাবে ব্যবহার করতে হয় (জুন 2025)

ওয়ার্কিং উদাহরণ - mysqldump কমান্ড কীভাবে ব্যবহার করতে হয় (জুন 2025)
Anonim

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

Mysqldump কি জন্য ব্যবহৃত হয়?

দ্য mysqldump টুল আপনি এই পরিস্থিতিতে উভয় জন্য আচ্ছাদিত হয়েছে। এটি একটি মৌলিক কাজ যা একটি MySQL ডাটাবেস এবং পাঠ্য ফাইল হিসাবে "ডাম্প" করে। কিন্তু শুধু কোন টেক্সট ফাইল … ফাইল একটি এসকিউএল বিবৃতি সেট। এই বিবৃতিগুলি যখন কার্যকর হবে তখন আপনি আপনার ডাম্পটি কার্যকর করার সময় আপনার ডেটাবেসটি পুনঃনির্মাণ করবে।

সুতরাং আপনি ব্যবহার করতে পারেন mysqldump একটি ডাটাবেস রপ্তানি নিতে। এটি ব্যাকআপের উদ্দেশ্যে হতে পারে, অথবা আপনি একটি নতুন হোস্টে ডাটাবেসটি মুভিং করছেন। উভয় ক্ষেত্রে, আপনি কিছু সময়ে করতে হবে আমদানি টেক্সট ফাইল ফিরে একটি MySQL ডাটাবেস সার্ভারে। এটি ফাইলের সমস্ত এসকিউএল বিবৃতিগুলি কার্যকর করবে, যা আপনার ডিবিটিকে তার আসল অবস্থায় পুনর্নির্মাণ করে। এই অংশ আসলে ব্যবহার করা হয় না mysqldump কমান্ড, কিন্তু এই ইউটিলিটি ছাড়া সম্ভব হবে না!

MySQL ডক্সগুলি ব্যাকআপগুলি করার অন্য পদ্ধতিগুলি তালিকাবদ্ধ করে, কিন্তু এই সমস্ত তাদের নিজস্ব ত্রুটিগুলি রয়েছে:

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

Mysqldump টুল ইনস্টল করা হচ্ছে

আপনি যদি এই নিবন্ধে আগ্রহী হন, তবে আপনি ইতিমধ্যেই MySQL ইনস্টল করেছেন। যদি তা হয়, ভাল খবর-আপনি ইতিমধ্যে আছে mysqldump! যদি না হয় তবে আপনি কেবল আপনার অপারেটিং সিস্টেমের জন্য স্ট্যান্ডার্ড মাইস্কুলাল ইনস্টল করতে পারেন।

উইন্ডোজের জন্য, উইন্ডোজ 7 এ মাইএসকিউএল ইনস্টল করার জন্য এখানে আমাদের নির্দেশাবলী দেখুন (ইনস্টলেশনের প্রক্রিয়াটি এখনও অনেক বেশি)। একইভাবে ম্যাকওস-এ, মাইক্রোসফট 10.7 এ মাইএসকিউএল ইনস্টল করার জন্য আমাদের নির্দেশনা দেখুন (আবার পুরানো কিন্তু এখনও প্রযোজ্য)। উবুন্টু-ভিত্তিক লিনাক্স সিস্টেম ব্যবহারকারীরা নিম্নলিখিত কমান্ডটি মাইএসকিউএল ক্লায়েন্ট এবং ইউটিলিটি ইনস্টল করতে ব্যবহার করতে পারেন:

sudo apt MySQL-client ইনস্টল করুন

একটি MySQL ডাম্প নিষ্কাশন

একবার ইনস্টল, আপনি ব্যবহার করতে পারেন mysqldump আপনার ডাটাবেসের একটি সম্পূর্ণ ব্যাকআপ পেতে।

mysqldump -h আপনার ডিবি হোস্টের নাম বা আইপি -u ডিবি ব্যবহারকারীর নাম -পি ডাটাবেস নাম> db_backup.sql

চলুন এই কমান্ডটি একটু নিচে ভাঙ্গি:

  • "-H": এই পতাকা ডাটাবেস নিমন্ত্রণকর্তা। এটি একটি সম্পূর্ণ হোস্ট নাম (উদাঃ myhost.domain.com) অথবা একটি আইপি ঠিকানা হতে পারে। যদি আপনি এটি MySQL সার্ভারের মতো একই হোস্টে চালাচ্ছেন তবে আপনি এই ফাঁকাটিও ছেড়ে দিতে পারেন।
  • "-U": উল্লিখিত, এই আপনার ব্যবহারকারীর নাম.
  • "-P": যদি আপনি সঠিকভাবে আপনার মাইএসকিউএল ইনস্টলেশন সুরক্ষিত থাকেন, তবে আপনাকে একটি প্রয়োজন হবে পাসওয়ার্ড সংযোগ করা. কোনও যুক্তি ছাড়াই এই পতাকাটি আপনাকে কমান্ডটি চালানোর সময় একটি পাসওয়ার্ডের জন্য অনুরোধ করবে। কখনও কখনও এটি আপনার পতাকাটিকে এই পতাকাতে যুক্তি হিসাবে সরাসরি সরবরাহ করা উপকারী, উদাহরণস্বরূপ ব্যাকআপ স্ক্রিপ্টে। কিন্তু প্রম্পটে, আপনাকে এটি করতে হবে না, কারণ যদি কেউ আপনার কম্পিউটারে অ্যাক্সেস পায় তবে তারা আপনার কমান্ড ইতিহাসে এই পাসওয়ার্ডটি পেতে পারে।
  • "> db_backup.sql": এই শেষ অংশ বলছে mysqldump একটি ফাইল মধ্যে তার সব আউটপুট নির্দেশ। সাধারণত, কমান্ড সবকিছুই সরাসরি কনসোলে আউটপুট করবে, যার অর্থ আপনি এসকিউএল বিবৃতিগুলির একটি গুচ্ছ দেখতে চান। কিন্তু পরিবর্তে, *> * চিহ্নটি সেই সমস্ত জিনিসগুলিকে নামযুক্ত পাঠ্য ফাইলে পরিবর্তিত করার একটি চিহ্ন। এবং যদি এই ফাইলটি বিদ্যমান না হয় তবে এটি স্বয়ংক্রিয়ভাবে তৈরি হবে।

এটি শেষ হলে, আপনার একটি। এসকিউএল ফাইল থাকবে। এটি কেবল একটি পাঠ্য ফাইল যা এসকিউএল বিবৃতি ধারণ করে। বিষয়বস্তুটি পরিদর্শন করতে আপনি যেকোনো টেক্সট এডিটরতে এটি খুলতে পারেন। একটি ওয়ার্ডপ্রেস ডাটাবেস থেকে একটি এক্সপোর্ট খুঁজছেন, আপনি কিভাবে এই ফাইল একসাথে করা হয় দেখতে পারেন।

ফাইল বিভাগে বিভক্ত করা হয়। উপরের ছবিতে, আমরা প্রথম বিভাগটি ওয়ার্ডপ্রেস মন্তব্যগুলির জন্য টেবিল সেট আপ দেখতে পারি। এরপর দ্বিতীয় বিভাগটি সেই টেবিলে থাকা সামগ্রীর পুনরাবৃত্তি করে (যেমন মন্তব্যের রেকর্ড)। যখন আপনি আবার আপনার মাইএসকিউএল ডাম্প পুনরায় আমদানি করতে যান, কমান্ডটি ফাইলের মাধ্যমে কাজ করবে, বিবৃতিগুলি কার্যকর করবে এবং আপনার ডেটাবেসটিকে ঠিক যেমন ভাবে এটি পুনঃনির্মাণ করবে। তো আপনি এটি কিভাবে করেন? একবার দেখা যাক.

একটি MySQL ডাম্প ফাইল আমদানি করা

আপনি এটি করতে সক্ষম হবার আগে, আপনাকে ইতিমধ্যে তৈরি ডেটাবেসের প্রয়োজন হবে এবং আপনার বৈধ ব্যবহারকারীর নাম এবং পাসওয়ার্ড থাকবে। আপনি ডাটাবেসের জন্য সব অনুমতি থাকতে হবে। (কঠোরভাবে বলার অপেক্ষা রাখে না আপনি প্রয়োজন হয় না প্রদান অনুমতি, তবে এটি কেবল তাদের সবাইকে প্রদান করা সহজ।) আপনি এই নিবন্ধে ডাটাবেস অনুমতিগুলির বিশদ জানতে পারেন।

আপনার তথ্য পুনরায় আমদানি করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. সঙ্গে MySQL সার্ভার লগ ইন করুন মাইএসকিউএল কমান্ড।
  2. আদর্শ ব্যবহার ডাটাবেস নাম প্রম্পটে, ডিবি সঠিক নাম প্রতিস্থাপন।
  3. প্রবেশ করান উৎস ফাইলের নাম, আপনি পূর্বে গ্রহণ ডাম্প ফাইলের নাম প্রতিস্থাপন।

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

একবার প্রক্রিয়া সম্পন্ন হলে, আপনার আসল ডাটাবেসের একটি সদৃশ থাকবে। আপনি অন্য ডাম্প করে এবং দুটি আউটপুট তুলনা করে এটি যাচাই করতে পারেন। একটি উপযুক্ত পাঠ্য সম্পাদক আপনার জন্য এটি করতে সক্ষম হবেন, অথবা নীচের চিত্রটিতে দেখানো একটি ডেডিকেটেড * diff * সরঞ্জামটি:

এই ফাইলগুলির মধ্যে মাত্র দুটি পার্থক্য রয়েছে, যা ডান স্ক্রলবারের উপরে এবং নীচে লাল রেখা দ্বারা উপস্থাপিত। প্রথম লাইন যা ডাটাবেসের নাম ধারণ করে এবং আমরা এটি ভিন্ন হতে আশা করি কারণ আমরা তাদের ভিন্নভাবে নাম দিয়েছি। দ্বিতীয়, শেষ পর্যন্ত, ডাম্প ফাইলের জন্য টাইমস্ট্যাম্প। এবং আমরা এটি ভিন্ন হতে আশা করি, যেমনটি আমরা প্রথম পর দ্বিতীয় ডাটাবেসটি পুনঃপ্রতিষ্ঠিত করেছি। অন্যথায়, ফাইলগুলি ঠিক একই, অর্থাত্ তাদের উৎপন্ন ডেটাবেসগুলিও ভাল!