📜  mysqldump 密码 - SQL (1)

📅  最后修改于: 2023-12-03 15:17:48.840000             🧑  作者: Mango

mysqldump 命令介绍

简介

mysqldump 是 MySQL 数据库备份工具,可以将 MySQL 数据库中的数据导出到 SQL 文件中。此命令可用于定期备份数据库,保证数据库的安全性和可恢复性。

语法
mysqldump [OPTIONS] [database [table [table ...]]]
选项
  • -u,--user=username:连接 MySQL 的用户名。
  • -p,--password[=password]:连接 MySQL 的密码。如果不指定,则命令行会提示输入密码。
  • -h,--host=hostname:连接 MySQL 的主机名。
  • -P,--port=port_num:连接 MySQL 的端口号。
  • --lock-tables:在导出数据前锁定表,以防止其他客户端对其进行修改。
  • --single-transaction:在使用 InnoDB 存储引擎时,数据库将被导出至事务日志的一致性快照,以避免在导出过程中出现不一致的情况。
  • --routines:导出存储过程和函数。
  • --triggers:导出触发器。
  • --events:导出事件。
示例
导出整个数据库
mysqldump -u root -p mydatabase > mydatabase.sql
导出单个表
mysqldump -u root -p mydatabase mytable > mytable.sql
导出多个表
mysqldump -u root -p mydatabase mytable1 mytable2 mytable3 > mytables.sql
导出数据和结构
mysqldump -u root -p --databases mydatabase1 mydatabase2 > mydatabases.sql
导出数据、结构和函数
mysqldump -u root -p --routines mydatabase > mydatabase.sql
导出数据、结构、函数和触发器
mysqldump -u root -p --routines --triggers mydatabase > mydatabase.sql
导出数据、结构、函数、触发器和事件
mysqldump -u root -p --routines --triggers --events mydatabase > mydatabase.sql

以上示例中,-u 是指连接 MySQL 的用户名,-p 是指连接 MySQL 的密码,mydatabase 是数据库名,mytable 是表名,mydatabase1mydatabase2 是数据库列表,mydatabase.sql 是导出的 SQL 文件名。

注意事项
  • 导出数据时建议加上 --lock-tables 选项以保证一致性。
  • 导出数据时建议加上 --single-transaction 选项以避免不一致。
  • 导出数据时建议在备份文件名中加上日期,以备后用。
  • 导入数据时建议在导入 SQL 文件前备份数据,以备不测。