تعديل قاعدة البيانات داخل نسخة احتياطية لإزالة وسم مفتاح مكرر لتجنب الفشل عند الاستعادة

شكراً جزيلاً على كل مساعدتك. لقد قمت بفك ضغط الملفات، وتعديل العلامة المكررة مرة أخرى، ثم أعدت ضغطها بعناية فائقة مع إيلاء اهتمام إضافي لاسم الملف، وهناك تقدم!

الآن عند الاستعادة، أرى رسالة الخطأ هذه، والتي تبدو أكثر شيوعًا:

[2023-08-25 15:25:21] CREATE INDEX
[2023-08-25 15:25:21] ERROR:  could not create unique index "index_tags_on_lower_name"
[2023-08-25 15:25:21] DETAIL:  Key (lower(name::text))=(socialmedia) is duplicated.
[2023-08-25 15:25:21] EXCEPTION: psql failed: DETAIL:  Key (lower(name::text))=(socialmedia) is duplicated.

أفترض أن هذا يعني أنني قمت بتغيير العلامة بنجاح، ولكن لا تزال هناك بعض الحالات من العلامة في المنشورات في قاعدة البيانات الخاصة بي. رقم tag_id يشير إلى أنه يجب أن تكون هناك علامة تسمى socialmedia ولكن بدلاً من ذلك يجد علامة تسمى socialmedia2 مما يسبب تعارضًا.

هذا المنشور و هذا المنشور يناقشان الإصلاحات، ولكن نظرًا لأنني أمتلك وصولاً فقط إلى النسخة الاحتياطية الخاصة بي عن طريق تحرير الكود مباشرة على جهازي المحلي، فلا يمكنني استخدام أدوات MySQL للمساعدة في تنظيفها.

لحسن الحظ، في قاعدة البيانات الخاصة بي، لدي فقط 38 حالة من 'socialmedia' (على عكس أكثر من 50,000 حالة socialmedia). بافتراض أنني كنت على حق في تغيير السطر 395421 كما قمت بتصويره أعلاه، فلا يمكنني معرفة كيفية تحديد أي من الحالات المتبقية مرتبطة بعلامة ‘socialmedia’، وأيها مرتبطة بالعلامة التي قمت بتغييرها إلى ‘socialmedia2’.

إليك مثال لمنشور قصير نسبيًا يستخدم علامة socialmedia

9488	'/groups/communitybuilders':86 '/groups/socialmedia':84 '/groups/webdev':89 '1st':117 '2022':131 '6':125 'activ':61 'banner':113 'btw':143 'close':169 'comment':21 'communiti':47 'communitybuild':87 'concept':4A 'especi':28 'event':119 'excit':164 'feedback':8B 'final':166 'get':38,133 'github':94 'grow':6A,142 'hack':127 'hard':156 'help':96 'homepag':151 'host':124 'improv':11B 'join':71,106 'launch':41,118,126 'like':128 'link':110 'live':140,175 'lot':27 'love':1A,67 'marvelxi':152 'mean':25 'media':51 'member':62 'mention':93 'move':45 'much':15 'new':150 'one':72,107 'onto':53 'plan':121 'platform':7B,43,139 'pleas':5A 'project':137 'promot':97 're':33,36,56,161 'readi':39,172 'rhorho358':23 'right':63 'see':100,167 'site':176 'slight':76,177,179 'small':58 'smile':77,178,180 'social':50 'socialmedia':85 'stage':31 'suggest':10B 'sure':79 'take':17 'team':59,75,103 'thank':12 'think':147 'time':19 'use':108 'webdev':90 'websit':3A 'whether':80 'work':155 'would':66,82	Thank you so much for taking the time to comment here @R , it means a lot, especially in the st... has been working hard on it and we’re all very excited to finally see it close to being ready on the live site :slight_smile: :slight_smile:	en_GB	4	f

قد أكون على المسار الخاطئ هنا على الرغم من أن ذلك يبدو وكأنه علامات أكثر في البداية مما من المحتمل أن يستخدمه المستخدم في منشور. من الممكن أيضًا أن ‘socialmedia’ ليست علامة مستخدمة في المنشور أعلاه، على الرغم من أنه كان ينبغي أن تكون كذلك.