কিছু ম্যাজেন্টো টেবিলগুলি ইনোডিবি নয়, সমস্ত টেবিলকে ইনোডিবিতে রূপান্তর করা কি নিরাপদ?


16

আমি এডাব্লুএস আরডিএস রিডের প্রতিলিপি ব্যবহার করছি। এটি নিয়মিত ম্যাজেন্টোর মেমোরি ইঞ্জিন টেবিলগুলির সাথে সমস্যাযুক্ত। ব্যাকআপ এবং পড়ার জন্য অনুলিপি আরডিএস ইনোডিবি পছন্দ করে। আমি কী নিরাপদে সমস্ত টেবিল InnoDB এ পরিবর্তন করতে পারি?

এছাড়াও আমি এডাব্লুএস থেকে নিম্নলিখিত সতর্কতা পেয়েছি:

ডিবি ইনস্ট্যান্স ম্যাজেন্টো-মনিন-প্রোড-ডিবিতে মাইআইএসএএম টেবিল রয়েছে যা ইনোডিবিতে স্থানান্তরিত হয়নি। এই টেবিলগুলি পয়েন্ট-ইন-টাইম পুনঃস্থাপনগুলি সম্পাদন করার আপনার ক্ষমতাকে প্রভাবিত করতে পারে। এই টেবিলগুলিকে InnoDB এ রূপান্তর করার বিষয়ে বিবেচনা করুন। দয়া করে http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/ Appendix.MySQL.CommonDBATasks.html#MySQL.CommonDBATasks.Tables দেখুন

করণীয় উত্তর

এখনও মতামত আগ্রহী। আমি যদি পরবর্তী 24 ঘন্টার মধ্যে কোনও সমস্যা না পাই তবে আমি উত্তর হিসাবে এটি যুক্ত করব। আমি নীচে নেওয়া পদক্ষেপগুলি এখন পর্যন্ত নিরাপদ বলে মনে হচ্ছে। আমার সবচেয়ে বড় উদ্বেগ ছিল ম্যাজেন্টোর মেমোরি ইঞ্জিন টেবিলগুলি (in_tmp এ টেবিলগুলি শেষ হওয়া) এবং এটি সূচকে কীভাবে প্রভাব ফেলতে পারে।

আমি যা করেছি তা এখানে:

  1. SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE (ENGINE = 'Memory' OR ENGINE='MyIsam') AND TABLE_SCHEMA='magento_db'

    • আমার জন্য এটি বেশিরভাগ অস্থায়ী সূচী টেবিলগুলি এবং ম্যাজেন্টো মডিউল টেবিলগুলি ফিরিয়েছে, সুতরাং উদ্বেগের জন্য অনেকগুলি সমালোচনামূলক মূল টেবিল নয় এবং কিছু যথেষ্ট টেবিল যা আমি ফ্যানটিকে হিট করলে সহজেই অন্য একটি পরিবর্তনকারী টেবিল কার্যকর করতে পারি।
  2. প্রতিটি টেবিলের জন্য আমি মৃত্যুদন্ড কার্যকর করেছি: Alter table {table-name} ENGINE=InnoDB;

আপনার টেবিলগুলির কোনওটিই ইনোডিবি না হলে আমি এটি চেষ্টা করতে নার্ভাস হব। তবে, যেমনটি আমি আগেই বলেছি, আমার উদাহরণে কয়েকটি কোর টেবিল ছিল যা সংশোধন করা দরকার।


আপনি কি দীর্ঘদিন ধরে এটি প্রযোজনায় চালাচ্ছেন? যদি তা হয় তবে এটি কীভাবে চলছে - এটি আপনাকে কোনও সমস্যার কারণ করেছিল? প্রাথমিকভাবে * _টিএমপি সূচক টেবিলগুলি নিয়ে ভাবছেন যা বর্তমানে মেমোরি ইঞ্জিন।
মাইকেল পার্কিন 24'16

