পাসওয়ার্ড প্রম্পট ছাড়াই উবুন্টুতে মাইএসকিউএল ইনস্টল করুন


305

উবুন্টুতে মাইএসকিউএল সার্ভার ইনস্টল করার জন্য আমি কীভাবে স্ক্রিপ্ট লিখব?

sudo apt-get install mysql ইনস্টল হবে তবে কনসোলে প্রবেশ করার জন্য এটি একটি পাসওয়ার্ডও চাইবে।

আমি কীভাবে এটি একটি অ-ইন্টারেক্টিভ উপায়ে করব? অর্থাৎ, এমন কোনও স্ক্রিপ্ট লিখুন যা পাসওয়ার্ড সরবরাহ করতে পারে?

#!/bin/bash
sudo apt-get install mysql  # To install MySQL server

# How to write script for assigning password to MySQL root user
# End

উত্তর:


431
sudo debconf-set-selections <<< 'mysql-server mysql-server/root_password password your_password'
sudo debconf-set-selections <<< 'mysql-server mysql-server/root_password_again password your_password'
sudo apt-get -y install mysql-server

নির্দিষ্ট সংস্করণগুলির জন্য, যেমন mysql-server-5.6, আপনাকে এই জাতীয় সংস্করণটি নির্দিষ্ট করতে হবে:

sudo debconf-set-selections <<< 'mysql-server-5.6 mysql-server/root_password password your_password'
sudo debconf-set-selections <<< 'mysql-server-5.6 mysql-server/root_password_again password your_password'
sudo apt-get -y install mysql-server-5.6

Mysql- সম্প্রদায়-সার্ভারের জন্য, কীগুলি কিছুটা পৃথক:

sudo debconf-set-selections <<< 'mysql-community-server mysql-community-server/root-pass password your_password'
sudo debconf-set-selections <<< 'mysql-community-server mysql-community-server/re-root-pass password your_password'
sudo apt-get -y install mysql-community-server

আপনার_পাসওয়ার্ডটি পছন্দসই রুট পাসওয়ার্ডের সাথে প্রতিস্থাপন করুন। (মনে হচ্ছে আপনার_পাসওয়ার্ডটি ফাঁকা মূল পাসওয়ার্ডের জন্যও ফাঁকা রাখা যেতে পারে))

যদি আপনার শেলটি এখানে স্ট্রিংগুলি সমর্থন করে না ( zsh , ksh93 এবং ব্যাশ তাদের সমর্থন করে), ব্যবহার করুন:

echo ... | sudo debconf-set-selections 

1
mysql-server-5.1অংশটি বর্তমান মাইএসকিএল সংস্করণে পরিবর্তন করতে ভুলবেন না !
ডিন

19
এই উত্তরটি প্রতিস্থাপনের mysql-server-<version>মাধ্যমে নীচে মারিয়াডিবিতে অনুবাদ করে maria-db-<server>। নিম্নলিখিত ঘটনাটি mysql-server/ অপরিবর্তিত রয়েছে
লুক্স

5
- <রূপান্তর> অংশটি অপ্রয়োজনীয় - আমার জন্য কবজির মতো কাজ করে এবং এটি ছাড়া আরও জেনেরিক।
msztolcman

2
এটি পরে কাজ করেsudo apt-get install debconf-utils
নাজিন

4
মারিয়াডিবির জন্য লুক্স, প্যাকেজটি মারিয়্যাডবি-সার্ভার, মারিয়া-ডিবি-সার্ভার নয়। যাইহোক নোটের জন্য ধন্যবাদ।
ইয়র্নিয়ার

238

এই কৌতুক করতে হবে

export DEBIAN_FRONTEND=noninteractive
sudo -E apt-get -q -y install mysql-server

অবশ্যই এটি আপনাকে ফাঁকা রুট পাসওয়ার্ড সহ ছেড়ে দেয় - সুতরাং আপনি এর মতো কিছু চালাতে চাইবেন

mysqladmin -u root password mysecretpasswordgoeshere

পরে অ্যাকাউন্টে একটি পাসওয়ার্ড যুক্ত করুন।


3
মাইএসকিউএল 5.5 এর সাথে নতুন উবুন্টু 12.04 ইনস্ট্যান্সে পরীক্ষিত এবং কাজ করছেন
আলবার্তো মেগিয়া

21
আপনি যদি সুডোর সাথে ইনস্টল করছেন তবে -E ব্যবহার করুন যাতে পরিবেশের ভেরিয়েবলটি পাশ হয়ে যায়। যেমন। sudo -E apt-get -q -y মাইএসকিএল-সার্ভার ইনস্টল করুন।
প্যাট্রিক কুলেন

35
আপনি env ভেরিয়েবলটি সরাসরি কমান্ডের মধ্যে (বাহ্যিক পরিবেশকে দূষিত না করে) এটিকে DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-server
চালিয়ে রেখে যোগ করতে

2
এইভাবে করার পরে মাইএসকিএল পাসওয়ার্ডটি ব্যাশ লগে সংরক্ষণ করা হবে।
ডাটগ্রিফ

3
ডেবিয়ান ৮.২-এ আমার জন্য পরিশ্রম করেছেন - আমি @ পেট্রিকক্লেন এবং @ ইউনিলাভি থেকে একত্রিত হয়ে DEBIAN_FRONTEND=noninteractive sudo -E apt-get -q -y install mysql-serverমনোমুগ্ধকর মত কাজ করলাম!
মফিনTheম্যান

31

এটিকে কাজ করার আরেকটি উপায়:

echo "mysql-server-5.5 mysql-server/root_password password root" | debconf-set-selections
echo "mysql-server-5.5 mysql-server/root_password_again password root" | debconf-set-selections
apt-get -y install mysql-server-5.5

নোট করুন যে এটি কেবল পাসওয়ার্ডটিকে "রুট" এ সেট করে। আমি সহজ কোট ব্যবহার করে ফাঁকা পাসওয়ার্ড সেট করতে পারি না '', তবে এই সমাধানটি আমার পক্ষে যথেষ্ট ছিল।

এখানে একটি সমাধান উপর ভিত্তি করে ।


1
প্রতিধ্বনি 'mysql-server-5.5 mysql-server / root_password password' | sudo debconf-set-Seferences আমার জন্য ফাঁকা পাসওয়ার্ড নির্দিষ্ট করতে কাজ করে works
সুনিও ইয়োশিওকা

4
@ সুনিওয়োশিওকা আমার পক্ষে কাজ করে না। যদি আমি শেষে দুটি স্পেস রাখি তবে এটি আমার পাসওয়ার্ডটি একটি একক জায়গায় সেট করে। একটি স্পেস সহ এটি এখনও প্রম্পট দেওয়ার চেষ্টা করে এবং তারপরে ইনস্টলেশনটিকে স্ক্রু করে দেয়।
এমপেন

3

ব্যবহার করুন:

sudo DEBIAN_FRONTEND=noninteractive apt-get install -y mysql-server

sudo mysql -h127.0.0.1 -P3306 -uroot -e"UPDATE mysql.user SET password = PASSWORD('yourpassword') WHERE user = 'root'"

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