首页 / MYSQL / mysql备份与恢复(笔记一)
mysql备份与恢复(笔记一)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了mysql备份与恢复(笔记一),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2860字,纯文字阅读大概需要5分钟。
内容图文
![mysql备份与恢复(笔记一)](/upload/InfoBanner/zyjiaocheng/463/770ce1331d1244988d70a1c728b45e55.jpg)
mysql物理备份与逻辑备份
mysql物理备份:
mysql物理备份指拷贝整个数据库数据存放的目录文件(默认在/data/db_data目录中)
特点:
简单,速度快,但不适合memory存储引擎(数据不保存到硬盘上),主要针对MyISAM存储引擎,可通过scp,cp,tar等文件备份工具实现,或者mysql自带的 mysqlhotcopy
缺点:
对应innodb的存储引擎需要mysql企业版的备份工具mysqlbackup
mysql逻辑备份:
通过获取数据库结构与内容来保存数据
优点:
可以针对任何存储引擎,在线备份,mysql自带工具mysqldump
缺点:
速度慢(获取数据,并转换成指定的格式),体积大,
mysql线上备份与线下备份
mysql线上备份
不需要关闭mysql服务器,适当的锁表可以有效的保证备份的完整性
线下备份:
需要关闭mysql服务器,一般发生在从库中,以防止,主库的正常工作
远程备份与本地备份
远程备份工具:mysqldump
本地备份工具:mysqldump,mysqlhotcopy
完成备份与增量备份:
完全备份:备份所有的数据库
增量备份: 一个时间点内数据库发生变量的备份(依靠mysql binary log) 需要开启--log-bin( 每次重启时都会产生一个新的二进制文件,
mysql客服端:flush logs(linux命令行 mysqladmin flush-logs)命令可以手动产生一个新的 )
备份策越:
shell> mysqldump -uroot -p --all-databases > backup_date.sql (会锁表)
如果数据库全是innodb引擎,可以加上--single-transaction,来保证事务也能备份,如果需要新产生一个binary log如下:
mysqldump -uroot -p --single-transaction --flush-logs --master-data=2 --all-databases > backup_date.sql
为了减小空间浪费可以删除无用的binary log文件 通过如下:
mysqldump -uroot -p --single-transaction --flush-logs --master-data=2 --all-databases --delete-master-logs > backup_date.sql
当有主从的时候操作需要小心,可能从服务器还没更新过来
恢复通过执行以下语句:
mysql -uroot -p < backup_date.sql
或者binary log恢复
mysqlbinlog mysql-bin.000007 mysql-bin.000008 | mysql -uroot -p
mysqlbinlog 还可以设置起止时间以及位置,具体请参考Mysql手册 或者 man mysqlbinlog
mysqldump使用说明
mysqldump [arguments] > file_name
备份所有的数据库使用 --all-databases如
mysqldump --all-databases > dump.sql
指定数据库
mysqldump --databases db1 db2 ...>dump.sql (如果不加--databases 文件中将不会产生 create databases 与use database 语句)
mysql> CREATE DATABASE IF NOT EXISTS db1;
mysql> USE db1;
mysql> source dump.sql
mysqldump 还有一种--tab的使用法,具体可参考手册
如果你的存储引擎是innodb可考虑一下参数
--events (事件)
--routines (存储过程与函数)
--triggers (触发器,默认包括)
也可以指定跳过通过如下参数
--skipevents, --skip-routines, or --skip-triggers
mysqldump还可以将表结构与数据分开备份如下:
--no-data 不备份数据(只备份表结构)
--no-create-info 不备份表结构(只备份数据)
shell> mysqldump --no-data test > dump-defs.sql
shell> mysqldump --no-create-info test > dump-data.sql
本文出自 “linux学习之路” 博客,请务必保留此出处http://raystudylinux.blog.51cto.com/9065684/1767027
mysql备份与恢复(笔记一)
标签:mysql备份与恢复
本文系统来源:http://raystudylinux.blog.51cto.com/9065684/1767027
内容总结
以上是互联网集市为您收集整理的mysql备份与恢复(笔记一)全部内容,希望文章能够帮你解决mysql备份与恢复(笔记一)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。