بيچ ڪيئن بدلجي MySQL ڊيٽابيس کي MyISAM کان InnoDB اسٽوريج انجڻ ۾؟

هن آرٽيڪل ۾، اسين MySQL ڊيٽابيس ۾ MyISAM کي InnoDB اسٽوريج انجن ۾ بلڪ ڪنورشن لاءِ بهترين طريقن جي ڳولا ڪنداسين .

اسان توهان کي تبادلي جي عمل جي ذريعي قدم قدم تي رهنمائي ڪنداسين ۽ مددگار ٽوٽڪا ۽ ترڪيبون مهيا ڪنداسين انهي کي يقيني بڻائڻ لاءِ ته اهو موثر ۽ محفوظ طريقي سان ڪيو ويو آهي.

ڇا توهان هڪ ڊيٽابيس ايڊمنسٽريٽر آهيو يا هڪ ڊولپر، هي گائيڊ توهان کي MyISAM ۽ InnoDB جي وچ ۾ فرق کي سمجهڻ ۾ مدد ڏيندو، ۽ ڇو InnoDB ۾ تبديل ڪرڻ ڪارڪردگي کي بهتر ڪرڻ ۽ ڊيٽا جي اعتبار کي بهتر ڪرڻ لاءِ اهم آهي.

اسان جي تفصيلي قدمن تي عمل ڪندي، توهان آساني سان پنهنجي MySQL ڊيٽابيس کي InnoDB اسٽوريج انجن ۾ تبديل ڪري سگهندا ، انهي سان ڪارڪردگي بهتر ٿيندي ۽ ڊيٽا سيڪيورٽي ۽ سالميت کي يقيني بڻائي سگهندا.

بيچ ڪيئن بدلجي MySQL ڊيٽابيس کي MyISAM کان InnoDB اسٽوريج انجڻ ۾؟

MySQL ڊيٽابيس سسٽم ۾، MyISAM ۽ InnoDB ٻه عام اسٽوريج انجڻ آهن. MyISAM ڪيترن ئي پڙهڻ واري عملن سان منظرنامي لاءِ تيز ۽ موزون آهي.

InnoDB ٽرانزيڪشن، پرڏيهي ڪنجيون، ۽ قطار-سطح لاڪنگ کي سپورٽ ڪري ٿو، ۽ ايپليڪيشنن لاءِ وڌيڪ موزون آهي جن کي ڊيٽا جي سالميت ۽ هم وقتي ڪنٽرول جي ضرورت آهي. تنهن ڪري، اسان کي ڇا ڪرڻ گهرجي جڏهن اسان کي بيچ تبديل ڪرڻ جي ضرورت آهي MyISAM جدولن کي InnoDB ۾؟

MyISAM کي InnoDB ۾ ڇو بدلايو؟

پهرين، اچو ته ڳالهايون ڇو ته اسان هي سوئچ ٺاهي رهيا آهيون.

جيتوڻيڪ MyISAM سٺي ڪارڪردگي آهي، ان ۾ ڊيٽا سيڪيورٽي ۽ سمورو پروسيسنگ ۾ خاميون آهن.

InnoDB ٽرانزيڪشن سپورٽ مهيا ڪري ٿو، جيڪو ڊيٽا جي استحڪام کي يقيني بڻائي ٿو ۽ اعلي اتفاق جي حالتن کي سنڀاليندو.

1. ڊيٽا انٽيگريٽي: InnoDB ٽرانزيڪشن کي سپورٽ ڪري ٿو، جيڪو رول بيڪ آپريشنز جي اجازت ڏئي ٿو ۽ ڊيٽا جي تسلسل کي يقيني بڻائي ٿو.

2. ڪنڪرنسي ڪنٽرول: InnoDB قطار-سطح لاڪنگ استعمال ڪري ٿو، جيڪو اعليٰ ڪنڪرنسي ايپليڪيشنن لاءِ موزون آهي.

