উত্তর:
তিন (3) বিকল্প
বিকল্প 1: মাইএসকিএল ক্লায়েন্টের মধ্যে থেকে
mysql -uroot -A -e"SHOW GLOBAL VARIABLES;" > MySQLCurrentSettings.txt
এটি পাঠ্য ফাইলে সমস্ত অপশন ক্যাপচার করবে।
বিকল্প 2: লিনাক্স কমান্ড লাইন থেকে
ps -ef | grep mysqld | grep -v grep
এটি mysqld_safe থেকে সেট হিসাবে শুরু mysqld বিকল্পগুলি দেখায়
বিকল্প 3: সরাসরি সার্ভারকে জিজ্ঞাসা করুন
mysqld --help --verbose
'Mysqld --help --verbose' প্রদর্শনের নীচে, আপনি বর্তমান সেটিংস মাইকিএনএলডিটি my.cnf থেকে লোড হওয়া বা এতে ডিফল্ট দেখতে পাবেন।
এই নির্দেশাবলী সেন্টোস 7.1 এ স্টক মারিডাবের জন্য।
এখানে কোনও মেশিনের বর্তমান সেটিংসকে কোনও নতুন ইনস্টলেশন, বর্তমান বা ভবিষ্যতে প্রতিস্থাপনের পদ্ধতি অনুসরণ করতে হবে।
যে মেশিন থেকে আমরা সেটিংসটি অনুলিপি করতে চাই তাতে আমরা চালাতে পারি:
/usr/libexec/mysqld --help --verbose > mysql_current_settings.txt
অন্য একটি মেশিনে, আমরা মারিয়্যাডবি-সার্ভার ইনস্টল করতে এবং চালাতে পারি:
/usr/libexec/mysqld --help --verbose > mysql_default_settings.txt
তারপরে আমরা দুটি ফাইলই একটি ডিরেক্টরিতে রেখেছি, যা এই উদাহরণে "/ a /"।
তারপরে আমরা চালাব:
comm -3 <(sort /a/mysql_current_settings.txt) <(sort /a/mysql_default_settings.txt)
যদি কোনও আউটপুট না থাকে তবে দুটি ফাইলই অভিন্ন। যার অর্থ উভয় মেশিনে সমস্ত সেটিংস তাদের ডিফল্ট।
যদি কিছু আউটপুট থাকে তবে কিছু লাইন ইনডেন্ট হবে না, আবার কিছু লাইন ইনডেন্ট হবে।
অ-বিনষ্টিত লাইনগুলি কেবলমাত্র প্রথম ফাইলটিতে উপস্থিত থাকে, যা এখানে /a/mysql_current_settings.txt।
ইনডেন্ডেন্ড লাইনগুলি কেবলমাত্র দ্বিতীয় ফাইলটিতে উপস্থিত থাকে, যা এখানে /a/mysql_default_settings.txt।
এখন আমরা সমস্ত সেটিংস জানি, কিছু সেটিং ব্যতীত যেগুলি কমান্ড লাইনে মাইএসকিএলডি শুরু হয়েছিল সেট ব্যতীত। এই সেটিংসটি /etc/my.cnf, বা /etc/my.cnf.d/* ফাইল, বা একটি কাস্টম স্ক্রিপ্ট, বা একটি উপন্যাস ইত্যাদি হতে পারে any যে কোনও ক্ষেত্রে, আমরা নিম্নলিখিত কমান্ডের সাহায্যে তাদের দেখতে পাচ্ছি:
ps -ef | grep mysqld
এখন আমরা খুব কম সেটিংস জানি যে এটিকে পুরানো হিসাবে কনফিগার করতে আমাদের একটি নতুন ইনস্টলেশন পরিবর্তন করতে হবে।
এখানে কিছু অন্যান্য বিবরণ অনুসরণ করুন।
Os.১-এর উপরে, নিম্নলিখিত কমান্ডটি ম্যাসকিএলএড শুরু হওয়া কমান্ড লাইনে সেট করা কিছু সেটিংস ব্যতীত সমস্ত বর্তমান সেটিংস দেখায়:
/usr/libexec/mysqld --help --verbose
মোট, এটি দেখায়:
প্রথম অংশে, সেটিংস যা আমরা "মাইকিকিএলডি" এর পরে প্রথম পরামিতি হিসাবে ব্যবহার করতে পারি যখন আমরা এটি শুরু করি;
দ্বিতীয় অংশে, সংকলনের সময় সেটিংস সেট করা হয়েছে;
তৃতীয় অংশে, বর্তমান সেটিংস।
এমনকি যদি তার আউটপুটটির শেষ লাইনটি বলে: একটি চলমান মাইএসকিউএল সার্ভার কী ব্যবহার করছে তা দেখতে, টাইপ করুন:
mysqladmin variables -uroot -p
আমরা যদি এটি /etc/my.cnf এ পরিবর্তন করি এবং মাইএসকিএল পুনরায় চালু করি তা সত্ত্বেও, কমান্ডটি Fe, বাইন্ড-ঠিকানা প্রদর্শন করে না।
এছাড়াও নিম্নলিখিত কমান্ডটি অনেকগুলি সেটিংস দেখায় তবে "বাইন্ড-ঠিকানা" নয়:
mysql -uroot -p -e"SHOW VARIABLES;"
মনে রাখবেন যে, 7.1 সেন্টে, মাইএসকিএলড $ PATH তে নেই।
একটি বর্তমান my.cnf উত্পন্ন করার জন্য এখানে আমার প্রিয় উপায়:
{ echo -e "# MYSQL VARIABLES {{{1\n##\n# MYSQL `mysql -V|sed 's,^.*\(V.*\)\, for.*,\1,'` - By: `logname`@`hostname -f` on `date +%c`\n##"; for l in {a..z}; do echo '#'; mysql -NBe "SHOW GLOBAL VARIABLES LIKE '${l}%'" | sed 's,\t,^= ,' | column -ts^ | tr "\n" '@' | eval $(echo "sed '" "s,@\("{a..u}{a..z}"\),\n\n\1,;" "'") | eval $(echo "sed '" "s,@\(innodb_"{a..z}{a..z}"\),\n\n\1,;" "'") | tr '@' "\n" | sed 's,^,# ,g'; done; echo -e "#\n##\n# MYSQL VARIABLES }}}1"; } | tee ~/mysql-variables.log
তবে এটি ম্যাক ওএস এক্সের জন্য নির্ভরযোগ্যভাবে কাজ করে না।
এটি আপনার মাই সিএনএফ-তে আমদানি করার জন্য একটি পরিষ্কার ভেরিয়েবল লগ আউটপুট দেবে।
আসল উত্স: http://www.askapache.com/mysql/view-mysql-variables-my-cnf.html
mysqld -V|sed 's,^.*\(V.*\)\ for.*,\1,'
। ক্লায়েন্ট এবং সার্ভার উভয়ই একসাথে ইনস্টল করা হয়েছে বলে আমি মনে করি যেহেতু এটি গুরুত্বপূর্ণ নয় Not এর উদ্দেশ্য কী {{{1
এবং 1}}}
?