MySQL-এ ডিফল্ট অপশন, মান আশা করা অপশন এবং '=' চিহ্ন বুঝি:
প্রথা অনুযায়ী, মান নির্ধারণকারী লং ফর্মের অপশনগুলো ইকয়াল (=) চিহ্ন ব্যবহার করে লেখা হয়। নিচে দেখানো হলো:
mysql --host=tonfisk --user=jon
যেসব অপশন মান আশা করে (যার ডিফল্ট মান নেই), তাদের জন্য ইকয়াল চিহ্ন বাধ্যতামূলক নয়। অর্থাৎ নিচের কমান্ডটিও বৈধ:
mysql --host tonfisk --user jon
উভয় কেসেই mysql ক্লায়েন্ট "tonfisk" হোস্টে চলমান MySQL সার্ভারের সাথে "jon" ইউজার অ্যাকাউন্ট দিয়ে সংযোগ করার চেষ্টা করে।
এই আচরণের কারণে, যখন কোনো অপশনের জন্য মান দেওয়া থাকে না যা মান আশা করে, তখন সমস্যা দেখা দিতে পারে।
উদাহরণ
যখন একজন ব্যবহারকারী "tonfisk" হোস্টে চলমান MySQL সার্ভারের সাথে "jon" ইউজার হিসেবে সংযোগ করে, তখন নিচের কমান্ড চালানো হয়:
shell> mysql --host 85.224.35.45 --user jon
আউটপুট
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 8.0.25 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
তারপর নিচের কমান্ডটি এক্সিকিউট করা হয়:
ক্যোয়ারি
mysql> SELECT CURRENT_USER();
আউটপুট
+----------------+ | CURRENT_USER() | +----------------+ | jon@% | +----------------+ 1 row in set (0.00 sec)
যখন এই অপশনগুলোর একটি জন্য প্রয়োজনীয় মান উপেক্ষা করা হয়, তখন এরর দেখায়। এররটি নিচের মতো হতে পারে:
shell> mysql --host 85.224.35.45 –user
আউটপুট
mysql: option '--user' requires an argument
উপরের কেসে, mysql --user অপশনের পরে কোনো মান খুঁজে পায় না কারণ কমান্ড লাইনে এর পরে কিছু নেই। কিন্তু যদি ব্যবহারকারী শেষ অপশন ছাড়া অন্য কোনো অপশনের মান বাদ দেয়, তবে ভিন্ন একটি এরর দেখায় যা ব্যবহারকারীর আশা অনুযায়ী নাও হতে পারে:
shell> mysql --host --user jon
আউটপুট
ERROR 2005 (HY000): Unknown MySQL server host '--user' (1)