#1. 建立相同結構的表,並新增幾條測試資料
mysql> create table test3 like test;
mysql> select * from test3;+--
----+--
----+--
--+----
----
----
----
-----+
----
----+--
----
------+
| age | name | id | create_time | is_man | salary_amt |+--
----+--
----+--
--+----
----
----
----
-----+
----
----+--
----
------+
|11|11
|1|2021-01
-2811:
15:11|
1|11.00||
22|22|
2|2021-01
-2811:
15:11|
1|11.00|+
------+
------+
----+--
----
----
----
-------
+--------+
----
----
----
+#2. 檢視當前資料庫資料儲存位置,備份 test3.idb
mysql> select @@datadir;+
----
----
----
----
----
----
+| @@datadir|+
----
----
----
----
----
----+|
/usr/local/mysql/data/|+
----
----
----
----
----
----
+[root@hadoop001 test_db]# pwd
/usr/local/mysql/data/test_db
[root@hadoop001 test_db]# ll
total 220
-rw-r-----
1 mysqladmin dba 61 jan 1618:
12 db.opt
-rw-r-----
1 mysqladmin dba 8734 jan 2811:
14 test3.frm
-rw-r-----
1 mysqladmin dba 98304 jan 2811:
21 test3.ibd
#3. 刪除表空間 注: show global variables like 'innodb_file_per_table'
; 是否 on 狀態
mysql> alter table test3 discard tablespace;
query ok,
0 rows affected (
0.01 sec)
# test3.idb 被刪除
[root@hadoop001 test_db]# ll
total 124
-rw-r-----
1 mysqladmin dba 61 jan 1618:
12 db.opt
-rw-r-----
1 mysqladmin dba 8734 jan 2811:
14 test3.frm
#4. 恢復表空間
#4.1 修改檔案許可權
-rw-r-----
1 mysqladmin dba 61 jan 1618:
12 db.opt
-rw-r-----
1 mysqladmin dba 8734 jan 2811:
14 test3.frm
-rw-r-----
1 root root 98304 jan 2813:
47 test3.ibd
-rw-r-----
1 mysqladmin dba 8734 jan 2616:
31 test.frm
-rw-r-----
1 mysqladmin dba 98304 jan 2616:
32 test.ibd
[root@hadoop001 test_db]# chown -r mysqladmin:dba test3.ibd
[root@hadoop001 test_db]# ll
total 220
-rw-r-----
1 mysqladmin dba 61 jan 1618:
12 db.opt
-rw-r-----
1 mysqladmin dba 8734 jan 2811:
14 test3.frm
-rw-r-----
1 mysqladmin dba 98304 jan 2813:
47 test3.ibd
-rw-r-----
1 mysqladmin dba 8734 jan 2616:
31 test.frm
-rw-r-----
1 mysqladmin dba 98304 jan 2616:
32 test.ibd
#4.2 執行mysql命令,idb與test3表空間繫結
mysql> alter table test3 import tablespace;
query ok,
0 rows affected,
1 warning (
0.08 sec)
#5. 驗證結果
mysql> select * from test3;+--
----+--
----+--
--+----
----
----
----
-----+
----
----+--
----
------+
| age | name | id | create_time | is_man | salary_amt |+--
----+--
----+--
--+----
----
----
----
-----+
----
----+--
----
------+
|11|11
|1|2021-01
-2811:
15:11|
1|11.00||
22|22|
2|2021-01
-2811:
15:11|
1|11.00|+
------+
------+
----+--
----
----
----
-------
+--------+
----
----
----
+2 rows in set (
0.00 sec)
mysql庫遷移 mysql資料庫遷移
由於yum安裝mysql的時候,資料庫的data目錄預設是在 var lib下,出於資料安全性的考慮需要把它挪到 data分割槽。步驟如下 一 關閉apache和mysql.複製 如下 二 將 var lib下的mysql目錄mv 移動 到data目錄。為什麼要用mv命令,而不用cp命令呢?應為li...
MySQL資料庫的庫表遷移
最近在研究mysql資料庫的庫表遷移問題,主要分為兩種情況,一種情況是遷移資料庫的表的全部字段,另一種是遷移資料庫的表的部分字段。前一種情況是直接使用mysqldump命令來實現,後一種情況則是採用資料寫入本地再匯入mysql的思路。顯然前一種情況也可以採用後一種情況的思路實現,但使用mysqldu...
mysql資料庫,資料遷移a表到b表
開發新專案但是用到了舊專案的資料,欄位名也發生了變化,怎麼樣把老資料匯入新錶?mysql資料庫,資料遷移a表到b表可以通過以下sql實現,通過select b表的字段,用於對應a表的字段,進行填充,這樣可以實現 insert into bdatas tj members bankinfo uid,b...