3. فارين ڪي سپورٽ: InnoDB فارين ڪيز کي سپورٽ ڪري ٿو، جيڪو ڊيٽا جي حوالي جي سالميت کي يقيني بڻائي سگهي ٿو.

بيچ کي تبديل ڪرڻ جو طريقو MyISAM کي InnoDB ۾

اسان ھڪڙي SQL بيان استعمال ڪري سگھون ٿا سڀني جدولن لاءِ تبادلي جا بيان ٺاھيو ۽ پوءِ انھن سڀني کي ھڪڙي ئي وقت تي عمل ڪري سگھون.

اهو آواز پيچيده آهي، پر اهو اصل ۾ بلڪل سادو آهي. صرف چند قدم.

قدم 1: ڊيٽابيس چونڊيو

پهرين، پڪ ڪريو ته توهان ڊيٽابيس چونڊيو آهي جيڪو توهان هلائڻ چاهيو ٿا. ھيٺ ڏنل حڪم استعمال ڪري سگھجن ٿا:

mysql
USE 你要操作的数据库名;

قدم 2: تبادلي جا بيان ٺاھيو

اڳيون، اسان کي SQL بيان ٺاهڻ جي ضرورت آهي جيڪي سڀني MyISAM جدولن کي InnoDB جدولن ۾ تبديل ڪن ٿيون.

اهو سوال ڪندي ڪري سگهجي ٿو information_schema.tables حاصل ڪرڻ لاء ٽيبل.

ھيٺ ڏنل SQL بيان کي ھلايو:

SELECT CONCAT('ALTER TABLE ',table_name,' ENGINE=InnoDB;') 
FROM information_schema.tables 
WHERE table_schema="你要操作的数据库名" AND ENGINE="MyISAM";

هي بيان ALTER TABLE بيانن جو هڪ سيٽ ٺاهي ٿو جيڪو هر MyISAM ٽيبل جي اسٽوريج انجڻ کي InnoDB ۾ تبديل ڪري ٿو.

قدم 3: تبادلي جي بيان تي عمل ڪريو

پوئين مرحلي ۾ پيدا ٿيل نتيجو ڪاپي ڪريو، ۽ AI اسان کي آساني سان سرحدن کي فلٽر ڪرڻ ۾ مدد ڪري سگھي ٿو.

چيٽ جي پي ٽي ۾ هيٺ ڏنل داخل ڪريو :

请帮我过滤以下边框:

+--------------------------------------------------------------+
| ALTER TABLE table1 ENGINE=InnoDB; |
| ALTER TABLE table2 ENGINE=InnoDB; |
| ALTER TABLE table3 ENGINE=InnoDB; |
+--------------------------------------------------------------+

پوءِ، جڏھن MySQL ۾ ھلايو ويندو، MySQL انھن ALTER TABLE بيانن کي ترتيب سان انجام ڏيندو سڀني MyISAM جدولن کي InnoDB جدولن ۾ تبديل ڪرڻ لاءِ.

مثال

فرض ڪريو ته ڊيٽابيس جيڪو توهان هلائڻ چاهيو ٿا نالو رکيو ويو آهي example_db، ھيٺ ڏنل قدمن تي عمل ڪريو:

  1. ڊيٽابيس چونڊيو:
USE example_db;
  1. تبادلي جا بيان ٺاھيو:
SELECT CONCAT('ALTER TABLE ',table_name,' ENGINE=InnoDB;') 
FROM information_schema.tables 
WHERE table_schema="example_db" AND ENGINE="MyISAM";
  1. ٺاهيل بيان کي نقل ڪريو ۽ ان کي MySQL ۾ عمل ڪريو:
ALTER TABLE table1 ENGINE=InnoDB;
ALTER TABLE table2 ENGINE=InnoDB;

احتياط

ھن بيچ جي تبادلي جي عمل کي انجام ڏيڻ کان پھريان، نوٽ ڪرڻ لاء ڪجھ پوائنٽون آھن:

