MySQL 是一款广泛使用的开源关系型数据库管理系统,通过命令行连接数据库是数据库管理员和开发人员的基本技能之一,以下是关于使用 MySQL 命令连接数据库的详细说明,包括连接步骤、常用参数、常见问题及解决方案。

连接 MySQL 数据库的基本命令
在命令行中连接 MySQL 数据库的基本语法如下:
mysql -h 主机名 -u 用户名 -p
-h:指定 MySQL 服务器的主机名或 IP 地址,如果连接本地数据库,可以省略该参数,默认为localhost。-u:指定 MySQL 用户名,root。-p:提示输入密码,输入后会提示用户输入密码,密码不会在屏幕上显示。
连接本地 MySQL 服务器的命令为:
mysql -u root -p
连接参数详解
以下是连接 MySQL 时常用的参数及其说明:
| 参数 | 说明 | 示例 |
|---|---|---|
-h, --host |
指定 MySQL 服务器的主机名或 IP 地址 | mysql -h 192.168.1.100 -u root -p |
-P, --port |
指定 MySQL 服务器的端口号,默认为 3306 | mysql -h localhost -P 3307 -u root -p |
-u, --user |
指定 MySQL 用户名 | mysql -u admin -p |
-p, --password |
提示输入密码,可以直接在命令后写密码(不安全) | mysql -u root -p123456(不推荐) |
-D, --database |
连接后直接进入指定数据库 | mysql -D mydb -u root -p |
-e, --execute |
执行 SQL 命令后退出 | mysql -u root -p -e "SHOW DATABASES;" |
连接远程 MySQL 数据库
如果需要连接远程 MySQL 服务器,确保:

- 远程服务器允许远程连接(在 MySQL 配置文件中设置
bind-address = 0.0.0.0)。 - 防火墙允许 MySQL 端口(默认 3306)的访问。
- 远程用户有访问权限(
GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%')。
连接命令示例:
mysql -h 192.168.1.100 -u remote_user -p
连接后常用操作
成功连接 MySQL 后,可以执行以下操作:
- 查看所有数据库:
SHOW DATABASES;
- 选择数据库:
USE mydb;
- 查看当前数据库的表:
SHOW TABLES;
- 退出 MySQL:
EXIT;
常见问题及解决方案
-
错误 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
- 原因:MySQL 服务未启动或端口被占用。
- 解决:启动 MySQL 服务(Windows:
net start mysql;Linux:sudo systemctl start mysql)。
-
错误 1045 (28000): Access denied for user 'root'@'localhost'
(图片来源网络,侵删)- 原因:用户名或密码错误。
- 解决:检查用户名和密码是否正确,或重置 root 密码。
相关问答 FAQs
Q1: 如何在连接 MySQL 时直接指定密码?
A1: 可以使用 -p 后直接跟密码,mysql -u root -p123456,但这种方式不安全,因为密码会记录在命令历史中,建议使用交互式输入密码。
Q2: 连接 MySQL 时提示“Unknown database 'mydb'”,如何解决?
A2: 该错误表示指定的数据库不存在,可以通过 SHOW DATABASES; 查看所有数据库名称,或先创建数据库:CREATE DATABASE mydb;。
