যদি কোনও ডাটাবেস কেবল পঠনযোগ্য হয় তবে আপনি সহজেই sys.databases বা এসএসএমএস থেকে স্থিতিটি সনাক্ত করতে পারবেন। একটি সুপরিচিত ঘটনাটি হল আপনি কেবল পঠনযোগ্য ডেটাবেজে ডেটা আপডেট করতে পারবেন না। এই নিবন্ধে, আমরা কীভাবে এটির সমস্যা সমাধান করব এবং ঠিক করব তা শিখব।
দুটি বিকল্প
আমরা হয় ব্যবহার করতে পারেন SQL Server ম্যানেজমেন্ট স্টুডিও অর্থাত্, এসএসএমএস বা টি-এসকিউএল স্ক্রিপ্ট একটি পঠনযোগ্য ডাটাবেসকে একটি পঠন-লেখার ডাটাবেসে রূপান্তরিত করতে। এই বিকল্পগুলি আরও ভালভাবে বুঝতে, আসুন
- একটি ডাটাবেস তৈরি করুন
- এটির মধ্যে সারণী তৈরি করুন
- সারণীতে রেকর্ড যুক্ত করুন
- ডাটাবেসটিকে কেবল পঠনযোগ্য হিসাবে তৈরি করুন
- একই টেবিলে রেকর্ড যুক্ত করার চেষ্টা করুন
- ত্রুটির বার্তাটি পর্যালোচনা করুন
- ডাটাবেসটিকে রিড-রাইটিং মোডে রূপান্তর করুন
ডাটাবেস প্রস্তুত করুন
আপনার থেকে SQL Server ম্যানেজমেন্ট স্টুডিও, আপনার সাথে সংযুক্ত SQL server, নোড “ডাটাবেস” রাইট ক্লিক করুন এবং তারপরে “নতুন ডাটাবেস” বিকল্পটি নির্বাচন করুন। ডাটাবেসের জন্য একটি নাম টাইপ করার পরে ওকে টিপুন। আপনি নীচের উদাহরণে যেমন দেখিয়েছেন তেমন টি-এসকিউএল স্ক্রিপ্টও ব্যবহার করতে পারেন:
CREATE DATABASE [DataNumen] CONTAINMENT = NONE ON PRIMARY ( NAME = N'DataNumen', FILENAME = N'E:\Program Files\MSSQL12.MSSQLSERVER\MSSQL\DATA\DataNumen.mdf' , SIZE = 3072KB , FILEGROWTH = 1024KB ) LOG ON ( NAME = N'DataNumen_log', FILENAME = N'E:\Program Files\MSSQL12.MSSQLSERVER\MSSQL\DATA\DataNumen_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%) GO
ডাটাবেস নির্বাচন করে এসএসএমএস থেকে একটি টেবিল তৈরি করুন, নোড "টেবিল" এ ডান ক্লিক করুন এবং তারপরে "নতুন" এ নির্দেশ দিন এবং "টেবিল ..." বিকল্পটি ক্লিক করুন। কলামের নাম এবং ডেটাটাইপগুলি প্রবেশ করান এবং তারপরে একটি সারণির নাম দিয়ে সংরক্ষণ করুন। আপনি টেবিল তৈরি করতে নীচের ক্যোয়ারীটি ব্যবহার করতে পারেন:
USE [DataNumen] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Table1]( [Col1] [nchar](10) NULL ) ON [PRIMARY] GO
নিম্নলিখিত কোয়েরিটি ব্যবহার করে টেবিলটিতে রেকর্ড যুক্ত করুন:
Insert into [dbo].[Table1] values ('Testvalue')
The result window of SSMS will show the following message: (1 row(s) affected)
ব্যবহার SQL Server ম্যানেজমেন্ট স্টুডিও, ডাটাবেসটিতে ডান ক্লিক করুন এবং তারপরে "সম্পত্তি" বিকল্পটি নির্বাচন করুন। "অপশনগুলি" এর অধীনে ডেটাবেস বৈশিষ্ট্য পৃষ্ঠাতে, "সত্য" থেকে "মিথ্যা" এ "ডেটাবেস পঠনযোগ্য কেবল" বিকল্পটি সেট করুন। আপনি নীচে প্রদর্শিত হিসাবে টিএসকিউএল স্ক্রিপ্ট ব্যবহার করে কেবল ডাটাবেসটিকে পঠন-পাঠাতে স্যুইচ করতে পারেন:
USE [master] GO ALTER DATABASE [DataNumen] SET READ_ONLY WITH NO_WAIT GO
আপনি দেখতে পেয়েছিলেন যে এসএসএমএস এখন ডাটাবেসের নামের কাছে "কেবল পঠনযোগ্য" অবস্থাটি প্রদর্শন করবে।
এখন, আমরা সারণিতে একটি নতুন রেকর্ড .োকানোর চেষ্টা করি।
Insert into [dbo].[Table1] values ('Testvalue2')
নিম্নলিখিত ত্রুটি বার্তা ফলাফল উইন্ডো প্রদর্শিত হবে।
Msg 3906, Level 16, State 1, Line 12 Failed to update database "DataNumen" because the database is read-only.
ডাটাবেস বৈশিষ্ট্য পৃষ্ঠা ব্যবহার করে পঠন-পাঠনায় ডেটাবেস স্থিতিটি ফিরিয়ে নিন এবং "মিথ্যা" থেকে "সত্য" তে "ডেটাবেস কেবল পঠনযোগ্য" থেকে বিকল্পটি সেট করুন বা নিম্নলিখিত স্ক্রিপ্টটি কার্যকর করুন:
USE [master] GO ALTER DATABASE [DataNumen] SET READ_WRITE WITH NO_WAIT GO
এখন, আপনি যখন কোনও রেকর্ড যুক্ত করার চেষ্টা করবেন তখন ত্রুটি বার্তাটি "ডাটাবেস আপডেট করতে ব্যর্থ হয়েছে"DataNumen"কারণ ডাটাবেস কেবল পঠনযোগ্য" অদৃশ্য হয়ে যাবে। আমরা সবাই জানি যে ডাটাবেস ব্যাকআপগুলি আমাদের সহায়তা করে ঠিক করা SQL Server ডাটাবেস। হাওভেয়ের, কেবল পঠনযোগ্য ডাটাবেসের একটি ব্যাকআপ কেবলমাত্র পঠন-মোডে একটি ডাটাবেস পুনরুদ্ধার করবে এবং পঠন-লিখন মোডে নয়।
লেখকের ভূমিকা:
নীল ভারলি এর মধ্যে একটি তথ্য পুনরুদ্ধার বিশেষজ্ঞ is DataNumen, ইনক। যা তথ্য পুনরুদ্ধারের প্রযুক্তিগুলির সহ বিশ্বের শীর্ষস্থানীয় আউটলুক পুনরুদ্ধার এবং এক্সেল পুনরুদ্ধার সফ্টওয়্যার পণ্য। আরো তথ্যের জন্য, যান WWW.datanumen.com