mysqldump নিক্ষেপ করে: অজানা সারণী তথ্য_সেমায় (COLUMN_STATISICS) (1109)


117

আমি যখনই চেষ্টা করার চেষ্টা করি ততবার mysqldumpনিম্নলিখিত ত্রুটিটি পাই:

$> mysqldump --single-transaction --host host -u user -p db > db.sql
mysqldump: Couldn't execute 'SELECT COLUMN_NAME, JSON_EXTRACT(HISTOGRAM,
'$."number-of-buckets-specified"') FROM
information_schema.COLUMN_STATISTICS WHERE SCHEMA_NAME = 'db' AND
TABLE_NAME = 'Absence';':
Unknown table 'COLUMN_STATISTICS' in information_schema (1109)

ফলাফলটি এমন একটি ডাম্প যা সম্পূর্ণ নয়। আশ্চর্যের বিষয় হ'ল একই কমান্ডটি, অন্য একটি হোস্টের কাছ থেকে মৃত্যুদন্ড কার্যকর করা হয়েছে, কোনও ত্রুটি না ছড়িয়ে কাজ করে। কেউ কি একই সমস্যা অনুভব করেছেন?

আমি মাইএসকিএল-ক্লায়েন্ট ব্যবহার করছি 8.0এবং একটি মাইএসকিএল 5-7সার্ভার অ্যাক্সেস করার চেষ্টা করছি - সম্ভবত এটিই কারণ?

উত্তর:


168

এটি মাইএসকিলডাম্প ৮ এ ডিফল্টরূপে সক্ষম হওয়া একটি নতুন পতাকার কারণে You আদেশটি এমন কিছু হবে:

mysqldump --column-statistics=0 --host=<server> --user=<user> --password=<password> 

পরীক্ষা করে দেখুন এই লিঙ্কে আরও তথ্যের জন্য। ডিফল্টরূপে কলামের পরিসংখ্যান অক্ষম করতে, আপনি যুক্ত করতে পারেন

[mysqldump]
column-statistics=0

একটি মাইএসকিউএল কনফিগারেশন ফাইলে যেমন /etc/my.cnf বা ~ / .my.cnf


নির্দিষ্ট ডেটাবেজের জন্য
মোহামাদ হাশাম

কীভাবে পরিবর্তন স্থায়ী করা যায় তা দেখানোর জন্য @forrin উত্তর সম্পাদনা করা হয়েছে।
অ্যান্ড্রু শুলম্যান

2
মাইএসকিউএল ওয়ার্কবেঞ্চে একটি সেটিংও রয়েছে: "অ্যাডভান্সড অপশন ..." এর অধীনে, "অন্যান্য" বিভাগে, একটি কলাম-পরিসংখ্যান রয়েছে যা "সত্য" এ সেট করা আছে। অক্ষম করার পরামর্শ হিসাবে এটিকে শূন্যে পরিবর্তন করুন।
অ্যালেক্স বার্কার

6
মাইএসকিউএলওর্কব্যাঞ্চ v8.0.14 এর সেটিংটি নেই। আমি যা করেছি (একটি ম্যাকে) মাইএসকিউএলওয়র্কব্যাঞ্চের একটি পুরানো সংস্করণ ডাউনলোড করা হয়েছিল, সেই প্যাকেজটি খোলে (প্যাকেজ বিষয়বস্তু দেখান) এবং এর 'মাইএসকিএলডাম্প' এর বান্ডিল সংস্করণটি টেনে আনে। তারপরে আমি মাইএসকিউএল ওয়ার্কব্যাঞ্চের পছন্দগুলি সম্পাদনা করে এর পরিবর্তে 'মাইএসকিএলডাম' এর সংস্করণটি দেখতে চাই। কোনও পতাকা সেট না করেই রফতানি ঠিক কাজ করে। রেফ) bugs.mysql.com/bug.php?id=91640#c484427
স্কট

1
যে কেউ ডেটাগ্রিপ ব্যবহার করছেন তার জন্য আপনি ডাটাবেস উইন্ডোতে স্কিমাতে ডান ক্লিক করতে পারেন, "'মাইকিকিল্ডাম্প' দিয়ে ডাম্প 'এ যান --column-statistics=0এবং পপআপ উইন্ডোর নীচে বাক্সে উত্পন্ন আর্গুমেন্ট তালিকায় যুক্তি যুক্ত করতে পারেন।
ট্র্যাভেস্টি 3

27

যারা মাইএসকিউএল ওয়ার্কবেঞ্চ ব্যবহার করেন তাদের জন্য ডেটা এক্সপোর্ট স্ক্রিনে একটি "অ্যাডভান্সড অপশন" বোতাম রয়েছে। "কলামের পরিসংখ্যান ব্যবহার করুন" বিকল্পটি 0 এ সেট করে অক্ষম করা যায়।

আমি নিশ্চিত করিনি, তবে নিম্নলিখিত তথ্যগুলিও সত্য হওয়ার পরামর্শ দেওয়া হয়েছে: সংস্করণ 8.0.14 এ এটি অনুপস্থিত। সংস্করণ 8.0.16 এ এটি ডিফল্টরূপে করছে।


