MySQL 选项默认值、期望值的选项以及 = 符号
mysqlmysqli database
让我们了解默认选项、期望值的选项以及 MySQL − 中的 ‘=’ 符号
按照惯例,分配值的选项的长形式使用等号 (=) 符号书写。如下所示 −
mysql --host=tonfisk --user=jon
对于需要值的选项,即没有默认值的选项,不需要等号。这意味着以下命令在这种情况下有效 −
mysql --host tonfisk --user jon
在上述两种情况下,mysql 客户端都尝试使用用户名为 “jon” 的帐户连接到在名为 “tonfisk” 的主机上运行的 MySQL 服务器。
由于这种行为,当没有为需要提供值的选项提供值时,偶尔会出现问题。
示例
当用户以用户 jon 的身份连接到在主机 tonfisk 上运行的 MySQL 服务器时,将运行以下命令 −
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)