当前位置:首页 > 问答 > 正文

数据库管理|命令行操作|MySQL常用命令行工具详解

数据库管理 | 命令行操作 | MySQL常用命令行工具详解

最新动态:根据2025年8月的数据统计,MySQL在全球关系型数据库市场占有率仍稳居前三位,尤其在中小企业和开发者群体中,命令行工具的使用率同比增长15%,许多运维工程师反馈,熟练掌握MySQL命令行能大幅提升数据操作效率,尤其是在自动化脚本和服务器维护场景中。


为什么选择MySQL命令行?

尽管现在有Navicat、DBeaver等图形化工具,但命令行(CLI)依然是许多数据库管理员和开发者的首选,原因很简单:

数据库管理|命令行操作|MySQL常用命令行工具详解

  1. 轻量高效:不依赖图形界面,远程服务器维护更流畅。
  2. 脚本化支持:可直接嵌入Shell或Python脚本,实现自动化任务。
  3. 精准控制:某些高级功能(如性能调优参数)仅在命令行开放。

基础连接与退出

登录MySQL

mysql -u 用户名 -p  

输入后会提示输入密码,如果想直接指定密码(不安全,仅测试环境用):

mysql -u root -p密码  

指定主机和端口

mysql -h 主机IP -P 端口号 -u 用户名 -p  

例如连接远程数据库:

mysql -h 192.168.1.100 -P 3306 -u admin -p  

退出MySQL

exit;  
-- 或  
quit;  

数据库与表操作

查看所有数据库

SHOW DATABASES;  

切换数据库

USE 数据库名;  

查看当前数据库的表

SHOW TABLES;  

创建与删除数据库

CREATE DATABASE 新数据库名;  
DROP DATABASE 数据库名;  -- 慎用!  

表数据操作

查询数据

SELECT * FROM 表名;  
SELECT 字段1, 字段2 FROM 表名 WHERE 条件;  

插入数据

INSERT INTO 表名 (字段1, 字段2) VALUES ('值1', '值2');  

更新数据

UPDATE 表名 SET 字段1='新值' WHERE 条件;  

删除数据

DELETE FROM 表名 WHERE 条件;  

用户与权限管理

创建用户

CREATE USER '用户名'@'主机' IDENTIFIED BY '密码';  
-- 允许本地登录  
CREATE USER 'dev'@'localhost' IDENTIFIED BY '123456';  

授权

GRANT 权限 ON 数据库.表 TO '用户名'@'主机';  
-- 示例:授予所有权限  
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%';  

刷新权限

FLUSH PRIVILEGES;  

实用技巧

执行外部SQL文件

mysql -u 用户名 -p 数据库名 < 脚本文件.sql  

导出数据到文件

mysqldump -u 用户名 -p 数据库名 > 备份.sql  

查看MySQL版本

SELECT VERSION();  

查看当前连接信息

STATUS;  

常见问题

Q:忘记root密码怎么办?

数据库管理|命令行操作|MySQL常用命令行工具详解

  1. 停止MySQL服务
  2. 启动时跳过权限检查:
    mysqld_safe --skip-grant-tables &  
  3. 重新设置密码后重启服务。

Q:命令行中文乱码?
在连接时指定编码:

mysql -u 用户名 -p --default-character-set=utf8  

MySQL命令行工具看似复古,实则是数据库管理的“瑞士军刀”,无论是快速排查问题,还是编写自动化脚本,熟练使用这些命令都能让你事半功倍,2025年的技术趋势显示,随着DevOps的普及,命令行工具的重要性不降反升,建议每天花10分钟练习,很快你就能体会到它的强大之处!

发表评论