এসকিউএল ব্যাকআপ ডিবি (SQL Backup DB) হল একটি প্রক্রিয়া যেখানে ডেটাবেসের সমস্ত ডেটা এবং কাঠামো নিরাপদভাবে সংরক্ষণ করা হয়, যাতে ভবিষ্যতে ডেটা পুনরুদ্ধার (restore) করা যেতে পারে। ডেটাবেসের ব্যাকআপ নেওয়া অত্যন্ত গুরুত্বপূর্ণ, কারণ এটি ডেটার ক্ষতি, হারানো বা সিস্টেম ক্র্যাশের বিরুদ্ধে সুরক্ষা প্রদান করে।
SQL ডেটাবেসের ব্যাকআপ বিভিন্ন ধরনের হতে পারে যেমন ফাইল ব্যাকআপ, সম্পূর্ণ ব্যাকআপ, আংশিক ব্যাকআপ, এবং ইনক্রিমেন্টাল ব্যাকআপ। এখানে SQL ব্যাকআপ সম্পর্কিত তথ্য এবং কৌশল নিয়ে আলোচনা করা হয়েছে।
SQL ডেটাবেসের ব্যাকআপ দুইটি প্রধান উপায়ে করা যেতে পারে:
SQL Server Management Studio (SSMS) ব্যবহার করে SQL ডেটাবেসের ব্যাকআপ নেয়া অত্যন্ত সহজ এবং ব্যবহারকারী-বান্ধব। এর মাধ্যমে আপনি ফুল ব্যাকআপ, ডিফারেনশিয়াল ব্যাকআপ বা ট্রানজেকশন লোগ ব্যাকআপ তৈরি করতে পারেন।
BACKUP DATABASE [DatabaseName] TO DISK = 'C:\Backup\DatabaseName.bak'
এটি DatabaseName
নামক ডেটাবেসের একটি পূর্ণ ব্যাকআপ তৈরি করবে এবং C:\Backup\DatabaseName.bak ফাইলে সেভ করবে।
ডিফারেনশিয়াল ব্যাকআপ:
BACKUP DATABASE [DatabaseName] TO DISK = 'C:\Backup\DatabaseName_Diff.bak' WITH DIFFERENTIAL;
এটি DatabaseName
এর ডিফারেনশিয়াল ব্যাকআপ তৈরি করবে, যেখানে শুধুমাত্র পূর্ণ ব্যাকআপের পর পরিবর্তিত ডেটা থাকবে।
ট্রানজেকশন লোগ ব্যাকআপ:
BACKUP LOG [DatabaseName] TO DISK = 'C:\Backup\DatabaseName_Log.bak';
MySQL ডেটাবেসের ব্যাকআপ নিতে সাধারণত mysqldump টুল ব্যবহার করা হয়। এটি ডেটাবেসের একটি সম্পূর্ণ ব্যাকআপ তৈরি করে এবং .sql
ফরম্যাটে সেভ করে।
mysqldump -u username -p database_name > backup_file.sql
এটি database_name
নামক ডেটাবেসের ব্যাকআপ তৈরি করবে এবং backup_file.sql ফাইলে সেভ করবে।
MySQL ডেটাবেসের ব্যাকআপ:
mysqldump -u root -p mydatabase > /path/to/backup/mydatabase_backup.sql
--all-databases
: সমস্ত ডেটাবেসের ব্যাকআপ তৈরি করবে।--single-transaction
: ব্যাকআপের সময় ডেটাবেসে কোনও লক লাগবে না (এটি InnoDB টেবিলের জন্য কাজ করে)।--no-tablespaces
: টেবিলস্পেস ব্যাকআপে অন্তর্ভুক্ত করবে না।PostgreSQL এ ব্যাকআপ নিতে pg_dump টুল ব্যবহার করা হয়, যা ডেটাবেসের একটি ব্যাকআপ তৈরি করে এবং একটি SQL স্ক্রিপ্ট ফাইলে সেভ করে।
pg_dump database_name > backup_file.sql
এটি database_name
এর একটি ব্যাকআপ তৈরি করবে এবং backup_file.sql ফাইলে সেভ করবে।
PostgreSQL ডেটাবেস ব্যাকআপ:
pg_dump mydatabase > /path/to/backup/mydatabase_backup.sql
-U
: PostgreSQL ইউজারনেম প্রদান করতে।-W
: পাসওয়ার্ড প্রম্পট করে।ব্যাকআপ নেওয়ার পাশাপাশি, প্রয়োজন হলে সেই ব্যাকআপ ফাইল থেকে ডেটাবেস পুনরুদ্ধার বা restore করতে হবে।
RESTORE DATABASE [DatabaseName] FROM DISK = 'C:\Backup\DatabaseName.bak';
mysql -u username -p database_name < backup_file.sql
psql -U username -d database_name -f backup_file.sql
SQL ডেটাবেসের ব্যাকআপ একটি অত্যন্ত গুরুত্বপূর্ণ কার্যক্রম, যা ডেটার নিরাপত্তা এবং অখণ্ডতা নিশ্চিত করতে সাহায্য করে। SQL, MySQL, PostgreSQL এবং SQL Server থেকে ব্যাকআপ নেওয়ার জন্য বিভিন্ন টুলস এবং কমান্ড ব্যবহার করা যায়। আপনি ফুল ব্যাকআপ, ডিফারেনশিয়াল ব্যাকআপ, ট্রানজেকশন লোগ ব্যাকআপ এবং অন্যান্য ধরনের ব্যাকআপ ব্যবহার করে আপনার ডেটাবেসের সুরক্ষা নিশ্চিত করতে পারেন। ব্যাকআপ ফাইলের পুনরুদ্ধার এবং নিরাপত্তা নিশ্চিত করা একটি গুরুত্বপূর্ণ অংশ হওয়া উচিত।
common.read_more