1、备份单个数据库

mysql数据库自带了一个很好用的备份命令,就是mysqldump,他的基本使用如下:
语法:mysqldump -u 用户名 -p 数据库名 > 备份的文件名

     备份一
1、备份:mysqldump -uroot -p'*****' test >/opt/test_bak.sql
2、查看备份数据的内容 egrep -v "#|\*|--|^$" /opt/test_bak.sql
3、为了方便测试可以考虑将原来的表删除:mysql -uroot -p'*****' -e "use test;dorp table test;"
4、恢复:mysql -uroot -p'*****' test </opt/test_bak.sql
5、查看恢复的数据 mysql -uroot -p'*****' -e "select * from test;" 备份二
1、备份:mysqldump -uroot -p'*****' -B test >/opt/test_bak.sql 加了-B之后作用,增加了创建数据库和连接数据库的命令,加了比较好,-B可以指定多个库备份
2、恢复:mysql -uroot -p'*****' </opt/test_bak.sql 备份三
1、备份:mysqldump -uroot -p'*****' -B test|gzip >/opt/test_bak.sql.gz 压缩备份 备份四
1、备份:mysqldump -uroot -p'*****' -B test1 test2 |gzip >/opt/test_bak.sql 备份多个库

分库备份:

有时一个企业的数据库里会有多个库,但是出问题的时候很可能是某一个库,如果在备份时把所有的库都备份成了一个数据文件的话,恢复某一个库的数据时就比较麻烦了,所有-B是备份到一个数据文件里面的。

2、备份表

语法:mysqldump -u用户名 -p密码 数据库名 表名1 表2>备份的文件名 后面可以加若干个表

     分表备份:
每个表单独备份,而不是所有统一备份 备份表结构:
mysqldump -u用户名 -p密码 -d 数据库 表 >备份文件 备份数据:
mysqldump -u用户名 -p密码 -t 数据库 表 >备份文件

  

备份整个数据库,所有的东西
  mysqldump -u用户名 -p密码 -A -B --events|gzip >文件 -A是所有的东西

3、插曲

启用bin-log时,需要在配置文件里面开启
-F刷新bin-log,切割bin-log,不恢复老数据,恢复新数据 --master-data=1 找到bin-log的位置,与-F的功能是一样的 =2的时候会加上注释 #锁表
-x 锁表
-l 只读锁表
--single-transaction 适合innodb事务数据库备份,通常用它来保证备份的一致性,实际上它的工作原理是设定本次会话的隔离级别为:repeatable read,以确保本次会话dump时,不会看到其他会话已经提交了的数据

4、一个完整的备份过程

myisam引擎:mysqldump -uroot -p123 -A -B --master-data=2 -F -x --events|gzip >/opt/test.sql.gz

innodb:mysqldump -uroot -p123 -A -B --master-data=2 -F --single-transaction --events|gzip >/opt/test.sql.gz
如果是混合引擎就以myisam为主

5、恢复

1、source 恢复
进入mysql
  source /opt/13123.sql 2、标准的恢复命令mysql
mysql -uroot -p123 oldboy < /opt/13123.sql
压缩了的需要先解压
gzip -d mysql.sql.gz -d就是将文件保存为当前的名字,去掉gz

  

