📜  mysql 转储 - SQL (1)

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

MySQL 转储 - SQL

在 MySQL 中,转储指的是将数据库中的数据备份到一个文件或者将一个文件中的数据恢复到数据库中。转储可以用于数据库的备份、迁移、升级等操作。

在本文中,我们将介绍 MySQL 转储的 SQL 语句及其使用方法。

语法
mysqldump [options] database [tables]
  • options: 转储选项,如-u指定用户名、-p指定密码等
  • database: 要转储的数据库名称
  • tables: 要转储的数据表,多表使用空格分隔
选项

下面是一些常用的转储选项:

  • -u:指定 MySQL 用户名
  • -p:指定 MySQL 密码
  • -h:指定 MySQL 主机名或 IP 地址
  • --port:指定 MySQL 端口号
  • --add-drop-table:在转储 SQL 语句中添加 DROP TABLE 语句
  • --add-locks:在转储 SQL 语句中添加锁定语句
  • --lock-tables:锁定所有要转储的表
  • --single-transaction:使用事务方式转储数据
  • --quick:使用 QUICK 方式转储数据
  • --routines:转储存储过程和函数
  • --triggers:转储触发器

更多选项请参考 MySQL 官方文档。

示例
转储整个数据库

下面的命令将转储整个数据库:

mysqldump -u root -p mydatabase > /path/to/mydatabase.sql

该命令将以 root 用户身份连接到 MySQL 数据库,将 mydatabase 数据库的数据转储到 /path/to/mydatabase.sql 文件中。

转储单个数据表

下面的命令将只转储 mydatabase 数据库中的 mytable 表:

mysqldump -u root -p mydatabase mytable > /path/to/mytable.sql

该命令将以 root 用户身份连接到 MySQL 数据库,将 mydatabase 数据库中的 mytable 表的数据转储到 /path/to/mytable.sql 文件中。

恢复数据

下面的命令将从 /path/to/mydatabase.sql 文件中恢复数据到 mydatabase 数据库中:

mysql -u root -p mydatabase < /path/to/mydatabase.sql

该命令将以 root 用户身份连接到 MySQL 数据库,将 /path/to/mydatabase.sql 文件中的数据恢复到 mydatabase 数据库中。

总结

MySQL 转储是一项重要的数据库操作,可以用于数据库的备份、迁移、升级等操作。本文介绍了 MySQL 转储的 SQL 语句及其使用方法。在实际使用中,需要根据具体情况选择合适的选项和命令。