7
শুধুমাত্র মাইএসকিউএল ওয়ার্কবেঞ্চ সংস্করণ 8.0.13 এবং তার পরে "কলাম স্ট্যাটিস্টিক্স ব্যবহার করুন" অক্ষম করার জন্য এই বিকল্প রয়েছে।
পল ডেং

7
মাইএসকিউএল ওয়ার্কবেঞ্চ সংস্করণ 8.0.14 এ বিকল্প নেই। দেখে মনে হচ্ছে তারা এটি বের করে নিয়েছে।
ডিন বা


এখনও 8.0.16 এ ঘটবে
আমির বার

আমি নিশ্চিত করতে পারি যে মাইএসকিউএলওয়র্কবার্চ v8.0.17 সমস্যাটি (ম্যাকও) স্থির করেছে। এটি MySQLWorkbench v8.0.12 এ এই ত্রুটিটি ফেলেছিল এবং আপগ্রেড হয়েছিল। আমি লক্ষ্য করেছি যে এটি আমাকে এখন 5.X ডিবি থেকে ডেটা রফতানি সম্পর্কে সতর্ক করে না এবং স্বয়ংক্রিয়ভাবে --column-statistics=0এক্সপোর্ট কমান্ডটিতে যুক্ত করে।
Elte156

20

আমি একটি সমাধান খুঁজছেন পুরো দিন কাটিয়েছি, এবং আমার খালি ভাগ করতে এখানে এসেছি।

হ্যাঁ, সম্ভবত এই ত্রুটি সংস্করণগুলির পার্থক্যের কারণে।

কেবল এখান থেকে মাইএসকিউএল 5.7 জিপ সংরক্ষণাগারটি ডাউনলোড করুন: https://dev.mysql.com/downloads/mysql/ এবং এটি আনজিপ করুন, তারপরে সেখান থেকে mysqldump.exe ফাইলটি ব্যবহার করুন।

আপনি যদি মাইএসকিউএল ওয়ার্কবেঞ্চ ব্যবহার করছেন, আপনার সম্পাদনা -> পছন্দসমূহ -> প্রশাসন (বাম হাতের ফলক থেকে) এ গিয়ে ডাউনলোড করা মাইএসকিএলডাম্প সরঞ্জামটির জন্য আপনাকে একটি পথ নির্ধারণ করতে হবে ।

আশাকরি এটা সাহায্য করবে.


3
উইন্ডোজ ব্যবহারকারীদের জন্য, এই .exeটি এখানে ছিল:C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqldump.exe
জেসন

1
মাইএসকিউএলওর্কব্যাঞ্চ v8.0.16 এখনও কলাম-পরিসংখ্যান পতাকা সেট করার বিকল্পটি হারিয়েছে। এই সমাধানটি তর্কযোগ্যভাবে সেরা উত্তর কারণ এটি ভবিষ্যতের সমস্যাগুলির ক্ষেত্রে মাইএসকিউএল সংস্করণগুলির যথাযথ মেলানোর অনুমতি দেয়।
কিমিকি

5

এই উত্তরটি সহজ করার জন্য , আপনি mysqldumpতার জায়গায় নতুন নামকরণ করতে পারেন , একটি শেল স্ক্রিপ্ট তৈরি করতে পারেন এবং যুক্তি mysqldumpদিয়ে নামটি কল করতে পারেন --column-statistics=0। উদাহরণ:

মাইএসকিल्ड্প্প নামকরণ করুন:

mv /usr/local/bin/mysqldump /usr/local/bin/_mysqldump

নিম্নলিখিত শেল স্ক্রিপ্টটি তার জায়গায় সংরক্ষণ করুন:

#!/bin/sh

_mysqldump --column-statistics=0 $@

1
এটি মাইএসকিএলএক্সের সাথে মাইএসকিএল ওয়ার্কবেঞ্চের সাথে একটি দুর্দান্ত পরামর্শ এবং ম্যাকসএক্সএক্সে কাজ করে, তবে আপনাকে আপনার বাস্তব মাইএসকিএলডাম্প এক্সিকিউটেবলের পুরো পথটি অন্তর্ভুক্ত করতে হবে বা এটি কাজ করবে বলে মনে হয় না। আমি চেষ্টা করেছি। / কিন্তু এখনও কাজ করবে না। পুরো পথে রেখে ওয়ার্কবঞ্চ স্ট্যাচসকে পতাকাঙ্কিত করে এটি চালাতে সক্ষম হয়েছিল।
অ্যান্ডি ডি

4

প্রায় সহজ কাজ

মাইএসকিএল ওয়ার্কবেঞ্চ 8.0 ব্যবহার করার সময়

  • "ডেটা এক্সপোর্ট" ট্যাবটি খুলুন
  • উন্নত বিকল্পগুলি ক্লিক করুন এখানে চিত্র বর্ণনা লিখুন
  • অন্যান্য শিরোনামের অধীনে কলামের পরিসংখ্যান 0 তে সেট করুন এখানে চিত্র বর্ণনা লিখুন
  • আবার রফতানি করুনএখানে চিত্র বর্ণনা লিখুন