1
আমি অস্বাভাবিক কিছু লক্ষ্য করি নি।
টাইলারএসএন

দুর্দান্ত, নিশ্চিত করার জন্য ধন্যবাদ - আমরা এটিকে যাব এবং খুব শীঘ্রই প্রতিবেদন করব।
মাইকেল পার্কিন

@ মাইকেল মাপের পার্কিন মনে রাখবেন যে আমরা সোলার অনুসন্ধান ব্যবহার করছি। অন্যান্য উত্তরগুলি দেখুন যা এটি অনুসন্ধানে কীভাবে প্রভাব ফেলতে পারে তার সাথে কথা বলে।
টাইলারএসএন

1
আমরা এটি আমাদের বেশিরভাগ প্রোডাকশন সাইটগুলিতে (মারিয়াডিবি 10.0) চালিয়ে যাচ্ছি, সমস্ত টেবিল (মেমোরি সহ) ইনোডিবি হিসাবে চলমান - দুর্দান্ত কাজ করে
মাইকেল পার্কিন

উত্তর:


11

নিম্নলিখিত কোনও একটিকে সত্য বলে ধরে নিলে উপাত্তের প্রকারটি InnoDB এ পরিবর্তন করা ভাল:

  1. আপনি মাইএসকিউএল 5.6.4+ ব্যবহার করছেন যেখানে ইনোডিবি স্টোরেজ ইঞ্জিন ফুলটেক্সট অনুসন্ধানকে সমর্থন করে
  2. আপনি ডিফল্ট ম্যাজেন্টো অনুসন্ধান কার্যকারিতা ব্যবহার করছেন না যা অন্তর্নিহিত মাইআইএসএএম ফুলটেক্সট অনুসন্ধানের দক্ষতার উপর নির্ভর করে। এই কার্যকারিতা বিরক্তিজনক দিয়ে শুরু করতে হয় এবং ফিচার ডিফল্ট Magento অনুসন্ধান প্রদত্ত সেট ছেড়ে অনেক আকাঙ্ক্ষিত করা তাই আমি ব্যবহার করার সুপারিশ করছি Lucene বা স্পিংক্স বা সেরা এখনো Algolia অনুসন্ধান আয়োজন করেন।

ঝুঁকি হ্রাস করতে এবং অন্য কোনও ডিবি কনফিগারেশন ড্রাফ্ট বা সমস্যাগুলি পরীক্ষা করার জন্য ব্যক্তিগতভাবে আমি ম্যাজেন্টো ডিবি মেরামত সরঞ্জামটির সাহায্যে এটি করার পরামর্শ দিই । InnoDB হ'ল আদর্শ ইঞ্জিন, এটি পুরোপুরি সীমাবদ্ধতা সত্ত্বেও।


1
আমরা সৌর অনুসন্ধান ব্যবহার করছি। সুতরাং, অনুসন্ধানের বিষয় হিসাবে আমাদের পরিষ্কার হওয়া উচিত।
টাইলারসএনএন

আমি InnoDB কে মোটেই আদর্শ ইঞ্জিন বিবেচনা করব না। আপনার যদি প্রচুর অনুসন্ধানের প্রশ্ন থাকে তবে এটি মাইআইএসএএম এর তুলনায় অত্যন্ত ধীর slow আমি প্রায়শই শুনি যে ইনোডিবি দ্রুত আপডেট করছে এবং বেশিরভাগ ক্যোয়ারী আপডেট হয় তাই এটি আরও দ্রুত। আমি সম্পূর্ণ বিপরীত দেখতে। আমার প্রতিটি সাইটের জন্য আমার কাছে আরও অনেক বেশি অনুসন্ধান ক্যোয়ারী রয়েছে যা ক্যোয়ারী আপডেট করে / যুক্ত করে। আমি আমার সমস্ত টেবিলগুলি InnoDB এ স্যুইচ করার চেষ্টা করেছি এবং পৃষ্ঠা লোডের সময়টি মূলত কোনও দেরি হতে পারে না (হতে পারে 0.1 সেকেন্ড) 10 সেকেন্ডে! আমি সবকিছু মাইআইএসএমে রূপান্তর করেছি কারণ এটি গতির জন্য আদর্শ ইঞ্জিন (এবং এটি পুরো পাঠ্য অনুসন্ধানে সমর্থন করে)।
টিম এক্কেল

