আমি কীভাবে অ্যাপটি-গেট ব্যবহার করে ডেবিয়ানে মাইএসকিউএল আপগ্রেড করতে পারি?


13

আমি টার্নকি লিনাক্স ভার্চুয়াল মেশিন ব্যবহার করছি। সেখানে দেবিয়ান সংস্করণটি স্পষ্টতই "হুইজি" আপগ্রেডের পথে রয়েছে (যদি আপনি এটি বলে থাকেন)। লিনাক্সের সাথে আমি পুরোপুরি আরামদায়ক নই, আপনি দেখতে পাচ্ছেন।

আমার কিছু নতুন বৈশিষ্ট্য দরকার যা মাইএসকিউএল 5.6 সরবরাহ করে, যখন আমার বর্তমান ইনস্টলেশনটি মাইএসকিউএল 5.5.35। আমি সর্বশেষতম সংস্করণ (এই পোস্টিং হিসাবে 5.6.17) বা কমপক্ষে 5.6.x পেতে চাই

আমি চেষ্টা করেছি apt-get update, apt-get upgrade, apt-get dist-upgrade। এগুলি সফলভাবে একগুচ্ছ জিনিস আপডেট করেছে তবে মাইএসকিউএল কিছুই ছিল না। আমি চেষ্টা করেছি apt-get upgrade mysql-server, যা বলেছে যে আমার কাছে ইতিমধ্যে সর্বশেষতম সংস্করণ রয়েছে।

ওয়েবে একটি ডেবিয়ান হুইজি প্যাকেজ সংগ্রহস্থলের তালিকায় মাইএসকিউএল 5.5 প্রদর্শন করা হয়, যখন আমার 5.6 প্রয়োজন হয়। তারপরে আমি "ব্যাকপোর্টগুলি" সম্পর্কে কিছু পড়েছি, যা শুনে মনে হচ্ছে এটি আমার বিশেষ ডেবিয়ানের কাছে এখনও পাওয়া জিনিসগুলি পেতে সক্ষম হতে পারে - তবে আমি এটি কাজ করে দেখছি না। এটিতে লাইন যুক্ত করা দরকার /etc/apt/sources.list.d/sources.list। আমি যখন এটি করার চেষ্টা করি, তখন দৌড়াতে apt-get update, আমি 404 ত্রুটি পাই।

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

আমি কীভাবে এটি করা হয় তা নিয়ে ইতিবাচকভাবেই হতবাক হয়েছি। ফোরাম / ব্লগের তালিকাভুক্ত বেশিরভাগ ইউআরএল apt-getএবং এমনকি এর জন্য wget, পোস্ট হওয়ার পরে খুব শীঘ্রই মারা যাবে বলে মনে হয়, তাই কেউ বুঝতে পারে না যে কীভাবে সঠিক তথ্য সন্ধান করার ক্ষেত্রে কীভাবে যায়। আমি এখনই সরাসরি দু'দিন ধরে এটি করার চেষ্টা করেছি এবং কোথাও পাচ্ছি না।

সুতরাং ধরে নিই যে আপনি এখন পর্যন্ত পড়েছেন, আমি জানতে আগ্রহী যে কারও কারও কাছে অপেক্ষাকৃত ব্যথাহীন স্বয়ংক্রিয় পদ্ধতিতে মাইএসকিউএল আপগ্রেড করার কোনও উপায় রয়েছে (যেখানে makeআমার বর্তমান ডাটাবেসগুলি এবং কনফিগারেশনগুলি নিজেই ব্যবহার বা রফতানি / আমদানি করতে হবে না) )।


পরীক্ষা / অস্থির / পরীক্ষামূলক থেকে একটি ব্যাকপোর্ট করুন। দেখুন ডেবিয়ান যা সরবরাহ করে তার থেকে আমি কীভাবে আরও সাম্প্রতিক সংস্করণ ইনস্টল করতে পারি? । আরও ভাল, PostgreSQL ব্যবহার করুন, যার ইতিমধ্যে ব্যাকপোর্ট রয়েছে। আপনি লেখেন "এর জন্য /etc/apt/sources.list.d/source.list- এ লাইন যুক্ত করা দরকার When আপনি যদি সহায়তা চান তবে এ সম্পর্কে আপনাকে আরও বিশদ যুক্ত করতে হবে।
ফাহিম মিঠা

