欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Mysql中备份表的多种方法,

来源: javaer 分享于  点击 24512 次 点评:104

Mysql中备份表的多种方法,


目录
  • 1.第一种,小表的备份
  • 2.第2种,对整个数据库的备份与恢复  
    • 2.1 对整个数据库进行备份
    •  2.2 对整个数据库进行恢复
  • 3.第3种,对某个数据表进行备份
    • 3.1 对整个数据表进行备份
    • 3.2 对整个数据表进行恢复
  • 四.第4种,制定时间点的备份和恢复和实时二进制日志备份
    • 五.使用xtrabackup进行备份

      1.第一种,小表的备份

      1.create   table  A   as  select *  from  B

      2.create table  A   like  select  * from B

      3.分布操作

      create table A like B;

      insert into B select * from A;

      2.第2种,对整个数据库的备份与恢复  

      2.1 对整个数据库进行备份

         1.创建备份用户和密码:zhangsan_backup/zs123
          create user 'zhangsan_backup'@'localhost' identified by 'zs123';
         2.赋予该用户有哪些权限
          grant  select ,reload,lock tables,replication client,show view,event,process on *.* to 'zhangsan_backup'@'localhost';
         3.备份数据
          #1
          mysqldump  -uzhangsan_backup -p --master-data=2 --single-transaction --routines --triggers --events bonc_test > e:\\bonc_test2.sql
         #2
         mysqldump  -uzhangsan_backup -p  bonc_test >   e:\\bonc_test.sql

       mysql> create user 'zhangsan_backup'@'localhost' identified by 'zs123';
      ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
      mysql> flush privileges;
      Query OK, 0 rows affected (0.15 sec)
       
      mysql> create user 'zhangsan_backup'@'localhost' identified by 'zs123';
      Query OK, 0 rows affected (0.02 sec)
       
      mysql> grant  select ,reload,lock tables,replication client,show view,event,process on *.* to 'zhangsan_backup'@'localho
      st';
      Query OK, 0 rows affected (0.02 sec)
       
      C:\Windows\system32>mysqldump  -uzhangsan_backup -p --master-data=2 --single-transaction --routines --triggers --events
      bonc_test > e:\\bonc_test2.sql
      Enter password: *****
       
      C:\Windows\system32>

      注意如果在操作中报:mysqldump: Error: Binlogging on server not active的错误,则在windows中的my.ini文件中最后面新增:

      #备份数据库
      log-bin=mysql-bin
      server-id=1
      然后重新启动服务。即可。

       2.2 对整个数据库进行恢复

      #1.先创建一个数据库
      create database bak_bonc_test;
      #2.进行恢复数据
      mysql -uroot -p bak_bonc_test <e:\\bonc_test2.sql

      #3.查看:

      3.第3种,对某个数据表进行备份

      3.1 对整个数据表进行备份

      库:bonc_test        表: user_login_tb

       mysqldump  -uzhangsan_backup -p --master-data=2 --single-transaction --routines --triggers --events bonc_test  user_login_tb > e:\\user_login_tb.sql

      3.2 对整个数据表进行恢复

      #先删除bak_bonc_test 库中 user_login_tb的这个表

      #对其进行恢复: source e:\\user_login_tb.sql;

      四.第4种,制定时间点的备份和恢复和实时二进制日志备份

      这两部分后续完善,参考《可扩展高性能mysql》第4天

      五.使用xtrabackup进行备份

      https://www.jb51.net/article/266542.htm

      到此这篇关于Mysql中备份表的几种方法(三种方法)的文章就介绍到这了,更多相关mysql备份表内容请搜索3672js教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持3672js教程!

      您可能感兴趣的文章:
      • MySQL基于java实现备份表操作
      • MySQL数据备份之mysqldump的使用方法
      • MySQL学习之数据库备份详解
      • MySQL 数据库定时备份的几种方式(全面)
      • mysql备份策略的实现(全量备份+增量备份)
      相关栏目:

      用户点评