日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

MySQL 復制表的方法

瀏覽:80日期:2023-10-05 10:15:12
1、mysqldump執行過程:

一、將數據導出為 sql 文件。

mysqldump -h$host -P$port -u$user --add-locks=0 --no-create-info --single-transaction --set-gtid-purged=OFF db1 t --where='a>900' --result-file=/client_tmp/t.sql

將數據導出為 sql 文件保存。上面幾個參數的含義分別是:

1、?single-transaction 的作用是,在導出數據的時候不需要對表 db1.t 加表鎖,而是使用 START TRANSACTION WITH CONSISTENT SNAPSHOT 的方法;

2、?add-locks 設置為 0,表示在輸出的文件結果里,不增加' LOCK TABLES t WRITE;' ;

3、?no-create-info 的意思是,不需要導出表結構;

4、?set-gtid-purged=off 表示的是,不輸出跟 GTID 相關的信息;

5、?result-file 指定了輸出文件的路徑,其中 client 表示生成的文件是在客戶端機器上的。

二、執行文件,添加到表中

mysql -h127.0.0.1 -P13000 -uroot db2 -e 'source /client_tmp/t.sql'

source 并不是一條 SQL 語句,而是一個客戶端命令。也就是服務器端具體執行的是文件中的一條條 sql 語句,所以 binlog 記錄的都是具體的 sql。

特點

1、生成的 sql 文件保存在客戶端

2、默認保存數據方式是多個記錄對,如下面格式

MySQL 復制表的方法

如果想要保存為一條語句只保存一條記錄,那么可以加上參數?skip-extended-insert。

2、導出 CSV 文件(最靈活)執行過程

一、導出為 CSV 文件

select * from db1.t where a>900 into outfile ’/server_tmp/t.csv’;

注意:

1、into outfile 指定了文件的生成位置(/server_tmp/),這個位置必須受參數 secure_file_priv 的限制。

參數 secure_file_priv 的可選值和作用分別是:

1)如果設置為 empty,表示不限制文件生成的位置,這是不安全的設置;

2)如果設置為一個表示路徑的字符串,就要求生成的文件只能放在這個指定的目錄,或者它的子目錄;

3)如果設置為 NULL,就表示禁止在這個 MySQL 實例上執行 select … into outfile 操作。

2、如果同一個目錄下存在同名文件,就會報錯

3、一般情況下一條記錄就對應 CSV 文件中的一行,但是如果某個字段值中有 '換行、制表符' 那么文件中也會包含,并且使用 '' 來轉義。

二、導入數據

load data infile ’/server_tmp/t.csv’ into table db2.t;

過程:

1、打開文件 /server_tmp/t.csv,以制表符 (t) 作為字段間的分隔符,以換行符(n)作為記錄之間的分隔符,進行數據讀??;

2、啟動事務。

3、判斷每一行的字段數與表 db2.t 是否相同:

1)若不相同,則直接報錯,事務回滾;

2)若相同,則構造成一行,調用 InnoDB 引擎接口,寫入到表中。

4、重復步驟 3,直到 /server_tmp/t.csv 整個文件讀入完成,提交事務。

特點

1、文件保存在服務器端

2、關于 binlog 的記錄,過程如下:

1)主庫執行完成后,將 /server_tmp/t.csv 文件的內容直接寫到 binlog 文件中。

2)往 binlog 文件中寫入語句 load data local infile ‘/tmp/SQL_LOAD_MB-1-0’ INTO TABLE `db2`.`t`。

3)把這個 binlog 日志傳到備庫。

4)備庫的 apply 線程在執行這個事務日志時:

a. 先將 binlog 中 t.csv 文件的內容讀出來,寫入到本地臨時目錄 /tmp/SQL_LOAD_MB-1-0 中;

b. 再執行 load data 語句,往備庫的 db2.t 表中插入跟主庫相同的數據。

MySQL 復制表的方法

關于 'local':

1)不加“local”,是讀取服務端的文件,這個文件必須在 secure_file_priv 指定的目錄或子目錄下;

2)加上“local”,讀取的是客戶端的文件,只要 mysql 客戶端有訪問這個文件的權限即可。這時候,MySQL 客戶端會先把本地文件傳給服務端(其他會話涉及的操作),然后執行上述的 load data 流程。

3、上面的導出操作并不會導出表結構,所以,如果向導出表結構,可以使用 mysqldump 來同時導出 CSV 和表結構

