MySQL分为物理备份和逻辑备份
物理备份:是将数据库目录中的数据打包并进行备份。 缺点是数据写入时会损坏数据,需要备份MySQL停机时间
逻辑备份是指备份已执行的语句
mysqldump (缺点:备份速度慢,数据超过50G时无法并用)。
备份单个库
mysqldump-uroot-p-b数据库名称/etc/tmp/databasename _ bak _ $ (date % f ).sql
备份所有库
mysqldump-uroot-p-a-b/etc/tmp/databasename _ bak _ $ (date % f ).sql
按库进行备份
#/zjdlm/sh
MySQL _ cmd=/usr/local/MySQL/ZJ dlm/mysqldump
MYSQL_USER=root
MySQL _ pwd=123456 date=` date % f ` dbname=` MySQL-u $ { MySQL _ user }-p $ { MySQL _ pwd }-e ' show数据库; | sed ' 1,5d ' ` fordbnamein $ { dbname } do $ { MySQL _ cmd }-u $ { MySQL _ user }-p $ { MySQL _ pwd }-compact-}
道恩
表备份
mysqldump-uroot-pdatabasesnametablesname/etc/tables name _ bak _ $ (date % f ).sql
表结构备份(不包含表中的数据) ) ) ) ) ) ) )。
mysqldump-uroot-p-ddatabasesnametablesname/etc/tables name _ bak _ $ (date % f ).sql
压缩备份
mysqldump-uroot-p-a-b|gzip/backup/all _ bak $ (date % f ).sql.gz
优化备份
将--commpact添加到mysqldump-uroot-p-- compact test/backup/bak _ $ (date % f ).sql #时,注释将被取消,语句之间将变得紧凑
mysqldump-uroot-p-- lock-all-tables test/backup/bak _ $ (date % f ).SQL#myisam引擎进行表锁定,以确保数据完整性
mysqldump-uroot-p-- single-transaction test-f/backup/bak _ $ (date % f ).sql #表示innodb引擎为行锁定
恢复数据
source/backup/all _ bak _ 2020-5-13.SQL
mysql -uroot -p
物理备份工具—xtra备份
安装xtrabackup
yum installpercona-xtrabackup (如果源中不存在,请更换其他源或将rpm软件包下载到官方网站) )。
总量备份
innobackupex---- default-file=/etc/my.cn f---user=root---- password=Wang Wei-- backup/home/(指定普
执行回滚
innobackupex---- apply-log/home/2020-05-09 _ 12-23-56 /
总量恢复
innobackupex---- defaults-file=/etc/my.cn f---copy-back/home/2020-05-09 _ 12-23-56/(恢复后
增量备份
innobackupex---- defaults-file=/etc/my.cn f-- user=root-- password=Wang Wei-- incremental-- incremental
回滚
innobackupex---- apply-log----只读/家庭/2020-05-10 _ 00-51-11 /
innobackupex---- apply-log/home/2020-05-10 _ 00-51-11//--增量- dir=/home/Zeng Liang/2020
恢复—必须删除存储目录中的所有文件。)
innobackupex-- defaults-file=/etc/my.cn f-- copy-back/home/2020-05-10 _ 00-51-11 /