[JAVA] Mysql中备份表的多种方法

1987 0
黑夜隐士 2022-11-6 10:22:02 | 显示全部楼层 |阅读模式
目录

    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
  1. mysql> create user 'zhangsan_backup'@'localhost' identified by 'zs123';
  2. ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
  3. mysql> flush privileges;
  4. Query OK, 0 rows affected (0.15 sec)
  5. mysql> create user 'zhangsan_backup'@'localhost' identified by 'zs123';
  6. Query OK, 0 rows affected (0.02 sec)
  7. mysql> grant  select ,reload,lock tables,replication client,show view,event,process on *.* to 'zhangsan_backup'@'localho
  8. st';
  9. Query OK, 0 rows affected (0.02 sec)
  10. C:\Windows\system32>mysqldump  -uzhangsan_backup -p --master-data=2 --single-transaction --routines --triggers --events
  11. bonc_test > e:\\bonc_test2.sql
  12. Enter password: *****
  13. C:\Windows\system32>
复制代码
注意如果在操作中报:mysqldump: Error: Binlogging on server not active的错误,则在windows中的my.ini文件中最后面新增:
#备份数据库
log-bin=mysql-bin
server-id=1
然后重新启动服务。即可。



2.2 对整个数据库进行恢复
  1. #1.先创建一个数据库
  2. create database bak_bonc_test;
  3. #2.进行恢复数据
  4. 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备份表内容请搜索中国红客联盟以前的文章或继续浏览下面的相关文章希望大家以后多多支持中国红客联盟!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

中国红客联盟公众号

联系站长QQ:5520533

admin@chnhonker.com
Copyright © 2001-2025 Discuz Team. Powered by Discuz! X3.5 ( 粤ICP备13060014号 )|天天打卡 本站已运行