মণি :: mysql2 রত্নের জন্য লোডেরর, তবে এটি ইতিমধ্যে জেমফাইলে রয়েছে


103
Gem::LoadError
Specified 'mysql2' for database adapter, but the gem is not loaded.
Add `gem 'mysql2'` to your Gemfile

নিম্নলিখিত ফাইলগুলি লোড করার সময় এই ত্রুটিটি ঘটেছে:

active_record/base

চলমান রেল সার্ভারে এটিই ত্রুটি।

The mysql2 gem has been added to the Gemfile as well.

আমি করেছি bundle install, এবং সার্ভারটি পুনরায় চালু করার চেষ্টা করেছি কিন্তু তবুও ত্রুটি পেয়েছি ।


আপনি কি bundleরত্ন যুক্ত করে সার্ভারটি পুনরায় চালু করার পরে চালিয়েছেন?
বচন স্মৃতি

@ বাচানস্মৃতি: হ্যাঁ আমি এটি করেছি।
মাইসোলিসিনসৌল

এটি কি মোতায়েন হয়? আপনি কি bundle install --deployment
চালিয়েছেন

উত্তর:


247

রেলগুলিতে আপগ্রেড করার সময় আপনার যদি এই ত্রুটি থাকে তবে 4.2.4 (রেলও 4.1.5 সহ) মাইএসকিএল 2 এর এই সংস্করণটি ব্যবহার করার চেষ্টা করুন:

gem 'mysql2', '~> 0.3.18'

স্পষ্টতই mysql2 এখনও রেলের নতুন সংস্করণের সাথে সামঞ্জস্যপূর্ণ নয় কারণ রেল 2.২.৪ আমার পক্ষে এই প্রশ্নের উত্তর দেওয়ার সময় হিসাবে ৮ ই সেপ্টেম্বর ২০১৫ তাই নতুন রচনাটি আপনার জহরত ফাইলটিতে ব্যবহার করুন এবং চালান:

bundle install 

আপনার যেতে ভাল হওয়া উচিত


2
msyql2_adapter.rb এ, আমি নীচের কোডগুলি পেয়েছি: রত্ন 'mysql2', '0.3> 0.3.13' এর জন্য 'মাইএসকিএল 2' প্রয়োজন কারণ ডিফল্ট মাইএসকিএল 2 সংস্করণ 4.xx কাজ করবে না
অস্কার জিয়াং

27

এটি আমার জন্য কাজ করেছিল যখন আমি নতুনটির (0.4.0) এর আগে একটি মাইএসকিএল 2 রত্ন সংস্করণ নির্দিষ্ট করেছিলাম। কোনও কারণে রেলস 4.2.4 এবং সেই মণি 0.4.0 নিয়ে সমস্যা রয়েছে। সুতরাং, সমস্যা সমাধানের জন্য আমি প্রকাশিত পূর্ববর্তী রত্নটিকে সুনির্দিষ্টভাবে উল্লেখ করেছি: 0.3.20 এবং এটি আমার পক্ষে ভাল কাজ করেছে!

gem 'mysql2', '~> 0.3.20'
bundle install

আপনি এখানে সমস্ত রত্ন সংস্করণ চেক করতে পারেন: https://rubygems.org/gems/mysql2/versions


16

পরিবর্তন

gem 'mysql2', '~> 0.3.18'

আপনার রত্ন

অফিসিয়াল মাইএসকিএল 2 গিথুব এই থ্রেডটি এটি করতে বলে। আপনি যদি সংস্করণ 4.XX রেল হন তবে আপনাকে সেই সংস্করণ নম্বরটি ঘোষণা করতে হবে

https://github.com/brianmario/mysql2/issues/675

তারপরে দৌড়াও bundle update mysql2


2
ধন্যবাদ! সুনির্দিষ্টভাবে বলতে গেলে, আপনি চান না bundle updateকারণ এটি আপনার সমস্ত রত্ন আপডেট করবে। কমান্ডটি হ'ল bundle update mysql2। সুস্পষ্ট মনে হতে পারে তবে এটি ভুল আদেশ এবং এর অনিচ্ছাকৃত পরিণতি হতে পারে। (থেকে ফিরে যেতে bundle update, চালানো git checkout -- Gemfile.lock)
নিক

8

রেল ৪.১ এ আপগ্রেড করার পরেও আমি একই ত্রুটি পেয়েছি এবং মাইএসকিএল 2 আপডেট করে এটি সমাধান করতে পেরেছি। আপনার রেল অ্যাপ্লিকেশন ফোল্ডারে এটি চালান:

$ bundle update mysql2

8

এই সমস্যাটি ঘটতে পারে যদি আপনি রেল> 4 এর নতুন সংস্করণ ব্যবহার করেন

