linux个人心得23 (mysql②)

数据的导入与导出

mysqldump 是一个 MySQL 自带的工具,它可以生成一个包含 CREATE TABLE 和 INSERT INTO 等 SQL 语句的 .sql 文件。这个文件就是数据库的 "逻辑备份",因为它包含了重建数据库所需的所有 SQL 命令。

导出的基本语法

mysqldump -u root -p game > game.sql

这是linux上使用的命令,这个-p后也可以直接跟我们的密码,但是不建议这样用,因为直接在上面输入密码会在历史命令里面暴露,所以用如上指令,会进入交互式输入密码界面,这样就可以防止密码暴露

常用导出场景示例

示例 1:导出整个数据库

mysqldump -u root -p mydatabase > mydatabase_backup.sql

这是最常见的操作,备份一个完整的数据库(包括所有表结构和数据)。

示例 2:导出数据库中的特定几个表

mysqldump -u root -p mydatabase users orders > tables_backup.sql

如果你只需要备份 users 和 orders 这两个表。

示例 3:仅导出数据库结构(不包含数据)

mysqldump -u root -p --no-data mydatabase > mydatabase_schema.sql

这在需要复制数据库结构到另一个环境时非常有用。

示例 4:导出所有数据库

mysqldump -u root -p --all-databases > all_databases_backup.sql

这个导出的文件会包含 CREATE DATABASE 和 USE 语句,导入时会更方便。

示例 5:生产环境推荐的导出命令

mysqldump -u root -p \
--single-transaction \
--routines \
--triggers \
--master-data=2 \
mydatabase > mydatabase_prod_backup.sql

在对线上业务(特别是使用 InnoDB 存储引擎的)进行备份时,需要考虑数据一致性,并备份存储过程、函数等。

--single-transaction: 在导出开始时创建一个事务。这可以保证在导出期间的数据是一致的快照,并且不会锁住表,对线上业务影响最小(仅对 InnoDB 有效)。

--routines: 导出存储过程和函数。

--triggers: 导出触发器。

--master-data=2: 在备份文件中记录二进制日志(binary log)的位置。这对于设置主从复制(replication)至关重要。

示例 6:导出并压缩·

mysqldump -u root -p mydatabase | gzip > mydatabase_backup.sql.gz

为了节省磁盘空间,通常会将导出的 SQL 文件进行压缩。

导入的基本语法

数据导入就是执行 mysqldump 生成的 .sql 文件,也就是我们导出的文件,内容大差不差

方式一:使用重定向符 < (最常用)

mysql -u 用户名 -p密码 目标数据库名 < 要导入的文件名.sql

相关推荐
xiaogai_gai2 分钟前
物料主数据从ERP同步到电商中台:基于轻易云的编码映射与增量全量双轨实践
大数据·数据库
SelectDB13 分钟前
信创适配速查手册:国产 CPU / OS 对照表、认证许可速查与部署检查项清单
大数据·数据库·数据分析
亚川楼宇自控系统数据中心厂家16 分钟前
机房 3D 可视化技术:从平面监控到立体化管理的升级
大数据·数据库·人工智能
SelectDB23 分钟前
部署形态与存算分离速查:形态对照、配置项清单与关键命令片段
大数据·数据结构·数据库
SelectDB25 分钟前
Workload Group 参数速查:排队与并发配置、CPU 软硬限切换与常见配置问题清单
大数据·数据库·数据分析
.Hypocritical.26 分钟前
MySQL |常用 SQL 语句与 pymysql 函数
mysql
DBA_G1 小时前
南大通用GBase 8c数据库-两阶段提交事务状态保持讲解(下)
数据库
NineData1 小时前
MySQL 到 Doris 实时数据同步:订单、用户和日志数据入仓方案
数据库·mysql
小小AK1 小时前
采购订单同步策略实战:金蝶云星空到旺店通的字段映射与调度设计
大数据·数据库
前端 贾公子2 小时前
LangGraph == 图的状态(State)管理 (中)
开发语言·数据库·python