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)

相关文章