@FheemMitha কৌতূহলের বাইরে, আপনি এই পোস্টগ্র্যাস্কল ব্যাকপোর্টগুলি কোথায় পাবেন? আমার এক ধরণের নতুন সংস্করণ এবং slonyক্ষমতা প্রয়োজন এবং আমি 9.1 এর চেয়ে নতুন খুঁজে পাইনি, যার মধ্যে কমতি নেই।
শাদুর

@ শাদুর: "পোস্টগ্র্যাসকিএল ডিবিয়ান ব্যাকপোর্টগুলি" সন্ধান করুন। আমার মনে হয় আপনি যা চান তা হ'ল postgresql.org/download/linux/debian । প্রায়শই আপনি ব্যাকপোর্টগুলি.ডেবিয়ান.আর.আর্গ থেকে ব্যাকপোর্টগুলি পেতে পারেন তবে মনে হয় বর্তমানে সেগুলি সেগুলি থেকে পাওয়া যায় না।
ফাহিম মিঠা

@ ফাহিমমিঠা আমি পুরো ত্রুটিটি পেস্ট করব তবে আমার আর তা নেই এবং আমি নিশ্চিত নই যে ব্যাকপোর্টের ইউআরএলগুলি আমি কোথায় ব্যবহার করেছি where তবুও যদি আপনি কোনও কার্যকারী লাইনের কথা জানেন তবে আমি আমার সোর্সগুলিতে প্লাগ করতে পারি back ব্যাকপোর্টগুলির জন্য তালিকা, আমি এটি চেষ্টা করতে পছন্দ করব। পুনশ্চ. দুর্ভাগ্যক্রমে, এই মুহুর্তে অন্য কোনও ডাটাবেস প্ল্যাটফর্মে স্যুইচ করা আমার পক্ষে সত্যিই একটি বিকল্প নয়।
সমমানের

@Equazcion আমার প্রস্তাবটি একটি DIY সমাধান। টেবিং (বা অস্থির বা পরীক্ষামূলক) থেকে দেবিয়ান উত্সগুলি আনুন এবং সেগুলি আপনার নিজের ডেবিয়ান প্যাকেজগুলিতে পুনর্নির্মাণ করুন। এটি সত্যই তেমন কঠিন নয় এবং মাইএসকিউএল-এর নির্ভরতাগুলি সমাধান করার পক্ষে শক্তির সম্ভাবনা নেই। আমি যে উত্তরটির সাথে লিঙ্ক করেছি তার মূল পদক্ষেপগুলি ব্যাখ্যা করি। আপনি কি এটি তাকান?
ফাহিম মিঠা

উত্তর:


4

হুইজি পরীক্ষামূলক থেকে 5.5 মাইএসকিউএল উত্সকে পুনর্নির্মাণ করা তুচ্ছ সহজভাবে সীমাবদ্ধ। তবে, আপনার প্রচুর ডিস্ক স্পেস প্রয়োজন হবে; বিল্ডটি সমাপ্ত হওয়ার পরে, বিল্ড ডিরেক্টরিটি 5.2 জিবি ব্যবহার করছিল। এছাড়াও, এটি তৈরি করতে কিছুটা সময় নেয় এবং অবিশ্বাস্য সংখ্যক পরীক্ষা চালায়। আমি এটি সময় দেওয়ার জন্য মাথা ঘামাইনি, তবে কয়েক ঘন্টার জন্য অনুমতি দিন। পরীক্ষাগুলি অক্ষম করা সম্ভব, তবে আমি তাদের চালিয়ে দেওয়ার পরামর্শ দিই - যতক্ষণ তারা পাশ করবে ততক্ষণ এটি নির্দোষ। তারা আমার মেশিনে করেছে। সুসংবাদটি হ'ল আমি হতাশায় এটি তৈরি এবং ইনস্টল করতে সক্ষম হয়েছি। আমি নিম্নলিখিত বেসিক পরীক্ষা চালানো।

faheem@orwell:~$ mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 50
Server version: 5.6.16-1~exp1 (Debian)

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

সুতরাং, আমি কমপক্ষে সার্ভারের সাথে সংযোগ করতে পারি। প্যাকেজগুলি ইনস্টলের মতো দেখতে এখানে রয়েছে:

