首頁 > 軟體

Mysql中備份表的多種方法

2022-11-03 14:02:25

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:Windowssystem32>mysqldump  -uzhangsan_backup -p --master-data=2 --single-transaction --routines --triggers --events
bonc_test > e:\bonc_test2.sql
Enter password: *****
 
C:Windowssystem32>

注意如果在操作中報: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備份表內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com