MySQL备份恢复操作

【备份的命令】

1)备份数据库

mysqldump -uroot -pwsyht -B 库名 > /opt/test.sql #加-B表示增加use db和create database db的信息

2)查看数据库

egrep -v "#|\*|--|^$" /opt/test.sql   #查看test.sql的库内容

3)恢复数据库

mysql -uroot -pwsyht < /opt/test.sql  #test.sql已经建库,所以恢复不用指定数据库

4)压缩备份

mysqldump -uroot -pwsyht -B 库名 | gzip > /opt/test.sql.gzip  #压缩备份减少占用内存空间,压缩效率近3倍

5)备份多个库

mysqldump -upeter -pwsyht123 -B test allow | gzip> test.sql.gz #备份test库和allow库,如果还有多个库就用空格分开

6)获得数据库前半部分

mysql -uroot -pwsyht123 -e "show databases;" | egrep -vi "cheu|mysql|perfor|infor|database" | sed ‘s#^#mysqldump -uroot -pwsyht123 -B #g‘ | sed ‘s#$# > test.sql#g‘ | bash

分库备份视频

http://edu.51cto.com/lesson/id-16611.html

cat fenku.sh

for dbname in `mysql -uroot -pwsyht123 -e "show databases;" | egrep -vi "cheu|mysql|perfor|infor|database" `

do

mysqldump -uroot -p‘wsyht123‘ -B $dbname | gzip > /mnt/$dbname.sql.gz

done

7)备份单个表

mysqldump -uroot -pwsyht123 库名 表名  > 备份的文件名.sql

8)查看要备份的内容

mysqldump -uroot -pwsyht123 --compact test t1 #--compact去掉注释,适合调式,生产环境不用

9)只备份表结构

mysqldump -uroot -pwsyht123 -d 库名 表名 > 备份文件名.sql  #-d只备份表结构

10)只备份表数据

mysqldump -uroot -pwsyht123 -t 库名 表名 > 备份文件名.sql #-t只备份数据

11)查看帮助

mysqldump --help > a.log

12)备份所有库所有表

mysqldump -uroot -pwsyht123 -A -B --events > 备份文件名.sql  #-A备份所有库所有表,-B备份创建库的语句

13)刷新binlog参数

mysqldump -uroot -pwsyht123 -A -B -F --events > 备份文件名.sql #-F刷新binlog参数

14)--master-data增加binlog日志文件名及对应的位置点

mysqldump -uroot -pwsyht123 --master-data=2 --compact > 备份文件名.sql

【其他使用方法】

myisam引擎

mysqldump -uroot -pwsyht123 -A -B -F --master-data=2 -x --events > a.sql #-x表示锁表

innodb引擎

mysqldump -uroot -pwsyht123 -A -B -F --master-data=2 --events --single-transaction > all.sql

innodb备份命令:推荐使用的

【恢复的命令】

mysql> source /mnt/mysql_bak_B.sql

mysql -uroot -pwsyht123 < /opt/mysql_bak_B.sql

通过脚本备份

# ls

# wsyht_gbk_bak.sql

# ls *.sql | sed ‘s#_bak.sql##g‘

wsyht_gbk

for dbname in `ls *.sql | sed ‘s#_bak.sql##g‘`;do mysql -uroot -pwsyht123 < ${dbname}_bak.sql;done

【在线修改参数】

mysql -uroot -pwsyht123 -e "set names latinl;use wsyht;select *from student;"

查看连接MySQL的连接数

mysql -uroot -pwsyht123 -e "show full processlist;"

查看有没有打开log-bin日志

mysql -uroot -pwsyht123 -e "show variables;" | grep log_bin

查看Mysql状态

mysql -uroot -pwsyht123 -e "show global status;" | grep sel

mysql -uroot -pwsyht123 -e "show global status like ‘%insert%‘;"

mysql -uroot -pwsyht123 -e "show global status;" | less status

通过echo实现(这个比较常见)

echo "show database;" | mysql -uroot -pwsyht123 -S /data/3308/mysql.sock

通过cat实现,这种用法不多

cat | mysql -uroot -pwsyht123 -S /data/3308/mysql.sock <<EOF

show database;

EOF

通过mysql -e 参数实现

mysql -uroot -pwsyht123 -S /data/3308/mysql.sock -e "show databases;"

【更改数据库参数不重启生效】

mysql> set global key_buffer_size=1024*1024*32; #设置索引缓存大小为32兆

mysql> show variables like "key_buffer%";  #查看设置的变量

【小技巧】

数据库批量插入数据shell脚本实现

http://oldboy.blog.51cto.com/2561410/597511

不登陆数据库搪行Mysql命令小结

http://oldboy.blog.51cto.com/2561410/632608

希望一起交流技术的可以通过以下方式联系我

我的运维群517751492

我的QQ1934844044

时间: 2024-11-05 22:58:23

MySQL备份恢复操作的相关文章

Mysql备份恢复

