MySQL 常用命令与操作全解析:从安装管理到数据导入导出

沿途有光
沿途有光
发布时间:2026-10-13| 6人浏览过
原创

本文全面整理 MySQL 基础管理与高频操作命令,解决从环境配置、账户安全、表结构变更到数据备份恢复的实际问题。

目标与环境准备

掌握 MySQL 的命令行交互是进行数据库管理的核心技能。操作前请确认已安装 MySQL 服务,并明确以下默认路径(以 Linux 环境为例):

  • 数据目录:/var/lib/mysql/
  • 配置文件:/usr/share/mysql
  • 相关命令:/usr/bin(包含 mysqladmin, mysqldump 等)
  • 启动脚本:/etc/init.d/mysql

第1步:连接与账户管理

通过终端连接 MySQL 并进行账户安全设置是日常管理的第一步。

1.1 连接 MySQL 服务器

目的:登录到本地或远程 MySQL 实例。
入口:操作系统终端。
动作:执行 mysql 命令并指定参数。

  • 连接本机:默认使用 localhost,直接输入用户名和密码。
    $ mysql -u root -pmysql
  • 连接远程主机:需指定 -h 参数指定 IP 地址。
    $ mysql -h 127.0.0.1 -u root -pmysql

1.2 修改当前用户密码

风险提醒:执行此操作将覆盖现有密码,请确保知晓新密码以免被锁定。

  1. 进入 MySQL 控制台后,切换到系统库:use mysql;
  2. 更新密码字段,注意旧版本语法可能不同,以下为通用格式:update user set password=PASSWORD('新密码') where user='用户名';
  3. 刷新权限使配置立即生效:flush privileges;
  4. 退出:quit;

1.3 新增与删除用户

新增用户:利用 GRANT 语句赋予权限并创建账户。例如为所有数据库创建用户:

grant select,insert,update,delete on *.* to root@localhost identified by 'mysql';
执行后可通过 flush privileges; 刷新权限。

删除用户:
第一步:进入 MySQL 并执行删除语句(注意替换用户名和主机位):

delete from user where user='用户名' and host='localhost';
flush privileges;
第二步(可选):若该用户专属的数据库不再需要,可一并删除:
drop database dbname;

第2步:数据库与表结构操作

在操作表之前,必须使用 use <数据库名>; 切换到目标上下文。

2.1 数据库层级操作

  • 显示列表:show databases;
  • 新建库:create database test;
  • 切换库:use test;
  • 查看当前库:select database();
  • 删除库:drop database test;

2.2 表结构管理

新建表:定义字段名及数据类型。例如创建一个带有自增主键和默认值的表:

create table MyClass(
 id int(4) not null primary key auto_increment,
 name char(20) not null,
 sex int(4) not null default '0',
 degree double(16,2));

查看结构:两种方式等效:

desc MyClass;
-- 或者
show columns from MyClass;

删除表:彻底移除表及其数据:

drop table MyClass;

增加字段:动态修改表结构:

alter table MyClass add passtest int(4) default '0';

重命名表:

rename table MyClass to YouClass;

第3步:数据内容 CRUD 操作

针对已存在的表进行数据的增删改查。

3.1 插入与查询

插入数据:

insert into MyClass values(1,'Tom',96.45),(2,'Joan',82.99), (3,'Wang', 96.59);

全量查询:

select * from MyClass;

分页/限制查询:仅获取前 N 行,避免大数据量卡顿:

select * from MyClass limit 0,2;

3.2 更新与删除

更新记录:精准定位 id=1 的行进行修改,切勿省略 where 条件否则将清空整表:

update MyClass set name='Mary' where id=1;

批量字符串替换:例如在文章内容前统一添加缩进:

update article set content=concat('    ', content);

删除记录:删除 id=1 的记录:

delete from MyClass where id=1;

第4步:数据导入与导出

风险提示:在执行大规模导入/导出前,建议对源数据进行完整备份以防误操作。

4.1 使用 mysqldump 导出数据

在终端(非 MySQL 控制台)执行以下命令。其中 -h localhost -u root -p 为连接参数,> 为重定向输出文件。

  • 备份整个数据库(含结构与数据):
    mysqldump -u root -p mydb > e:\MySQL\mydb.sql
  • 仅备份表结构:使用 --add-drop-table 参数(部分版本可能需要调整):
    mysqldump -u root -p mydb --add-drop-table > e:\MySQL\mydb_stru.sql
  • 仅备份数据(无结构):使用 -t 参数:
    mysqldump -u root -p -t mydb > data_only.sql
  • 备份存储过程与函数:使用 -R 参数。
    备份定时任务:使用 -E 参数。

4.2 导入外部 SQL 文件

方法一:source 命令(推荐用于交互式): 1. 进入 MySQL 控制台。 2. use target_db; 切换到目标数据库。 3. 执行:source e:\MySQL\mydb.sql;

方法二:命令行重定向(适用于系统级操作): 退出 MySQL,直接在终端执行:

mysql -u root -p target_db < e:\MySQL\mydb.sql
以上便是关于 MySQL 命令操作的详细内容,更多关于 MySQL 数据库管理与备份的资料请关注本站其它相关文章!
相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。