টিম, আমি একমত "KIND", বেশিরভাগ কারণেই আমি সময় এবং আবার দেখেছি যে @ বেন-লাস্টানি-সোনাসি ঠিক সমতল প্রমাণিত এবং মাইএসকিউএল খুব কমই সামগ্রিক পারফ ডব্লু / অন্য সিস্টেমগুলির মধ্যে একটি সত্যিকারের টানা যা এমনকি লোড এ উপ-800ms প্রতিক্রিয়া জন্য প্রয়োজন অপ্টিমাইজেশান কিন্তু InnoDB কী বো / পুরোনো যাদুকর কোর ডিবি ~ 10x লেখা হয় প্রত্যেক ব্যবহারকারীর "দেখুন" কর্ম লগ ইন করার প্লাস Solr অনুসন্ধান জন্য সবচেয়ে ভাল হয় গ জন্য perf & qualilty :) হল
ব্রায়ান 'বিজে' Hoffpauir জুনিয়র

1
সুতরাং, ইনোডিবি বলে মনে করা হচ্ছে এমন রূপান্তর কীভাবে সেই সমস্ত বিদেশী কী সম্পর্কগুলি পরিচালনা করে এবং সেই ফকি সম্পর্কগুলি থেকে ক্যাসকেডের উপর মোছার উপর নির্ভর করে মুছে ফেলা কীভাবে সম্পূর্ণ হয়? অন্য কথায়, সম্পর্কগুলি স্থানে না রেখে যে জঞ্জাল ফেলে রাখা হবে তা আপনি কীভাবে পরিচালনা করবেন?
ফায়াসকো ল্যাবগুলি

@ ফায়াসকোলেবস যখনই আমি এই মন্তব্য থ্রেডটি পরীক্ষা করে দেখেছি তবে কিউ / এ এর ​​ফোকাসটি মাইআইএসএএম থেকে ফর্ম ইনোডিবিতে রূপান্তর করা। আমি অনুমান করছি যে আপনার উল্লেখ সম্পর্কিত বৈশিষ্ট্যগুলি ইতিমধ্যে InnoDB। MyISAM এফ কে এর কিংবা লেনদেন সমর্থন করে না মাইএসকিউএল 5.7 হিসাবে যদিও InnoDB করে যদিও এটা এসকিউএল মান থেকে সামান্য বিচ্যুত
ব্রায়ান 'বিজে' Hoffpauir জুনিয়র

2

আফাইক আপনার সমস্ত টেবিল InnoDB এ রূপান্তর করবেন না।

catalogsearch_fulltext মাইআইএসএএম থাকা উচিত, কারণ ইনোডিবি-র কোনও ফুলটেক্সট অনুসন্ধান সমর্থন নেই, অন্তত মাইএসকিউএল 5.6 (আইরিচ) না হওয়া পর্যন্ত নয়।

অন্য সমস্ত টেবিলের জন্য, এটি নিরাপদ হওয়া উচিত।



2

আমি সবেমাত্র মাইএসকিউএল ডিফল্ট ইঞ্জিনকে ইনোডিবিতে পরিবর্তন করেছি এবং আমার বেশিরভাগ ম্যাজেন্টো টেবিলগুলি অলৌকিকভাবে তাদেরকে ইনোডিবিতে রূপান্তরিত করেছে (কয়েকটি এখনও মাইআইএসএএম এবং কিছু স্মৃতিতে রয়েছে)।

ভেবেছিলাম আমি এই ভাগ করে নিই ...

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.