এই দুটি সহজ পদক্ষেপটি করুন, এটি কার্যকর হবে। আপনার রত্নটি খুলুন এবং নীচের লাইনটি সন্ধান করুন

gem 'mysql2'

নীচের মত নির্দিষ্ট মাইএসকিএল সংস্করণ দিয়ে সেই লাইনটি প্রতিস্থাপন করুন

gem 'mysql2', '~> 0.3.18'

এখন সার্ভারটি বন্ধ করুন এবং বান্ডিলটি চালান

bundle install

এখন আপনার সার্ভারটি পুনরায় চালু করুন। এটি কাজ করা উচিত.

rails s

7

রুবিতে প্রারম্ভিক হওয়াতে আমি 'মাইএসকিএল 2', '0.3> 0.3.18' লাইনটি খুঁজে বের করতে পারি না

এর অর্থ হ'ল আপনার রেল প্রকল্প ফোল্ডারে যান এবং তারপরে মাইএসকিএল 2 এর লাইন থাকবে এটি 0.4 * এর মতো হবে যাতে আপনি এটিকে 'মাইএসকিএল 2', '0.3> 0.3.18' এ পরিবর্তন করতে পারেন

এবং যেমন আমাদের নতুন সংজ্ঞা রয়েছে, উপরের বান্ডিল ইনস্টল হিসাবে বর্ণিত সহজ কমান্ডটি করার জন্য আমাদের নির্ভরতা পুনর্নির্মাণ করতে হবে


5

এটি mysql2 মণি লোড করে না কারণ mysql2 (0.4.1) রত্নের নতুন সংস্করণটি mysql2_adaptor লোড করতে অক্ষম। এটি আমার জন্য কাজ করছে।

gem 'mysql2', '~> 0.3.13'

এবং চালান

bundle install

2

আমার একই ত্রুটি ছিল এবং এটি কারণ হ'ল রেলস 4.1 এর সর্বনিম্ন মাইএসকিএল 2 সংস্করণ 0.3.13 প্রয়োজন, এবং উইন্ডোজের সাথে সর্বাধিক সামঞ্জস্যপূর্ণ সংস্করণ 0.3.11।

তাই আমি ফাইল সম্পাদিত c:\RailsInstaller\Ruby1.9.3\lib\ruby\gems\1.9.1\gems\activerecord-4.1.1\lib\active_record\connection_adapters\mysql2_adapter.rbএবং লাইন পরিবর্তিত gem 'mysql2', '~> 0.3.13'করতে gem 'mysql2', '~> 0.3.11', এবং এটি এখন পর্যন্ত কাজ করে।



1

এটি mysql2 রত্নটি লোড করে না কারণ mysql2 (> = 0.4.0) রত্নটির নতুন সংস্করণ mysql2_adaptor লোড করতে অক্ষম। আপনি এটি চেষ্টা করতে পারেন?

gem 'mysql2', '~> 0.3.13'

আশা করি, এটি কাজ করা উচিত।


0

আমি সমস্যাটি সমাধান করে, মাইএসকিএল 2 রত্ন স্থানীয় (মণি ইনস্টল মাইএসকিএল 2, বান্ডেল ইনস্টল) ইনস্টল করে নিচের লাইনটি জেমফাইলে যুক্ত করেছি:

gem 'mysql2'

ডাটাবেস.আইএমএলে মাইএসকিএল 2 অ্যাডাপ্টার সেট করা হচ্ছে

adapter: mysql2

গুরুত্বপূর্ণ ছিল!


0

আমি রেলগুলিকে রেলস এবং ওয়েবসাইটগুলিতে নতুন করে চমকে দিচ্ছি তবে আমার জন্য কী কাজ করেছে তা শুনে।

আমাকে আমার রত্ন ফাইল, জহর 'mysql2' রত্ন 'mysql2' তে পরিবর্তন করতে হয়েছিল, '0.3> 0.3.13' এর পরে রেলগুলিতে আমি বান্ডিল ইনস্টল টাইপ করেছি তখন আমি রেলের চেষ্টা করেছি এবং ত্রুটি পেয়েছি তাই আমি বান্ডিল আপডেট mysql2 চেষ্টা করে রেল টাইপ করেছি রেল গুলি, এবং এটি কাজ করে


0

আমি libmysqlclient-dev ইনস্টল করে সমস্যার সমাধান করেছি। sudo প্রবণতা libmysqlclient-dev ইনস্টল করুন এবং পরে বান্ডেল চালান।


-1

আমি এর আগে মাইএসকিএল 2 0.4.5 ইনস্টল করেছি তবে এটি আমাকে এই ত্রুটিটি দিচ্ছিল তাই আমি মাইএসকিএল 2 এর অন্য সংস্করণটি ইনস্টল করেছি:

মণি ইনস্টল mysql2 - রূপান্তর 0.3.20

আশা করি এটি আপনার সমস্যার সমাধান করে।

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