শুভকামনা করছি!


5
আমার কাছে "অন্যান্য" বিভাগে এই বিকল্পটি নেই
জোআরউস ২২ শে

@ জোআরউস ডাউনলোড 8.0.13 ডাউনলোডগুলি.mysql.com/archives/workbench হতে পারে .16 সংস্করণ এটি আবার হবে! যাইহোক আমরা কমান্ড লাইনটি ব্যবহার করি :-)
ফ্রেঞ্চোইস ব্রেটন

আমি @ ডোডিএক্স পরামর্শটি ব্যবহার করে শেষ করেছি। ধন্যবাদ @ ফ্র্যাঙ্কোইস!
জোআরউস

বোকা workaround 8.0.16 শেষ না হওয়া পর্যন্ত: উন্নত বিকল্পে "বল" পরীক্ষা করুন যাতে ত্রুটি উপেক্ষা করা হবে। অবশ্যই এটি অন্য কোনও ত্রুটি উপেক্ষা করবে
বোস্টোন

@ বোস্টোন, এই সমাধানটি ত্রুটিটি ছাড়বে না।
ক্যাস্পার

2

ম্যাকোসের জন্য আপনার "কলাম-পরিসংখ্যান" দেখতে পুরানো সংস্করণ (8.0.13) প্রয়োজন, কারণ আমি 8.0.14 এবং 8.0.15 সংস্করণটি পরীক্ষা করি এবং উভয়ই "কলাম-পরিসংখ্যান" দেখায় না।

সুতরাং, "কলাম-পরিসংখ্যান" সামঞ্জস্য করতে 8.0.13 https://downloads.mysql.com/archives/get/file/mysql-workbench-commune-8.0.13-macos-x86_64.dmg সংস্করণটি ব্যবহার করুন


0

আমার পরিস্থিতিতে আমি ম্যাক-ওএস ব্যবহার করছি। যাইহোক, ফাইলের [mysqldump] column-statistics=0ক্ষেত্রগুলি ছিল my.cnfযা /usr/local/etcডিরেক্টরিতে থাকে। ক্ষেত্রটি মোছার ফলে সমস্যার সমাধান হয়েছে। (নয়: মাইএসকিএল সংস্করণটি 7.7 এবং হোমব্রুয়ের মাধ্যমে ইনস্টল করা হয়েছে)।


0

আমারও একই সমস্যা ছিল, এটি তখন ঘটে যখন আমি অন্যান্য স্কিমা থেকে বিদ্যমান স্কিমে একাধিক ডেটা টেবিলগুলি মার্জ করি এবং মার্জড ডেটা স্ব-অন্তর্ভুক্ত স্ক্রিপ্ট ফাইলটিতে রফতানি করি। আমি কলাম-পরিসংখ্যান = 0 পরিবর্তন করার চেষ্টা করেছি, তবে ফলাফলটি অনুসরণ করা হয়েছিল,

C:\xampp\mysql\bin>mysqldump --column-statistics=0 --host=loalhost --user root --passwod
mysqldump: unknown variable 'column-statistics=0'

সুতরাং আমি সাহায্য না। আমি যে মাইএসকিউএল লগটি পেয়েছি তা বিশ্লেষণ করেছি

2019-01-21 11:31:30 1050 InnoDB: Warning: Using innodb_additional_mem_pool_size is DEPRECATED. This option may be removed in future releases, together with the option innodb_use_sys_malloc and with the InnoDB's internal memory allocator.
2019-01-21 11:31:30 4176 [Note] InnoDB: innodb_empty_free_list_algorithm has been changed to legacy because of small buffer pool size. In order to use backoff, increase buffer pool at least up to 20MB.

এটি ইনোডাব_বাফলার_পুল_সাইজের আকার সম্পর্কে অভিযোগ করে। আমি এটি 24 এমবি করেছিলাম। তারপরে এটি কাজ করে।


0

আমি এক্সএএমপিপি এবং মাইএসকিউএল ওয়ার্কব্যাঞ্চ ব্যবহার করি কোনও সংস্করণ অমিল সম্পর্কে সতর্ক করে। আমি মাইএসকিউএল ওয়ার্কবেঞ্চটি এক্সএএমপিপি-র মাইএসকিএল.এক্সি এবং মাইএসকিএলডাম্প.এক্সে নির্দেশ করার জন্য সেট করেছি।

সম্পাদনা -> পছন্দসমূহ -> প্রশাসনে যান এবং প্রত্যেকের জন্য পথ নির্ধারণ করুন।

এটি কমপক্ষে 8.0.14 সংস্করণের জন্য কাজ করে। তাই অন্যদের জন্য আপনি মাইএসকিএল এবং মাইএসকিএলডাম্পের বান্ডিল সংস্করণটি ব্যবহার এড়াতে চাইতে পারেন।

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