使用命令选项连接到 MySQL 服务器
让我们看看如何使用命令行选项为像 mysql 或 mysqldump 这样的客户端建立与 MySQL 服务器的连接。
为了使客户端程序能够连接到 MySQL 服务器,它必须使用正确的连接参数,例如服务器运行的主机名、MySQL 帐户的用户名和密码。每个连接参数都有一个默认值,但在必要时可以使用命令行或选项文件中指定的程序选项来覆盖它。
调用 mysql
在不指定任何显式连接参数的情况下调用 mysql 的命令为:
mysql
由于没有参数选项,因此应用默认值。
默认主机名为 localhost。在 Unix 上,它具有特殊含义。
在 Windows 上,默认用户名为 ODBC;在 Unix 上,为 Unix 上的登录名。
由于未提供 --password 或 -p,因此不发送密码。
对于 **mysql**,第一个参数被视为默认数据库的名称。由于没有此类参数,因此 **mysql** 不会选择任何默认数据库。
调用 - 指定主机名、用户名和密码
要显式指定主机名、用户名和密码,必须在命令行上提供相应的选项。如下所示:
mysql --host=localhost --user=myname --password=password mydb mysql -h localhost -u myname -ppassword mydb
密码值是可选的。
如果存在 --password 或 -p 选项,并且提到了密码值,则 --password= 或 -p 与其后的密码之间不应有空格。
如果 --password 或 -p 未指定密码值,则客户端程序会提示用户输入密码。输入密码时,密码不会显示。
连接类型
下一步是客户端程序确定需要建立的连接类型。为了确保客户端仅与本地服务器建立 TCP/IP 连接,使用 --host 或 -h 选项将主机名指定为 127.0.0.1(而不是 localhost)。除此之外,还可以提供本地服务器的 IP 地址或名称。即使对于 localhost,也可以使用 --protocol=TCP 选项显式提及传输协议。下面给出了一些示例:
mysql --host=127.0.0.1 mysql --protocol=TCP
如果需要连接到远程服务器,则使用 TCP/IP。此命令将帮助连接到在 remote.example.com 上运行的服务器,使用默认端口号 3306。如下所示:
mysql --host=remote.example.com
如果用户希望专门显示端口号,则需要提及 - -port 或 –P 选项:
mysql --host=remote.example.com --port=13306