$ dpkg -l | grep mysql

ii  libdbd-mysql-perl                     4.021-1+b1              amd64                   Perl5 database interface to the MySQL database
ii  libmysqlclient18:amd64                5.5.35+dfsg-0+wheezy1   amd64                   MySQL database client library
ii  libqt4-sql-mysql:amd64                4:4.8.2+dfsg-11         amd64                   Qt 4 MySQL database driver
ii  mysql-client-5.6                      5.6.16-1~exp1           amd64                   MySQL database client binaries
ii  mysql-client-core-5.6                 5.6.16-1~exp1           amd64                   MySQL database core client binaries
ii  mysql-common                          5.5.35+dfsg-0+wheezy1   all                     MySQL database common files, e.g. /etc/mysql/my.cnf
ii  mysql-common-5.6                      5.6.16-1~exp1           all                     MySQL 5.6 specific common files, e.g. /etc/mysql/conf.d/my-5.6.cnf
ii  mysql-server-5.6                      5.6.16-1~exp1           amd64                   MySQL database server binaries and system database setup
ii  mysql-server-core-5.6                 5.6.16-1~exp1           amd64                   MySQL database server binaries
ii  python-mysqldb                        1.2.3-2                 amd64                   Python interface to MySQL

পদক্ষেপগুলির একটি ব্রেকডাউন এখানে।

  1. আপনার যদি হুইজি মাইএসকিউএল 5.5 প্যাকেজ ইনস্টল করা থাকে তবে সেগুলি সরিয়ে ফেলুন, তারা কেবল পরে সমস্যার কারণ হবে। যদি এর উপর নির্ভর করে এমন কোনও প্যাকেজ থাকে তবে সেগুলিও যেতে হবে।
  2. প্রথমে উত্সগুলি পান। আপনাকে এতে নিম্নলিখিতগুলি যুক্ত করতে হবে (বা অনুরূপ, আপনার পছন্দসই সার্ভারের জন্য সামঞ্জস্য করুন) /etc/apt/sources.list:

    deb-src http://debian.lcs.mit.edu/debian/ experimental main non-free contrib
    
  3. এছাড়াও নিম্নলিখিত যোগ করুন /etc/apt/preferences

    Package: *
    Pin: release a=experimental
    Pin-Priority: 1
    
  4. তারপরে দৌড়াও

    apt-get update
    
  5. তারপরে দৌড়াও

    apt-get source mysql-5.6
    

    কিছু উপযুক্ত ডিরেক্টরিতে। আমি সাধারণত মধ্যে একটি ডিরেক্টরি নির্মাণ /usr/local/src,
    এই ক্ষেত্রে, বলতে /usr/local/src/mysql

  6. তারপরে সিডিতে /usr/local/src/mysql

  7. চালান

    sudo apt-get build-dep mysql-5.6
    

    আমার মেশিনে এটি বেশ কয়েকটি প্যাকেজ ইনস্টল করেছে।

  8. বিল্ডিংয়ের জন্য কিছু বেসিক প্যাকেজ ইনস্টল করুন।

    apt-get install build-essential devscripts fakeroot
    

    তারপরে ফলাফল উত্স ডিরেক্টরিতে সিডি করুন /usr/local/src/mysql/mysql-5.6- 5.6.16এবং রান করুন

    debuild -uc -us
    

    এটি তৈরি করতে কিছু সময় লাগবে। কিছু ক্ষেত্রে
    সংস্করণ সংখ্যা বৃদ্ধি করা ভাল ধারণা , তবে এটি এখানে সত্যিই প্রয়োজনীয় নয়। যেহেতু এটি অন্য কোনও মাইএসকিউএল 5.6 প্যাকেজ হুইয়ে প্রবেশের সম্ভাবনা কম।

    আপনি যদি পরীক্ষাগুলি চালাতে না চান তবে আপনি পরিবর্তে এটি ব্যবহার করতে পারেন

    DEB_BUILD_OPTIONS="nocheck" debuild -uc -us
    
  9. এখন আপনার libdbd-mysql-perl ইনস্টল করা উচিত যা মাইএসকিএল প্যাকেজগুলির একটি রানটাইম নির্ভরতা।

     apt-get install libdbd-mysql-perl
    
  10. তারপরে সিডি করুন এক স্তর পর্যন্ত /usr/local/src/mysql। কিছু ডিবে প্যাকেজ থাকতে হবে। আপনি অন্তত ইনস্টল করতে চাইবেন

     mysql-client-core-5.6_5.6.16-1~exp1_amd64.deb         
     mysql-common-5.6_5.6.16-1~exp1_all.deb           
     mysql-server-5.6_5.6.16-1~exp1_amd64.deb
     mysql-client-5.6_5.6.16-1~exp1_amd64.deb  
     mysql-server-core-5.6_5.6.16-1~exp1_amd64.deb
    

    এটি উদাহরণস্বরূপ চালানো দ্বারা করা যেতে পারে:

     dpkg -i mysql-client-core-5.6_5.6.16-1~exp1_amd64.deb         
     mysql-common-5.6_5.6.16-1~exp1_all.deb           
     mysql-server-5.6_5.6.16-1~exp1_amd64.deb
     mysql-client-5.6_5.6.16-1~exp1_amd64.deb  
     mysql-server-core-5.6_5.6.16-1~exp1_amd64.deb
    