1. ڊيٽا بيڪ اپ: بيچ ڪنورشن ڪرڻ کان اڳ، پڪ ڪريو ته ڊيٽا جي نقصان کي روڪڻ لاءِ ڊيٽابيس جو مڪمل بيڪ اپ ڪيو ويو آهي.

2. ٽيسٽنگ ماحول: اهو بهتر آهي ته پهريان ٽيسٽنگ ماحول ۾ ٽيسٽ ڪيو وڃي ته جيئن يقيني بڻائي سگهجي ته تبديلي جو عمل ايپليڪيشن جي عام آپريشن کي متاثر نه ڪندو.

3. ڊيٽابيس جون اجازتون: پڪ ڪريو ته توهان وٽ ALTER TABLE آپريشن ڪرڻ لاءِ ڪافي ڊيٽابيس جون اجازتون آهن.

نتيجي ۾

مٿين قدمن سان، اسان آساني سان بيچ ڪري سگھون ٿا سڀني MyISAM جدولن کي MySQL ڊيٽابيس ۾ InnoDB جدولن ۾. ائين ڪرڻ سان نه صرف ڊيٽابيس جي سمورو پروسيسنگ صلاحيتن کي بهتر بڻائي سگهجي ٿو، پر ڊيٽا جي سلامتي ۽ سالميت کي به بهتر بڻائي سگهجي ٿو.

مون کي اميد آهي ته هي آرٽيڪل توهان کي MySQL ڊيٽابيس کي بهتر سمجهڻ ۽ هلائڻ ۾ مدد ڪري سگهي ٿو. جيڪڏهن توهان وٽ ڪي سوال يا تجويزون آهن، مهرباني ڪري تبصري واري علائقي ۾ هڪ پيغام ڇڏي ڏيو.

اهو سڀ ڪجهه آهي MyISAM بيچ جي بدلي InnoDB ۾. هاڻي توهان ڪوشش ڪري سگهو ٿا!

🔧💡ڇا توهان ڄاڻڻ چاهيو ٿا ته phpMyAdmin استعمال ڪندي InnoDB ٽيبل کي MyISAM ڊفالٽ انجن ۾ ڪيئن بدلائجي ؟ هي آرٽيڪل تفصيلي قدم ۽ هدايتون مهيا ڪري ٿو ته جيئن توهان کي آساني سان تبديلي مڪمل ڪرڻ ۾ مدد ملي سگهي!

👇پڙهڻ جاري رکڻ جي سفارش ڪئي وئي 👇

وڌيڪ ڊيٽابيس جي تبادلي جي صلاحيتن کي سکڻ ۽ پنهنجي ڊيٽابيس جي انتظام کي بهتر ڪرڻ لاءِ لنڪ تي ڪلڪ ڪريو! 📚💻

اميد آهي ته، چن ويليانگ جي بلاگ ( https://www.chenweiliang.com/ ) تي شيئر ڪيل مضمون "ڪيئن بيچ ۾ MyISAM کي InnoDB اسٽوريج انجن ۾ MySQL ڊيٽابيس ۾ تبديل ڪجي؟" توهان لاءِ مددگار ثابت ٿيندو.

هن مضمون جي لنڪ شيئر ڪرڻ لاءِ آزاد محسوس ڪريو: https://www.chenweiliang.com/cwl-31790.html

وڌيڪ لڪيل چالون کولڻ لاءِ🔑، اسان جي ٽيليگرام چينل ۾ شامل ٿيڻ لاءِ ڀليڪار!

شئير ڪريو ۽ پسند ڪريو جيڪڏھن توھان کي پسند اچي! توهان جا حصا ۽ پسند اسان جي مسلسل حوصلا آهن!

 

发表 评论

您的邮箱地址不会被公开。必填项已用*标注

جي ويڙھيء وانگي امروٽي