让我们了解如何使用命令行将MySQL连接到数据库。这是为像mysql或mysqldump这样的客户端完成的。
以下命令调用 mysql 而不指定任何显式连接参数 −
mysql
由于没有参数选项,因此将应用默认值 -
-
默认主机名为本地主机。
-
默认用户名是 Windows 上的 ODBC。
-
没有发送密码,因为没有提到 --password 和 -p。
对于 mysql,第一个非选项参数被视为默认数据库的名称。由于没有这样的参数,mysql 不选择默认数据库。
要具体指定主机名、用户名和密码,请在命令行上提供适当的选项。若要选择默认数据库,请添加数据库名称参数。让我们用命令看到这一点 -
mysql --host=localhost --user=myname --password=password mydb mysql -h localhost -u myname -ppassword mydb
客户端程序确定需要建立的连接类型 -
-
如果未指定主机或它是本地主机,则与本地主机的连接
-
否则,连接将使用 TCP/IP。
要确保客户端与本地服务器建立 TCP/IP 连接,需要指定主机名值为 127.0.0.1(而不是本地主机)的“—host”或“-h”。取而代之的是,还可以提及本地服务器的IP地址或名称。可以使用 --protocol=TCP 选项显式提及传输协议。让我们看看这个例子 -
例
mysql --host=127.0.0.1 mysql --protocol=TCP
在Windows上,MySQL客户端可以强制使用命名管道连接。这可以通过指定 --pipe 或 --protocol=PIPE 选项来完成。否则。(句点)也可以作为主机名提及。
与远程服务器的连接将使用 TCP/IP。该命令将使用默认端口号 (3306) 连接到 remote.example.com 上运行的服务器。让我们看看它的实际效果 -
mysql --host=remote.example.com
要显式指定端口号,可以使用 --port 或 -P 选项。让我们看看它是如何完成的 -
mysql --host=remote.example.com --port=13306
若要使使用端口号,请强制进行 TCP/IP 连接。它可以使用任何一种方法来完成 -
mysql --port=13306 --host=127.0.0.1 (or) mysql --port=13306 --protocol=TCP
可以指定连接参数,而无需在每次调用客户端程序时在命令行上输入它们。