首页/数据/数据库速查/mysql 命令行客户端

mysql 命令行客户端

MySQL 官方命令行客户端:交互执行 SQL、批量跑脚本、做巡检导出;支持 -e 直接执行、-D 指定库、多种输出格式与选项文件。

数据库速查数据更新于 2026-10-12
用途交互式执行 SQL 与脚本批处理
语法mysql -h 主机 -P 端口 -u 用户 -p [库名]
所属MySQL Client

基础用法

基础用法
mysql -h 127.0.0.1 -P 3306 -u root -p
mysql -uroot -p -e "SHOW DATABASES;"
mysql -uroot -p mydb < init.sql
mysql -uroot -p mydb -e "SELECT COUNT(*) FROM orders;"

常用参数速记

常用参数速记
-h 主机  -P 端口  -u 用户  -p 口令  -D 库名  -e 执行SQL
--default-character-set=utf8mb4  指定字符集
-B 制表符输出  -E 纵向输出  -A 不预读库表(大库登录提速)

选项文件持久化(~/.my.cnf)

选项文件持久化(~/.my.cnf)
cat > ~/.my.cnf <<'EOF'
[client]
host=127.0.0.1
user=dba
default-character-set=utf8mb4
prompt='\u@\h [\d]> '
EOF
chmod 600 ~/.my.cnf
不要把明文密码写进命令行参数:会残留在 shell 历史、bash 审计与 ps 进程列表里。

易错点

  • -p 与密码之间不能有空格;交互输入或 --login-path 才是安全做法
  • -h localhost 走本地 socket,-h 127.0.0.1 走 TCP,两条路认证与性能都不同

数据来源与参考

  • MySQL 8.0 Reference Manual: mysql — The MySQL Command-Line Client

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