mysql 备份数据、恢复数据、二进制恢复数据

备份所有数据库

mysqldump -u root -p -h 127.0.0.1 --all-databases > dump.sql

备份多个数据库

mysqldump -u root -p -h 127.0.0.1 --databases databaseName1  databaseName2 > dump.sql

备份单个数据库(需要手动创建数据库指定字符集)

mysqldump test > dump.sql

恢复备份的数据

terminal:
    1.mysql -u root -p -e "source /tmp/dump.sql"
    2.mysql < dump.sql
    
console:    
    source dump.sql

备份表结构无数据(-d)

mysqldump -u root -p -h 127.0.0.1 -d --databases databaseName1 > dump.sql

备份单独多个表

mysqldump -u root -p -h 127.0.0.1  databaseName1 tableName tableName1 > dump.sql

Terminal create database

mysqladmin create databaseName1

以分隔文本格式备份

mysqldump --tab=/dir databaseName1

恢复分隔文本格式备份

terminal:
    恢复表结构:mysql db1 < t1.sql
    恢复数据:mysqlimport db1 t1.txt
console:
    恢复表结构:source  t1.sql
    恢复数据:load data infile 't1.txt' into table t1;

备份函数存储过程事件

--events:转储事件计划程序事件
--routines:转储存储过程和函数
--triggers:转储表的触发器

禁止导入数据

--no-data, -d

导出触发器。该选项默认启用

--triggers

禁止导出触发器

--skip-triggers

每个数据库创建之前添加drop数据库语句

--add-drop-database

每个数据表创建之前添加drop数据表语句

--add-drop-table

设置默认字符集

--default-character-set=utf8

导出事件

--events , -E

导出存储过程

--routines , -R

禁止创建表的语句出现

--no-create-db, -n

创建函数触发器前,先删除

--add-drop-trigger

没有建表语句

--no-create-info , -t
 

根据二进制日志文件时间恢复数据

mysqlbinlog  --start-datetime="2018-08-29 10:43:28"  --stop-datetime="2018-08-29 10:44:00"   ./../../mysql/data/binaryLog.000003 | mysql -uroot -p

根据二进制日志文件位置恢复数据

mysqlbinlog --start-position=3239 --stop-position=3398   ./../../mysql/data/binaryLog.000003 | mysql -uroot -p

把二进制日志写入文件

mysqlbinlog  --start-datetime="2018-08-29 10:43:28"  --stop-datetime="2018-08-29 10:44:00"   ./../../mysql/data/binaryLog.000003 > test.sql

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值