五.Mysql备份恢复 1.备份方式: ■直接phpmyadmin导出备份.我们用root管理权限进入phpmyadmin,然后把需要备份网站的mysql数据库导出备份,建议用gzip压缩格式 ■ mysqldump命令.我们用登陆SSH,然后用命令备份 ■ LVS快照备份  2.备份策略: ■ 完整备份 ■ 增量备份 ■ 差异备份 3.备份类型: ■ 冷备(cold backup):需要关mysql服务,读写请求均不允许状态下进行: ■ 温备(warm backup): 服务在线,但仅支持读请

Mysql 备份恢复的简单实践

一.备份: 进行mysql的安装目录: 使用./mysqldump -u root -h 127.0.0.1 -P 3306 -p mysql>trymysql.sql 输入密码,备份成功. 二.恢复 进行mysql. 创建数据库 create database trymysql; 进入数据库 use trymysql ; 恢复 source trymysql.sql Mysql 备份恢复的简单实践

mysql备份恢复详解

前言 为什么需要备份数据? 数据的备份类型 MySQL备份数据的方式 备份需要考虑的问题 设计合适的备份策略 实战演练 使用cp进行备份 使用mysqldump+复制BINARY LOG备份 使用lvm2快照备份数据 使用Xtrabackup备份 总结 前言 我们试着想一想, 在生产环境中什么最重要?如果我们服务器的硬件坏了可以维修或者换新, 软件问题可以修复或重新安装, 但是如果数据没了呢?这可能是最恐怖的事情了吧, 我感觉在生产环境中应该没有什么比数据跟更为重要. 那么我们该如何保证数据不丢

MySQL备份恢复基础知识及MySQLdump讲解

数据库备份恢复知识要点: 时间轴备份类型分类: 完全备份:备份整个数据集 增量备份:上一次完全备份,或上一次增量备份以后变化的数据的备份(还原麻烦,节省空间) 差异备份:仅备份最近一次完全备份以来变化的数据(还原简单,空间消耗大) 什么是物理备份.逻辑备份: 物理备份:直接复制数据文件进行备份(有可能占用更多的空间,备份速度快,做热备较难) 逻辑备份:从数据库中导出数据"另存为"而进行的备份(从二进制转化为文本格式,有可能丢失精度,需要专门的协议客户端才能进行,和数据存储引擎无关.备份

xtrabackup全备操作和误删备份恢复操作

1.安装percona源rpm -Uhv http://www.percona.com/downloads/percona-release/percona-release-0.0-1.x86_64.rpm 2.使用yum安装percona-xtrabackup:yum -y install percona-xtrabackupyum install -y perl-DBD-MySQL perl-DBI perl-Time-HiRes libaio* 3.安装结果rpm -qa |grep xtr

(转)解锁MySQL备份恢复的4种正确姿势

本文根据DBAplus社群第104期线上分享整理而成. 原文:http://dbaplus.cn/news-11-1267-1.html 讲师介绍   冯帅 点融网高级DBA 分享大纲: 备份高于一切,今天汇总一下常用的几种备份方法,以及恢复的步骤. 一.mysqldump 在日常工作中,我们会使用mysqldump命令创建SQL格式的转储文件来备份数据库.或者我们把数据导出后做数据迁移,主备搭建等操作.mysqldump是一个逻辑备份工具,复制原始的数据库对象定义和表数据产生一组可执行的SQL

07 : mysql备份恢复(1) - mysqldump命令使用

注意: mysql不同引擎备份方法不同.我们先来回忆一下和备份有关的知识点. 1.存储引擎(1)InnoDB(默认使用引擎,也是企业常用的) 热备 独立表空间(每个表一个表空间) redo:重做日志,用来前滚 undo:回滚日志,用来回滚(未提交的事务) 行级别锁,基于索引来实现的,GAP锁 支持事务.(2)MyISAM 温备 三个文件构成 表级锁 2.二进制日志(1)记录的是什么? DDL.DCL这些种类语句,记录的就是操作语句 DML:他记录的已提交的事务日志,并支持多种格式记录(row.s

Mysql 备份恢复与 xtrabackup备份

1.1 备份的原因 备份是数据安全的最后一道防线,对于任何数据丢失的场景,备份虽然不一定能恢复百分之百的数据(取决于备份周期),但至少能将损失降到最低.衡量备份恢复有两个重要的指标:恢复点目标(RPO)和恢复时间目标(RTO),前者重点关注能恢复到什么程度,而后者则重点关注恢复需要多长时间. 1.1.1 备份的目录 做灾难恢复:对损坏的数据进行恢复和还原 需求改变:因需求改变而需要把数据还原到改变以前 测试:测试新功能是否可用 1.1.2 备份中需要考虑的问题 可以容忍丢失多长时间的数据: 恢复

innobackupex备份恢复操作实录

下面开始做全备 [[email protected] mysql]# innobackupex --defaults/file=/etc/my.cnf /tmp 执行完以后产生/tmp/2017-03-28_15-50-37全备文件 下面做增量备份 innobackupex --incremental /tmp --incremental-basedir=/tmp/2017-03-28_15-50-37 产生文件/tmp/2017-03-28_15-52-55 下面做增量恢复,--apply-l