mysql備份表的兩種方法(資料遷移)

2021-10-05 07:14:49 字數 961 閱讀 3144

mysql備份的兩種方法(傳輸方式:單錶傳輸),在資料量小的情況下一般採用insert的方法向備份表中插入資料。當源表的資料量過大時使用表空間的方式進行資料的遷移。

第一種方法:(針對表中資料量小的情況)

(1)使用源表的表結構建新的備份表;(源表為t1,備份表為t1_copy)

create table t1_copy like t1;
(2)插入資料到備份表中。

insert into t1_copy (select * from t1);
第二種方法:(通過表空間傳輸的方式對錶進行備份,針對表資料量大的情況)

(1)建立備份(目標)表(方法如第一種方法(1))

(2)目標資料表,丟棄表空間;

alter table t1 discard tablespace;
(3)源資料表停頓鎖表;

flush tables t1 for export ;
(4)複製.cfg和.ibd檔案到目標資料庫

show  global variables like '%datadir%';
找到mysql庫資料的存放位置

在linux伺服器中輸入命令

cp t1.cfg t1_copy(備份表名).cfg

cp t1.ibd t1_copy(備份表名).ibd

(5)源資料表解鎖

unlock tables;
(6)給檔案許可權linux

chown mysql:mysql t1*.ibd
(7)同步資料到目標表

alter table t1 import tablespace;

mysql清空資料表的兩種方法對比

truncate table test table truncate是整體刪除 速度較快 此命令刪除表不寫日誌,不啟用觸發器,但是會重置標識列 自增字段 delete from test table delete 清空表,是逐條刪除,會寫日誌到伺服器,常用場景 刪除部分記錄,結合where條件刪除表...

鏈結mysql的兩種方法

您可以使用mysql二進位制方式進入到mysql命令提示符下來連線mysql資料庫。例項以下是從命令列中連線mysql伺服器的簡單例項 root host mysql u root p enter password 在登入成功後會出現 mysql 命令提示視窗,你可以在上面執行任何 sql 語句。以...

兩種方法連線MySql資料庫

1 用mysqldrivercs連線mysql資料庫 using system using system.collections.generic using system.componentmodel using system.data using system.data.odbc using sy...