MySQL数据库的备份和还原

本文介绍了MySQL数据库的备份和还原策略,包括使用LOCK TABLES和FLUSH TABLES确保备份一致性,以及通过SQL级别备份如SELECT INTO OUTFILE和BACKUP TABLE。重点讲解了mysqldump工具的使用方法,如不同调用格式和关键选项,如--add-drop-database和--all-databases。此外,还提到了在Qt环境中如何执行mysqldump进行数据库备份。
摘要由CSDN通过智能技术生成

因为MySQL表保存为文件方式,很容易备份。要想保持备份的一致性,对相关表执行LOCK TABLES操作,然后对表执行FLUSH TABLES。你只需要读锁定;这样当你复制数据库目录中的文件时,允许其它客户继续查询表。需要FLUSH TABLES语句来确保开始备份前将所有激活的索引页写入硬盘。

如果你想进行SQL级别的表备份,你可以使用select into/outfile 或者backup table .对于select into ...outfile, 输出的文件不能先存在。对于backup table也如此,因为覆盖完整的文件会有安全风险。

备份数据库的另一个技术是使用mysqldump程序 或者mysqlhotcopy脚本。

这篇文章简单介绍下mysqldump的使用方法以及在Qt中的应用。

有3种方式来调用mysqldump:

shell> mysqldump [options] db_name [tables]
shell> mysqldump [options] ---database DB1 [DB2 DB3...]
shell> mysqldump [options] --all--database
如果没有指定任何表或使用了---database或--all--database选项,则转储整个数据库。

要想获得你的版本的mysqldump支持的选项,执行mysqldump ---help

mysqldump支持下面的选项:

·          --help,-?

显示帮助消息并退出。

·          --add-drop--database

在每个CREATE DATABASE语句前添加DROP DATABASE语句。

·       

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值