怎样完整导出数据库?轻松保留结构和数据!

MySQL/MariaDB 数据库导出

使用 mysqldump 工具

# 示例:导出名为 `web_data` 的数据库
mysqldump -u root -p123456 --databases web_data > web_backup_full.sql

导出单张表

mysqldump -u root -p123456 web_data users > users_table.sql

仅导出结构或数据

# 仅导出表结构(不含数据)
mysqldump -u root -p123456 --no-data web_data > schema_only.sql
# 仅导出数据(不含结构)
mysqldump -u root -p123456 --no-create-info web_data > data_only.sql

压缩导出结果

mysqldump -u root -p123456 web_data | gzip > web_data_backup.sql.gz

PostgreSQL 数据库导出

使用 pg_dump 工具

# 导出整个数据库(自定义格式,支持压缩)
pg_dump -U [用户名] -F c -f backup.dump [数据库名]
# 示例:导出 `app_db` 到自定义压缩文件
pg_dump -U postgres -F c -f app_backup.dump app_db

导出为纯SQL文本

pg_dump -U postgres app_db > app_backup.sql

导出单张表

pg_dump -U postgres -t users app_db > users_table.sql

SQLite 数据库导出

# 导出整个数据库为SQL文件
sqlite3 my_database.db .dump > backup.sql
# 导出单张表
sqlite3 my_database.db "SELECT * FROM users;" > users_data.csv

MongoDB 数据库导出

# 导出整个数据库(二进制BSON格式)
mongodump --db [数据库名] --out /backup/path
# 示例:导出 `analytics` 到当前目录
mongodump --db analytics
# 导出为JSON(使用 `mongoexport`)
mongoexport --db analytics --collection logs --out logs.json

关键注意事项

  1. 权限与安全

    • 避免在命令中明文写密码(如 -p123456),推荐交互式输入密码或使用配置文件(如 ~/.my.cnf)。
    • chmod 限制备份文件权限(chmod 600 backup.sql)。
  2. 备份验证

    • 检查导出文件是否非空:ls -lh backup.sql
    • 测试导入:mysql -u root -p test_db < backup.sql(MySQL示例)
  3. 自动化备份
    结合 cron 定时任务实现每日备份:

    # 编辑cron任务
    crontab -e
    # 添加以下行(每天2点备份MySQL)
    0 2 * * * mysqldump -u root -p[密码] web_data | gzip > /backups/web_data_$(date +\%F).sql.gz
  4. 存储与版本控制

    • 备份文件命名加入日期:backup_$(date +\%Y\%m\%d).sql
    • 使用云存储(如 AWS S3)或异地服务器保存副本。

常见问题解决

  • 错误:mysqldump: command not found
    安装客户端:

    # Debian/Ubuntu
    sudo apt install mysql-client
    # CentOS/RHEL
    sudo yum install mysql
  • PostgreSQL 权限拒绝
    检查 pg_hba.conf 文件,确保本地连接权限为 trustmd5

  • 导出文件损坏
    gzip -t backup.sql.gz 验证压缩文件完整性。


命令行导出数据库是Linux环境的核心技能,通过 mysqldumppg_dump 等工具可灵活控制备份范围与格式,关键步骤包括:

  1. 选择正确的导出命令和参数;
  2. 保护敏感信息(如密码);
  3. 定期验证备份可用性;
  4. 制定自动化策略保障数据安全。

引用说明:本文操作基于MySQL 8.0、PostgreSQL 14、SQLite 3、MongoDB 5.0的官方文档,具体参数以实际版本为准,参考来源:

  • MySQL Official Documentation: mysqldump
  • PostgreSQL Docs: pg_dump
  • SQLite CLI Guide
  • MongoDB Backup Methods

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8380.html

(0)
酷番叔酷番叔
上一篇 2025年7月23日 21:34
下一篇 2025年7月23日 21:43

相关推荐

  • 安全应急报告应如何系统梳理应急风险并提出有效应对措施?

    安全应急报告是组织或机构在突发事件发生后,系统记录事件经过、应急处置情况、原因分析及整改措施的关键文书,其核心价值在于通过客观、全面的信息梳理,为事故调查、责任认定、风险防控及管理优化提供依据,是安全管理闭环中的重要环节,一份规范的安全应急报告不仅能反映组织应对突发事件的能力,更能为同类事件的预防提供经验借鉴……

    2025年10月29日
    11100
  • Windows命令行如何高效定位系统信息?

    基础文件搜索(CMD命令提示符)dir 命令 – 目录检索 dir C:\目标文件夹\*关键词* /s参数解析:/s:遍历所有子目录:通配符(如*.txt查找文本文件)示例:dir C:\Logs\*error*.log /s 搜索Logs目录下所有含”error”的日志文件findstr 命令 – 内容搜索……

    2025年6月26日
    16200
  • 安全传感器数据错误

    安全传感器数据错误是现代工业自动化、智能家居、医疗设备等领域中常见的技术问题,可能导致系统误判、设备停机甚至安全事故,本文将从数据错误的成因、影响、检测方法及应对策略等方面进行全面分析,帮助读者更好地理解和处理这一问题,安全传感器数据错误的成因分析安全传感器数据错误可能由多种因素引起,主要可分为硬件故障、软件缺……

    2025年12月8日
    8500
  • 安全加速SCDN源码,如何实现高效防护与加速?

    安全加速SCDN(Secure Content Delivery Network)源码的研究与实现,是构建高性能、高可靠内容分发网络的核心环节,其核心目标在于通过分布式节点部署、智能路由调度及多层次安全防护机制,为用户提供低延迟、高可用且安全的内容访问体验,以下从技术架构、核心模块实现及安全防护三个维度,深入剖……

    2025年11月26日
    9700
  • ax6网络存储是什么?有哪些核心功能与数据共享优势?

    ax6网络存储是一款专为家庭及小型企业用户设计的智能数据管理中心,旨在通过高效、安全、易用的特性,解决现代用户在数据存储、共享、备份等方面的核心需求,作为连接多设备的数字中枢,它不仅提供大容量存储空间,更通过智能化功能让数据管理变得简单高效,成为个人与团队数字生活的得力助手,核心性能:高效稳定的存储基石ax6网……

    2025年11月14日
    11100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信