mysqldump -h$host -P$port -u$user --single-transaction --set-gtid-purged=OFF db1 t --where='a>900' --tab=$secure_file_priv

會在$secure_file_priv 定義的目錄下,創建一個 t.sql 文件保存建表語句,同時創建一個 t.txt 文件保存 CSV 數據。

3、物理拷貝(最快)

在5.6之前,想要直接把.frm和.ibd文件拷貝到要拷貝的目錄下是不行的,因為一個Innodb表除了需要這兩個文件還需要在數據字典中注冊。但是從 5.6 開始可以解決這一問題,在 5.6 引入了可傳輸空間,可以通過導出 + 導入表空間來實現拷貝

過程

假設我們現在的目標是在 db1 庫下,復制一個跟表 t 相同的表 r,具體的執行步驟如下:

1、執行 create table r like t,創建一個相同表結構的空表;

2、執行 alter table r discard tablespace,這時候 r.ibd 文件會被刪除;

3、執行 flush table t for export,這時候 db1 目錄下會生成一個 t.cfg 文件;

4、在 db1 目錄下執行 cp t.cfg r.cfg; cp t.ibd r.ibd;這兩個命令(這里需要注意的是,拷貝得到的兩個文件,MySQL 進程要有讀寫權限);

5、執行 unlock tables,這時候 t.cfg 文件會被刪除;

6、執行 alter table r import tablespace,將這個 r.ibd 文件作為表 r 的新的表空間,由于這個文件的數據內容和 t.ibd 是相同的,所以表 r 中就有了和表 t 相同的數據。

MySQL 復制表的方法

注意:

1、在第 3 步執行完 flsuh table 命令之后,db1.t 整個表處于只讀狀態,直到執行 unlock tables 命令后才釋放讀鎖;

2、在執行 import tablespace 的時候,為了讓文件里的表空間 id 和數據字典中的一致,會修改 r.ibd 的表空間 id。而這個表空間 id 存在于每一個數據頁中。因此,如果是一個很大的文件(比如 TB 級別),每個數據頁都需要修改,所以你會看到這個 import 語句的執行是需要一些時間的。當然,如果是相比于邏輯導入的方法,import 語句的耗時是非常短的。

局限

1、必須是全表拷貝,不能條件拷貝

2、需要到服務器上拷貝數據,在用戶無法登錄數據庫主機的場景下無法使用

3、由于是通過拷貝物理文件實現的,源表和目標表都是使用 InnoDB 引擎時才能使用

總結

1、前兩個都是邏輯備份,也就是可以跨引擎使用,最后一個不行

2、前兩個可以條件拷貝,最后一個不行

3、第二個功能是最靈活的,但是在集群從庫接收時會比較耗時(需要先拷貝 CSV 文件數據到本地臨時文件),最后一個執行效率是最高的,但是不能跨引擎,且只能進行全量拷貝。