mysql完整备份与恢复的更多相关文章

  1. MySQL 完整和增量备份与恢复

    MySQL 完全备份与恢复 1.数据备份的重要性 在企业中数据的价值至关重要,数据保障了企业的业务的运行,因此数据的安全性及可靠性是运维的重中之重,任何数据的丢失都有可能会对企业产生严重的后果.造成数 ...

  2. MySQL增量备份与恢复实例【转】

    小量的数据库可以每天进行完整备份,因为这也用不了多少时间,但当数据库很大时,就不太可能每天进行一次完整备份了,这时候就可以使用增量备份.增量备份的原理就是使用了mysql的binlog日志.本次操作的 ...

  3. MYSQL的备份与恢复--逻辑备份mysqldump

    目录 0.备份与恢复概述 1.逻辑备份-完整备份与恢复 2.逻辑备份-增量备份与恢复 (1)环境准备 (2)恢复全量数据 (3)恢复增量备份 3.新来的开发妹子删了库! (1)模拟环境准备 (2)全备 ...

  4. 2020重新出发,MySql基础,MySql数据库备份与恢复

    @ 目录 MySQL数据库备份与恢复 数据库为什么需要备份 MySQL备份类型 MySQL热备份及恢复 逻辑备份 mysqldump SELECT INTO-OUTFILE mydumper 裸文件备 ...

  5. MySQL的备份与恢复

    Linux下的mysql的备份与恢复 备份: 比如我们要备份mysql中已经存在的名为linux的数据库,要用到命令mysqldump 命令格式如下: [root@linuxsir01 root]# ...

  6. Oracle数据库用户数据完整备份与恢复

    使用PLSQL-Developer工具可以快速便捷地完成Oracle数据库用户.表的备份恢复. Oracle数据库用户数据完整备份与恢复 1. 备份 1.1   PL/SQL->工具->导 ...

  7. Mysql 数据备份与恢复,用户创建,授权

    Mysql 数据备份与恢复,用户创建,授权 1. Mysqldump >outfile.sql 2. Mysql –uxxx –pxxx < backfile.sql 3. Create  ...

  8. Docker安装MySql完整教程、实操

    docker:官网 docker:镜像官网:        镜像官网可以所有应用,选择安装环境:会给出安装命令,例如:docker pull redis 默认拉取最新的版本(指定版本:docker p ...

  9. mysql 完整备份和恢复

    mysql 完整备份和恢复   一.MySQL完整备份操作 1.直接打包数据库文件夹 创建数据库auth: MariaDB [(none)]> create database auth;Quer ...

随机推荐

  1. mysql information_schema 数据库简介:

    .CHARACTER_SETS 表 CREATE TEMPORARY TABLE `CHARACTER_SETS` ( `CHARACTER_SET_NAME` varchar() NOT NULL ...

  2. bzoj2440 完全平方数 莫比乌斯值+容斥+二分

    莫比乌斯值+容斥+二分 /** 题目:bzoj2440 完全平方数 链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2440 题意:求第k个小x数 ...

  3. plsql 环境搭建(sqlplus环境设置)

    1. 初始化参数脚本 修改glogin.sql 脚本, 此脚本为登录 sql/plus时会读取的脚本, 可以在这个脚本上设置一些参数, 比如 set serveroutput on 等等, 那么在登录 ...

  4. 临界区(Critical Section)的封装和使用示例

    向我老大致敬! 这个做法其实是抄我老大的.服务器中,多线程经常需要使用临界区,为了简化代码的使用,把临界区封装为 CThreadLockHandle  类,通过封装,使用临界区资源每次只需要一行代码, ...

  5. kafka 安装步骤

    kafka安装文档 1.解压缩(官网下载:http://kafka.apache.org/downloads.html) tar -xzf kafka_2.10-0.8.2.0.tgz cd kafk ...

  6. asp.net调用系统设置字体文本框的方法

    本文实例展示了asp.net调用系统设置字体文本框的方法,是进行web开发中很实用的技巧.具体实现步骤如下: 一.调用系统字体文本框 首先在bin文件夹右击-->添加引用-->.net标签 ...

  7. hdu3665-Seaside(SPFA,dijkstra,floyd)

    Seaside Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Su ...

  8. Less-mixin函数基础二

    //mixin函数 基础使用方法 --包含选择器,example: .test(){ &:hover{ border:1px solid red; } } button{ .test; } / ...

  9. Oracle http://127.0.0.1:8080/apex无法访问解决方案

    造成无法访问的原因多数情况是由于Oracle中TNS的配置发生了改变. 造成TNS配置有问题的原因可能是:1. 修改了计算机名    2. 修改了IP 默认oracleXE 启动OracleXETNS ...

  10. ini_set('date.timezone','Asia/Shanghai');

    w 同样的代码,不一样的php ENV.