mysqldump ক্লায়েন্ট ইউটিলিটি লজিক্যাল ব্যাকআপ করে, যাতে মূল ডাটাবেস অবজেক্ট ডেফিনিশন এবং টেবিল ডেটা পুনরুত্পাদন করার জন্য এক্সিকিউট করার উপযোগী SQL স্টেটমেন্ট সেট তৈরি হয়।
mysqldump ব্যবহার
এক বা একাধিক MySQL ডাটাবেস ব্যাকআপ বা অন্য SQL সার্ভারে ট্রান্সফারের জন্য ডাম্প করে।
mysqldumpকমান্ড CSV, অন্যান্য ডিলিমিটেড টেক্সট, বা XML ফরম্যাটে আউটপুট জেনারেট করেও পারে।mysqldumpইউটিলিটি কমপক্ষে ডাম্পড টেবিলের জন্য SELECT প্রিভিলেজ, ডাম্পড ভিউর জন্য SHOW VIEW, ডাম্পড ট্রিগারের জন্য TRIGGER,--single-transactionঅপশন না থাকলে LOCK TABLES, এবং--no-tablespacesঅপশন না থাকলে PROCESS প্রিভিলেজ আশা করে।ডাটাবেসগুলো ডেভেলপমেন্ট এবং DBA কাজের জন্য ক্লোন করা যায়, বা বিদ্যমান ডাটাবেসের ছোট вариয়েশন তৈরি করতে ব্যবহার করা যায় যা টেস্টিংয়ের জন্য প্রয়োজন হতে পারে।
বড় স্কেলের ব্যাকআপ এবং রিস্টোরের জন্য, ফিজিক্যাল ব্যাকআপ পরামর্শ করা হয়, এবং তারপর ডেটা ফাইলগুলো তাদের মূল ফরম্যাটে কপি করে ডেটা দ্রুত রিস্টোর করা:
যদি টেবিলগুলো প্রধানত InnoDB টেবিল হয়, অথবা InnoDB এবং MyISAM টেবিলের মিশ্রণ থাকে, তবে MySQL Enterprise Backup পণ্যের জন্য
mysqlbackupকমান্ড ব্যবহার করা হয়। এটি InnoDB ব্যাকআপের জন্য সেরা পারফরম্যান্স দেয় এবং কম ডিসরাপশন করে।mysqldumpটেবিল কন্টেন্ট সারি সারি রিট্রিভ করে ডাম্প করতে পারে, অথবা পুরো টেবিলের কন্টেন্ট রিট্রিভ করে মেমরিতে বাফার করে তারপর ডাম্প করতে পারে।
সিন্ট্যাক্স
mysqldump ব্যবহারের তিনটি উপায় রয়েছে: এক বা একাধিক টেবিলের সেট, এক বা একাধিক সম্পূর্ণ ডাটাবেসের সেট, বা পুরো MySQL সার্ভার ডাম্প করা। নিচে দেখানো হলো:
shell> mysqldump [options] db_name [tbl_name ...] shell> mysqldump [options] --databases db_name ... shell> mysqldump [options] --all-databases
যদি ব্যবহারকারী পুরো ডাটাবেস ডাম্প করতে চান, তবে db_name-এর পর টেবিল নাম দেওয়া উচিত নয়, অথবা --databases বা --all-databases অপশন ব্যবহার করতে হবে।