以上就是MySQL 復制表的方法的詳細內容,更多關于MySQL 復制表的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产一区二区三区天码| 国语精品一区| 国产成人久久精品一区二区三区| 国产美女亚洲精品7777| 精品网站999| 99国产精品99久久久久久粉嫩| 欧美成人精品午夜一区二区| 久久精品超碰| 欧美日韩午夜电影网| 日韩国产91| 国产精品久久国产愉拍| 婷婷精品在线观看| 四虎精品一区二区免费| 日韩1区2区日韩1区2区| 国产麻豆精品| 麻豆国产精品视频| 中文在线а√在线8| 日韩成人综合| 免费精品国产的网站免费观看| 黄色不卡一区| 免费看的黄色欧美网站| 日本亚洲三级在线| 国产精品15p| 国产va在线视频| 精品一区三区| 中文字幕日韩高清在线| 亚洲精品观看| 日韩国产欧美在线视频| 欧美精品不卡| 蜜臀国产一区| 亚洲精品中文字幕乱码| 亚洲一二av| 国产精品一区二区中文字幕| 97精品视频在线看| 国产综合欧美| 日韩精品中文字幕一区二区| 国产劲爆久久| 蜜桃视频欧美| 日韩精品欧美成人高清一区二区| 国产欧美啪啪| 国产伦理久久久久久妇女| 欧美亚洲综合视频| 欧美一区91| 亚洲在线久久| 蜜臀av性久久久久蜜臀aⅴ流畅 | 国产精品人人爽人人做我的可爱| 国产精品v一区二区三区| 福利一区二区| 国产农村妇女精品一区二区| 欧美偷窥清纯综合图区| 亚洲综合电影| 亚洲精品伦理| 福利一区和二区| 久久精品在线| 日韩国产在线观看| 久久久久午夜电影| 亚久久调教视频| 正在播放日韩精品| 亚洲精品综合| 欧美sss在线视频| 日本亚洲三级在线| 国产精品高颜值在线观看| 石原莉奈在线亚洲三区| 精品中文在线| 免费精品视频| 黄毛片在线观看| 日本欧洲一区二区| 欧美xxxx中国| 中文字幕成人| 都市激情国产精品| 日韩精品导航| 999久久久亚洲| 国产精品sm| 亚洲欧洲另类| 精品成av人一区二区三区| 先锋亚洲精品| 日韩美女一区二区三区在线观看| 亚洲日产国产精品| 天堂av在线| 日韩av网站免费在线| 亚洲国产专区| 久久精品国产网站| 亚洲1区在线| 欧美成人基地 | 精品午夜视频| 亚洲理论在线| 免费在线成人| 久久狠狠久久| 久久影院一区二区三区| 国产伦理一区| 久久精品亚洲人成影院 | 日韩欧美不卡| 国内激情久久| 欧美gv在线| 日韩成人午夜精品| 亚洲一本视频| 国产传媒在线观看| 国产日韩免费| 婷婷成人av| 欧美特黄a级高清免费大片a级| 国产在线观看91一区二区三区| 日韩中文字幕| 六月天综合网| 国产一区白浆| 蜜桃国内精品久久久久软件9| 国产一区二区久久久久| 蜜桃视频一区二区| 国产手机视频一区二区| 蜜桃av在线播放| 激情中国色综合| 国产精品第一国产精品| 日本成人中文字幕在线视频| 中文字幕中文字幕精品| 另类激情亚洲| 午夜在线精品| 国产精品女主播一区二区三区| 欧美日韩精品在线一区| 高清久久一区| yellow在线观看网址| 91亚洲国产成人久久精品| 国内精品麻豆美女在线播放视频| 免费在线观看一区| 日韩精品免费观看视频| 日韩一区二区三区高清在线观看| 中文字幕亚洲在线观看| 亚洲美女久久| 婷婷精品在线| 青青草国产精品亚洲专区无| 日韩精品成人| 国产美女撒尿一区二区| 国产日韩欧美中文在线| 欧产日产国产精品视频| 国产剧情一区| 亚洲香蕉网站| 日韩欧美一区二区三区在线视频| 欧美国产三级| 美女久久精品| 国产日韩欧美在线播放不卡| 亚洲国产福利| 日韩专区欧美专区| 精品高清久久| 欧美在线亚洲| 久久久精品五月天| 久久久成人网| 好吊日精品视频| 在线观看一区| 亚洲精品乱码久久久久久蜜桃麻豆 | 六月丁香综合| 视频一区日韩精品| 亚洲精品亚洲人成在线观看| 日韩一区二区三区精品| 国产精品一区二区三区四区在线观看| 美女高潮久久久| 日韩啪啪电影网| 亚洲激情黄色| 日韩福利视频一区| 老司机精品在线| 日韩欧美一区二区三区在线视频 | 亚洲精品激情| 欧美视频精品全部免费观看| 捆绑调教美女网站视频一区 | 国内自拍视频一区二区三区| 99精品视频精品精品视频| 丝袜美腿亚洲一区| 欧美日韩夜夜| 日韩成人综合| 亚洲欧美视频| 国产伦乱精品| 91精品美女| 青青青国产精品| 亚洲激情国产| 影音先锋久久| 精品伊人久久| 国产h片在线观看| 亚洲3区在线| 日本 国产 欧美色综合| 日韩精品免费一区二区三区| 精品在线网站观看| 高清日韩中文字幕| 精品久久99| 自拍日韩欧美| 日本国产精品| 最新亚洲一区| 久久不卡国产精品一区二区| 久久精品亚洲人成影院 | 91久久黄色| 麻豆久久久久久久| 午夜久久久久| 欧美激情aⅴ一区二区三区| 99久久久久| 国产欧美视频在线| 婷婷激情图片久久| 国产精品视频首页| 妖精视频成人观看www| 麻豆精品在线播放| 蜜桃视频一区二区三区 | 国产成人免费av一区二区午夜| 亚洲欧美视频| 国产不卡人人| 日本aⅴ免费视频一区二区三区|