91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

innodb表 手工導入導出

發布時間:2020-07-21 03:05:28 來源:網絡 閱讀:485 作者:浮生鳳年 欄目:MySQL數據庫

上一篇文章介紹了“innobackupex 熱備指定庫表操作”,分析其整個過程,就是將表的字典和數據文件導出在導入的原理,那么針對單表的備份與恢復(新實例或者新庫中恢復),我們可以直接采用物理導出innodb表的辦法。
具體操作如下:
1.將備份表加鎖,導出cfg。

mysql> select * from t1;
+------+
| id |
+------+
| 1 |
| 2 |
| 3 |
| 4 |
| 2 |
| 3 |
| 4 |
+------+
7 rows in set (0.00 sec)

mysql> flush table t1 with read lock;
Query OK, 0 rows affected (0.01 sec)

發現t1生成了cfg文件。

[root@222 test]# ls
db.opt t1.cfg t1.frm t1.ibd t2.frm t2.ibd

執行unlock tables ,cfg文件回收。

mysql> unlock tables;
Query OK, 0 rows affected (0.00 sec)

[root@222 test]# ls ../test/
db.opt t1.frm t1.ibd t2.frm t2.ibd

2.在unlock tables前,將t1的cfg和ibd文件備份。

[root@222 test]# cp t1.ibd t1.cfg /home/backup/

3.創建一個新庫,并創建相同結構的t1表。
mysql> create database test1;
Query OK, 1 row affected (0.00 sec)
mysql>
mysql> use test1;
Database changed
mysql>
mysql> create table t1 like test.t1;
Query OK, 0 rows affected (0.03 sec)

4.刪除新建的t1表空間。

mysql> alter table t1 discard tablespace;
Query OK, 0 rows affected (0.02 sec)

發現新建的t1表空間的ibd文件被清除。

[root@222 test]# ls ../test1/
db.opt t1.frm

5.將備份的t1表的cfg和ibd文件拷貝到新建的庫下。
[root@222 test]# cd /home/backup/

[root@222 test1]# ll -trh
總用量 116K
-rw-rw----. 1 mysql mysql 61 12月 16 09:49 db.opt
-rw-rw----. 1 mysql mysql 8.4K 12月 16 09:49 t1.frm
-rw-r-----. 1 root root 96K 12月 16 09:51 t1.ibd
-rw-r-----. 1 root root 354 12月 16 09:51 t1.cfg
[root@222 test1]# chown -R mysql.mysql *
[root@222 test1]#
[root@222 test1]#
[root@222 test1]# ll -trh
總用量 116K
-rw-rw----. 1 mysql mysql 61 12月 16 09:49 db.opt
-rw-rw----. 1 mysql mysql 8.4K 12月 16 09:49 t1.frm
-rw-r-----. 1 mysql mysql 96K 12月 16 09:51 t1.ibd
-rw-r-----. 1 mysql mysql 354 12月 16 09:51 t1.cfg

6.執行新建t1表導入表空間操作。
mysql> alter table t1 import tablespace;
Query OK, 0 rows affected (0.08 sec)

7.查詢結果和第1步備份的表一致,操作完成

mysql> select * from test1.t1;
+------+
| id |
+------+
| 1 |
| 2 |
| 3 |
| 4 |
| 2 |
| 3 |
| 4 |
+------+
7 rows in set (0.00 sec)

btw.
a.由于新表存在cfg文件,在刪除庫操作的時候會報錯,
ERROR 1010 (HY000): Error dropping database (can't rmdir './test1/', errno: 17)
如果使用innobackupex備份,并導入的exp文件,則會發現刪除庫后,exp文件無法刪除,那么手工將exp文件刪除,在刪除庫即可。
如果使用如上方法手工命令方式導入cfg文件,在刪除庫時報錯,但是查看庫文件時發現無文件,則在執行一遍即可;對于新導入的cfg文件,可以在次執行如下命令,則cfg文件消失。
mysql> flush table t1 for export;
Query OK, 0 rows affected (0.00 sec)

[root@222 test1]# ll -trh
總用量 116K
-rw-rw----. 1 mysql mysql 61 12月 16 09:49 db.opt
-rw-rw----. 1 mysql mysql 8.4K 12月 16 09:56 t1.frm
-rw-r-----. 1 mysql mysql 96K 12月 16 09:56 t1.ibd
-rw-r-----. 1 mysql mysql 355 12月 16 09:57 t1.cfg

mysql>
mysql>
mysql> unlock tables;
Query OK, 0 rows affected (0.00 sec)

[root@222 test1]# ll -trh
總用量 112K
-rw-rw----. 1 mysql mysql 61 12月 16 09:49 db.opt
-rw-rw----. 1 mysql mysql 8.4K 12月 16 09:56 t1.frm
-rw-r-----. 1 mysql mysql 96K 12月 16 09:56 t1.ibd

b.發現手工命令行方式備份恢復更加便捷,但是會有一個鎖表的過程,那么則根據不同情況選擇不同方式進行備份,對于線上有寫入的表采用innobackupex方式,不會導致復制延遲;對于無寫入的表,直接采用加鎖導入cfg文件方式,操作更加便捷。

OK,done。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

固镇县| 肥东县| 舟曲县| 芦山县| 赤峰市| 商都县| 蓝田县| 黄龙县| 荥经县| 临清市| 翼城县| 曲周县| 乐至县| 湖北省| 屏边| 汉川市| 临漳县| 平南县| 正定县| 且末县| 民县| 当阳市| 红河县| 昌平区| 瓦房店市| 稻城县| 安康市| 基隆市| 公主岭市| 罗源县| 鄂托克前旗| 潮安县| 岑巩县| 会东县| 乐业县| 东乡县| 长海县| 祁连县| 莱西市| 深州市| 兴山县|