यदि आप SQL सर्वर में विभाजन को विभाजित करने का प्रयास करते हैं, तो आपको त्रुटि 7710 मिलेगी, लेकिन आपने "अगले उपयोग किए गए" फ़ाइल समूह को निर्दिष्ट नहीं किया है।
पूरी त्रुटि कुछ इस तरह दिखती है:
Msg 7710, Level 16, State 1, Line 1 Warning: The partition scheme 'MyPartitionScheme' does not have any next used filegroup. Partition scheme has not been changed.
जहां MyPartitionScheme
विचाराधीन विभाजन योजना का नाम है।
यदि आपको यह त्रुटि मिलती है, तो आपको ALTER PARTITION SCHEME
का उपयोग करके एक "अगला उपयोग किया गया" फ़ाइल समूह जोड़ना होगा बयान।
समस्या
यहाँ समस्या पर एक त्वरित ठहरनेवाला है।
जब मैं एक विभाजन को विभाजित करने का प्रयास करता हूँ:
ALTER PARTITION FUNCTION MoviesPartitionFunction()
SPLIT RANGE (500);
मुझे निम्न त्रुटि मिलती है:
Msg 7710, Level 16, State 1, Line 1 Warning: The partition scheme 'MoviesPartitionScheme' does not have any next used filegroup. Partition scheme has not been changed.
ऐसा इसलिए है क्योंकि मैंने MoviesPartitionScheme
के लिए "अगला उपयोग किया गया" फ़ाइल समूह निर्दिष्ट नहीं किया है , जो मेरे मामले में, विभाजन योजना है जिसका उपयोग मैंने MoviesPartitionFunction
को लागू करने के लिए किया था विभाजन द्वारा उपयोग किए जाने वाले फ़ाइल समूह के लिए।
यहां बताया गया है कि मैंने अपना मूल विभाजन फ़ंक्शन और विभाजन योजना कैसे बनाई:
CREATE PARTITION FUNCTION MoviesPartitionFunction (int)
AS RANGE LEFT FOR VALUES (-1, 100, 10000);
CREATE PARTITION SCHEME MoviesPartitionScheme
AS PARTITION MoviesPartitionFunction
TO (MoviesFg1, MoviesFg2, MoviesFg3, MoviesFg4);
तो इसमें वर्तमान में चार विभाजन हैं और मैं पांचवां जोड़ने का प्रयास कर रहा हूं।
समाधान
हम विभाजन योजना के लिए "अगले उपयोग किए गए" फ़ाइल समूह को जोड़कर उपरोक्त समस्या का समाधान कर सकते हैं।
हम मौजूदा फ़ाइल समूह का उपयोग कर सकते हैं या एक नया बना सकते हैं।
आइए एक नया बनाएं, और विभाजन को फिर से विभाजित करने का प्रयास करें:
ALTER DATABASE Test ADD FILEGROUP MoviesFg5;
ALTER DATABASE Test
ADD FILE
(
NAME = MoviesFg5dat,
FILENAME = '/var/opt/mssql/data/MoviesFg5dat.ndf',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB
)
TO FILEGROUP MoviesFg5;
ALTER PARTITION SCHEME MoviesPartitionScheme
NEXT USED MoviesFg5;
ALTER PARTITION FUNCTION MoviesPartitionFunction()
SPLIT RANGE (500);
परिणाम:
Commands completed successfully.
बहुत बढ़िया, इसलिए इसने काम किया, और अब हमें त्रुटि नहीं मिलती है।