প্রথমত, এর জন্য আপনাকে ধন্যবাদ এবং আপনি যে সমস্ত প্রয়াস thanksুকিয়ে রেখেছেন তা 8 ধাপে এটি ব্যর্থ হয়েছে। আমার মনে হয় এগুলি / ডেবিয়ান / পাথগুলি নেই: dpkg-buildpackage: host architecture amd64 fakeroot debian/rules clean Can't exec "fakeroot": No such file or directory at /usr/bin/dpkg-buildpackage line 510. dpkg-buildpackage: error: fakeroot debian/rules clean failed with unknown exit code -1 debuild: fatal error at line 1357: dpkg-buildpackage -rfakeroot -D -us -uc failed আমি টার্নকি লিনাক্সে এটি করছি যা আমি মনে করি এলএএমপি ব্যবহার করে, যদি এটি সাহায্য করে।
সমাপ্তি

@Equazcion- এ আপনি ফেককারুট ইনস্টল নাও করতে পারেন। apt-get install fakeroot
ফাহিম মিঠা

Fakeroot ইনস্টল কাজ। চূড়ান্ত পদক্ষেপটি মাইএসকিউএল 5.5 কে ভঙ্গ করে বলে ভুল করেছে। আপনার পরামর্শ অনুসারে আমি 5.5 অপসারণ করতে অবহেলা করেছি, কারণ কীভাবে আমি জানি না এবং এটি আমার বর্তমান ডাটাবেসগুলিতে কীভাবে প্রভাব ফেলবে তা আমি নিশ্চিত ছিলাম না। আমি 5.5 অপসারণের পরে আবার চেষ্টা করার জন্য প্রস্তুত, আপনি যদি আমাকে এটির পদ্ধতিতে কীভাবে করতে চান তা আমার সংস্করণটি নতুন সংস্করণে উপলব্ধ রাখে। আমি জানি আপনি মাইএসকিউএল এর সাথে তেমন পরিচিত নন এবং আপনি ইতিমধ্যে এটিতে বেশ কিছুটা সময় ব্যয় করেছেন। এটি একটি দুর্দান্ত সূচনা ছিল এবং আমি প্রায় গুগল করে কীভাবে বাকীটি করব তা আমি জানতে পারি।
সমমানের

@Equazcion অনুযায়ী dev.mysql.com/doc/refman/5.6/en/… আপনার কেবল mysqldumpডাম্প ফাইলটি আবার ডাম্প ফাইলটি পুনরায় লোড করতে হবে। অবশ্যই আপনার ডাটাবেসগুলি ব্যাক করুন।
ফাহিম মিঠা

