মাইএসকিউএলে সর্বাধিক সারি আকার সহ ইস্যু করুন


8

আমার মাইএসকিউএল নিয়ে সমস্যা আছে, অনেক টেক্সট ক্ষেত্র সহ আমার একটি টেবিল রয়েছে। আমি যখন কিছু ডেটা সঞ্চয় করার চেষ্টা করি তখন আমি এই ত্রুটিটি পাই।

সারি আকার খুব বড়। ব্যবহৃত টেবিল প্রকারের সর্বাধিক সারি আকার 8126 counting

আমি প্রতিটি ক্ষেত্রে যে পাঠ্যটি সঞ্চয় করি তা খুব দীর্ঘ নয়, প্রতিটিটিতে কয়েকটি অনুচ্ছেদ রয়েছে।

আমি কি করতে পারি?

উত্তর:


9

যে উত্তর লোকদের জন্য ধন্যবাদ। আপনার পোস্ট করা লিঙ্কগুলি শেখা শুরু করার জন্য খুব দরকারী বেস ছিল।

শেষ অবধি আমি এই পৃষ্ঠাটি পেয়েছি: http://download.oracle.com/docs/cd/E17952_01/refman-5.5-en/innodb-compression-usage.html

এবং আমি my.cnfটি এই দুটি লাইন [mysqld]বিভাগে যুক্ত করে কনফিগার করেছি :

innodb_file_per_table
innodb_file_format = Barracuda

তারপরে আমি ALTERphpMyAdmin- এর মাধ্যমে এই কমান্ডটি দিয়ে আমার টেবিলটি দেখি

ALTER TABLE nombre_tabla
 ENGINE=InnoDB
 ROW_FORMAT=COMPRESSED 
 KEY_BLOCK_SIZE=8; 
 SHOW WARNINGS;

উপরের লিঙ্কটিতে আপনি পড়তে পারেন এমন অন্যান্য সেটিংস ব্যবহারও সম্ভব, তবে এগুলি আমার পক্ষে ভাল কাজ করেছে।


আমি সংক্ষেপিত এবং বারাকুডার জন্য ওয়াহটসের অপূর্ণতা সম্পর্কে খুব বেশি তথ্য পাই না। কেন সবসময় এটি ব্যবহার না করে যদি এটি ভাল হয় এবং এটি সমাধান করে?
টেড

3

আপনি এই নিবন্ধটি একবার দেখে নিতে চাইতে পারেন যা মাইএসকিউএল সারির আকারগুলি সম্পর্কে অনেক কিছু ব্যাখ্যা করে। এটি লক্ষণীয় গুরুত্বপূর্ণ যে আপনি পাঠ্য বা বিএলওবি ক্ষেত্রগুলি ব্যবহার করার পরেও আপনার সারির আকারটি 8K এর বেশি হতে পারে (ইনোডিবি-র জন্য সীমা) কারণ এটি পৃষ্ঠায় প্রতিটি ক্ষেত্রের ইনলাইনটির জন্য প্রথম 768 বাইট সংরক্ষণ করে। এটি ঠিক করার সহজ উপায় হ'ল ইনোডিবি সহ ব্যারাকুডা ফাইল ফর্ম্যাটটি ব্যবহার করা । এটি মূলত firs 768 বাইট সংরক্ষণের পরিবর্তে পাঠ্য ডেটাতে 20 বাইট পয়েন্টার সংরক্ষণ করে সমস্যা থেকে পুরোপুরি মুক্তি পেতে পারে।


1

ওয়েল, মাইএসকিএল যেমন বলেছে তেমন করুন: বড়চেত্রকে বারচর থেকে পাঠ্যে বা ব্লাবে রূপান্তর করুন (টেবিল ALTER)। পাঠ্য ক্ষেত্রগুলি অনেকগুলি বর্ণের মতো আচরণ করে (সূচকের উপসর্গের দৈর্ঘ্য প্রয়োজন, তবে এটি কাজ করে) তবে পৃথকভাবে সংরক্ষণ করা হয়।

এই রেফারেন্সটি আপনাকে প্রতিটি স্টক মাইএসকিএল টেবিল ইঞ্জিনের সঠিক সীমাটি বলে দেয়:

http://dev.mysql.com/doc/refman/5.0/en/column-count-limit.html

এবং এখানে পাঠ্য ক্ষেত্রগুলি সম্পর্কে জানার জন্য সমস্ত কিছু রয়েছে:

http://dev.mysql.com/doc/refman/5.0/en/blob.html


আপনার উত্তরের জন্য @ কর্কম্যানকে ধন্যবাদ, সমস্যাটি দেখা দিলে আমার ক্ষেত্রগুলি ইতিমধ্যে পাঠ্য হিসাবে সংজ্ঞায়িত হয়েছিল। আমি আপনার লিঙ্ক পরামর্শ দেখতে যাচ্ছি।
মেমোচিপান

0

প্রায় ক্রস-পোস্টিং স্ট্যাক ওভারফ্লো থেকে , কিন্তু এই একটি খোলা (এবং যাচাইকৃত) বাগ মাইএসকিউএল সার্ভারের মধ্যে InnoDB ইঞ্জিন । আপাতত একটি অস্থায়ী স্থিরতা হ'ল অস্থায়ী সঞ্চয়স্থান হিসাবে মাইআইএসএএম ইঞ্জিনে ফ্যালব্যাক । সুতরাং, আপনার my.cnf ফাইলটিতে:

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