পাইথন 3 ব্যবহারকারীদের জন্য আপডেট:
আপনি conda install mysqlclient
মাইএসকিউএলডিবি বর্তমানে বিদ্যমান লাইব্রেরি বিদ্যমান হিসাবে ইনস্টল করতে ব্যবহার করতে পারেন। নিম্নলিখিত SO প্রশ্নটি একটি সহায়ক ক্লু ছিল: পাইথন 3 ইম্পোর্টেরর: 'কনফিগার পার্সার' নামে কোনও মডিউল নেই । Mysqlclient ইনস্টল করা mysqlclient, mysql-সংযোজক এবং llvmdev ইনস্টল করবে (কমপক্ষে, এটি আমার মেশিনে এই 3 টি গ্রন্থাগার ইনস্টল করেছে)।
এই সমস্যাটি নিয়ে আমার অভিজ্ঞতার গল্পটি এখানে। আপনার যদি সমস্যাটির আরও ভাল অভিজ্ঞতা থাকে তবে এটি সম্পাদিত বা জেনারেলাইজড দেখতে ভাল লাগবে ... এইরকম ম্যাজিকের কিছুটা প্রয়োগ করুন।
দ্রষ্টব্য: পরবর্তী অনুচ্ছেদে মন্তব্যগুলি স্নো চিতাবাঘের ক্ষেত্রে প্রয়োগ হয়েছে, তবে সিংহের নয়, যার জন্য 64৪-বিট মাইএসকিউএল প্রয়োজন বলে মনে হচ্ছে
প্রথমত, মাইএসকিউএলডিবির লেখক (এখনও?) এখানে বলেছেন যে সবচেয়ে মারাত্মক সমস্যা হ'ল ওএস এক্স পাইথনের 32 বিট সংস্করণ সহ ইনস্টল করা হয়েছে তবে বেশিরভাগ গড় জোকস (আমার অন্তর্ভুক্ত) সম্ভবত 64৪ বিট সংস্করণ ইনস্টল করতে ঝাঁপিয়ে পড়েছে মাইএসকিউএল এর। খারাপ পদক্ষেপ ... যদি আপনি এটি ইনস্টল করে থাকেন তবে 64 বিট সংস্করণটি সরিয়ে ফেলুন (এই ফিডলি টাস্কের নির্দেশাবলী এখানে এসও তে উপলব্ধ ), তারপরে 32 বিট সংস্করণটি ডাউনলোড করুন এবং প্যাকেজটি এখানে ইনস্টল করুন )
মাইএসকিউএলডি লাইব্রেরিগুলি কীভাবে তৈরি এবং ইনস্টল করতে হয় সে সম্পর্কে অসংখ্য ধাপে ধাপে রয়েছে। তাদের প্রায়শই সূক্ষ্ম পার্থক্য থাকে। এটি আমার কাছে সর্বাধিক জনপ্রিয় বলে মনে হয়েছিল এবং কাজের সমাধান সরবরাহ করেছে। আমি নীচে কয়েকটি সম্পাদনা করে এটি পুনরুত্পাদন করেছি
পদক্ষেপ 0:
আমি শুরু করার আগে, আমি ধরে নিই যে আপনি ম্যাকের সাথে মাইএসকিউএল, পাইথন এবং জিসিসি ইনস্টল করেছেন।
পদক্ষেপ 1: সোর্সফোর্স থেকে পাইথন অ্যাডাপ্টারের জন্য
সর্বশেষতম মাইএসকিউএল ডাউনলোড করুন ।
পদক্ষেপ 2:
আপনার ডাউনলোড করা প্যাকেজটি বের করুন:
tar xzvf MySQL-python-1.2.2.tar.gz
পদক্ষেপ 3:
ফোল্ডারের ভিতরে, প্যাকেজটি পরিষ্কার করুন:
sudo python setup.py clean
অতিরিক্ত পদক্ষেপের যুগল, ( এই মন্তব্য থেকে )
পদক্ষেপ 3 বি:
আপনার মাইএসকিউএল-পাইথন -১.২.২ / বিল্ড / * ডিরেক্টরিতে সমস্ত কিছু মুছে ফেলুন - এটি করার জন্য "পাইথন সেটআপ.পি ক্লিন" বিশ্বাস করবেন না it
পদক্ষেপ 3 সি:
ব্যবহারকারী / $ USER / .Python- ডিমের অধীনে ডিমটি সরান
পদক্ষেপ 4:
মূলত _mysql.c সম্পাদনা প্রয়োজন, তবে এখন আর লম্বা দরকার নেই। মাইএসকিউএলডিবি সম্প্রদায় এখন এই বাগটি ঠিক করেছে বলে মনে হচ্ছে।
পদক্ষেপ 5:
মাইএসকিএল নামে একটি উপ-ডিরেক্টরিতে নির্দেশ করতে lib এর অধীনে একটি প্রতীকী লিঙ্ক তৈরি করুন। সংকলনের সময় এটি যেখানে এটি সন্ধান করে।
sudo ln -s /usr/local/mysql/lib /usr/local/mysql/lib/mysql
পদক্ষেপ
:: setup_posix.py সম্পাদনা করুন এবং নিম্নলিখিতটি পরিবর্তন করুন
mysql_config.path = "mysql_config"
প্রতি
mysql_config.path = "/ usr / স্থানীয় / mysql / বিন / mysql_config"
পদক্ষেপ::
একই ডিরেক্টরিতে, আপনার প্যাকেজটি পুনর্নির্মাণ করুন (এটি দিয়ে আসা সতর্কতাগুলি উপেক্ষা করুন)
sudo python setup.py build
পদক্ষেপ 8:
প্যাকেজ ইনস্টল করুন এবং আপনার কাজ শেষ।
sudo python setup.py install
পদক্ষেপ 9:
এটি কাজ করছে কিনা তা পরীক্ষা করুন। আপনি মাইএসকিউএলডিবি আমদানি করতে পারলে এটি কাজ করে।
python
>>> import MySQLdb
পদক্ষেপ 10:
যদি আমদানির চেষ্টা করার পরে আপনি এমন একটি অভিযোগের ত্রুটি পেয়েছেন যা Library not loaded: libmysqlclient.18.dylib
শেষ হচ্ছে: Reason: image not found
আপনার একটি অতিরিক্ত সিমলিংক তৈরি করতে হবে যা হ'ল:
sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
তারপরে আপনার import MySQLdb
কোনও ত্রুটি ছাড়াই সক্ষম হওয়া উচিত ।
তবে একটি চূড়ান্ত হিক্কাপটি হ'ল আপনি যদি বিল্ড ডিরেক্টরি থেকে পাইথন শুরু করেন তবে আপনি এই ত্রুটিটি পাবেন:
/ লাইব্রেরি / পাইথন / ২.৫ / সাইট-প্যাকেজ / মাইএসকিউএল_পাইথন ১.২.৩c1-py2.5-macosx-10.5-i386.egg/_mysql.py:3: ব্যবহারকারী সতর্কতা: মডিউল _মাইএসকিএল ইতিমধ্যে / লাইব্রেরি / পাইথন / ২.৫/২ থেকে আমদানি করা হয়েছিল সাইট-প্যাকেজস / মাইএসকিউএল_পিথন -১.২.৩c1-পাই -২.৫-ম্যাকোসেক্স-১০.৫-আই 386.egg / _mysql.pyc, কিন্তু এক্সএক্সএক্সএক্স / মাইএসকিউএল-পাইথন -২.২.৩c1 সিএস.প্যাথে যুক্ত করা হচ্ছে
এটি গুগলের পক্ষে বেশ সহজ, তবে আপনি যে ঝামেলাটি বাঁচাতে পারেন তা এখানেই শেষ হয়ে যাবে (বা সম্ভবত নয় ... ভবিষ্যতের প্রুফ ইউআরএল নয়) এবং নির্ধারণ করতে হবে যে আপনাকে cd ..
বিল্ড ডিরেক্টরি থেকে বেরিয়ে আসতে হবে এবং ত্রুটিটি অদৃশ্য হয়ে যাবে।
আমি উপরে যেমন লিখেছি, আমি এই উত্তরটি সাধারণীকরণ দেখতে দেখতে পছন্দ করব, কারণ এই ভয়াবহ সমস্যার অন্যান্য অনেকগুলি নির্দিষ্ট অভিজ্ঞতা রয়েছে। দূরে সম্পাদনা করুন, বা আপনার নিজের ভাল উত্তর প্রদান করুন।