সমস্ত পদক্ষেপ পুনরায় না করে এটিকে উদ্ধার করার জন্য পরিচালিত এবং ডাটাবেসগুলি পুনরায় আমদানির প্রয়োজন হয়নি - তারা ইতিমধ্যে সেখানে ছিল। আগ্রহী যে কোনও ব্যক্তির জন্য, আমাকে শেষ পদক্ষেপের আগে করতে হয়েছিল apt-get remove mysql-serverএবং apt-get remove mysql-clientকরতেও হয়েছিল apt-get install libterm-readkey-perl। এছাড়াও, mysql-server-coreশেষ ধাপে ইনস্টল আগে করতে হবে mysql-server। আমি এখন আনুষ্ঠানিকভাবে মাইএসকিউএল 5.6.16 চালাচ্ছি এবং পূর্ণ-পাঠ্য ইনোডিবি অনুসন্ধান সূচকগুলি সফলভাবে পরীক্ষা করেছি (যে কারণে আমার এটির প্রয়োজন ছিল)! ধন্যবাদ, ফাহিম মিঠা আপনি আমার বিচক্ষণতা বাঁচিয়েছেন।
সমাপ্তি

6

বর্তমানে সর্বোত্তম বিকল্পটি হ'ল অফিশিয়াল মাইএসকিউএল এপিটি রেপো ব্যবহার করা যা apt-get upgradeইনস্টলেশনের অনুমতি দেয় ।


এটি সম্ভবত সেরা সমাধান কারণ এটি সংকলক ইনস্টল করার প্রয়োজন হয় না। আরও বোকা-প্রমাণ :)
ক্রিস্টোফার শুল্টজ

এই সমাধানটি আমার পক্ষে কাজ করে। ইনস্টল করার পরে, মাইএসকিএল সার্ভার সংস্করণ নির্বাচন করুন এবং আপগ্রেড করুন apt-get upgrade, তারপরে আমাকে করতে হবে apt-get upgrade mysql-serverএবং মাইএসকিএল-র সহজ আপগ্রেড 5.5 থেকে 5.7 পর্যন্ত করুন। আপগ্রেড করার পরে আপনাকে আবার কনফিগার করতে হবে এবং কার্যকর করতে হবে:mysql_upgrade -u root
ফারমিনে

1

সমস্ত টেস্ট মজা আছে।

  1. .apt-get libaio1 ইনস্টল করুন
  2. গ্রুপেড মাইএসকিএল
  3. useradd -r -g mysql mysql
  4. wget -O mysql-5.6.16-debian6.0-x86_64.deb
  5. http://downloads.mysql.com/archives/mysql-5.6/mysql-5.6.16-debian6.0-x86_64.deb
  6. dpkg -i mysql-5.6.16-debian6.0-x86_64.deb
  7. সিডি / ইউএসআর / স্থানীয়
  8. ln -s /opt/mysql/server-5.6 mysql
  9. সিডি মাইএসকিএল
  10. স্ক্রিপ্ট / mysql_install_db --user = mysql
  11. ডুবানো -আর মূল।
  12. ডাউন -R মাইএসকিএল ডেটা
  13. সিপি সমর্থন ফাইল / mysql.server /etc/init.d/mysql
  14. এমকেডির -পি /etc/mysql/conf.d/
  15. সিপি মাই সিএনএফ / ইত্যাদি / মাইএসকিএল /
  16. প্রতিধ্বনি '
  17. পরিষেবা mysql শুরু
  18. ./bin/mysql_secure_installation

এই এখানে যতক্ষণ না ভাল যাচ্ছে করা (দুঃখিত বিশৃঙ্খলার জন্য, আমি এখানে লাইন ব্রেক সন্নিবেশ করতে কিভাবে জানি না) করলো root@lamp local/mysql# update-rc.d mysql-5.7 defaults: update-rc.d: using dependency based boot sequencing update-rc.d: error: unable to read /etc/init.d/mysql-5.7 root@lamp local/mysql# service mysql start: Starting MySQL [FAIL......[....] The server quit without updating PID file (/opt/mysql/server-5.6/data/lamp.pid). ... failed!
equazcion

/etc/init.d/mysql শুরু করে চেষ্টা করুন বা /etc/init.d/mys এ ট্যাব-ট্যাব টিপতে চেষ্টা করুন এবং এটি শুরু করুন
সিকিউরিটি বিস্ট

@ ইকুয়েসসিওন অভিনন্দন, এখন আপনি আবিষ্কার করেছেন যে কোনও নতুন সংস্করণের জন্য অফিসিয়াল প্যাকেজটি নিয়ে ডেবিয়ানকে মাঝে মাঝে কিছুটা সময় লাগে কেন।
শাদুর
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.