使用每表單個表空間

使用每表單個表空間

在使用xtrabackup之前,我們需要查看我們當前mysql是否是使用每表單個表空間,如果不是則必須將其修改爲每表單獨表空間

mysql> show global variables like '%innodb_file_p%'; 
+-----------------------+-------+ 
| Variable_name | Value | 
+-----------------------+-------+ 
| innodb_file_per_table | OFF | 
+-----------------------+-------+ 
1 row in set (0.00 sec)

這裏是關閉狀態,由此我們要啓動這個功能,將來一旦要用到xtrabackup或各種高級功能的話建議剛安裝mysql的時候直接將默認配置去寫進配置文件,中途再更改的話會非常麻煩,好在我們是測試環境,需能將數據導出更改配置再進行導入

[root@test2 ~]#mysqldump -uroot --lock-all-tables --all-databases --master-data=2 --events> ./1.sql

關閉數據庫

[root@test2 ~]#/etc/init.d/mysqld stop 
Shutting down MySQL.. SUCCESS!

編輯配置文件加入以下參數

[root@test2 ~]# vim/etc/my.cnf

innodb_file_per_table= 1

而後刪除數據文件並重新初始化

[root@test2 data]#pwd 
/mydata/data

刪除所有數據文件

[root@test2 data]# rm -fr *

初始化mysql

[root@test mysql]#pwd 
/usr/local/mysql 
[root@test mysql]# scripts/mysql_install_db --user=mysql--datadir=/mydata/data/ --basedir=/usr/local/mysql/

[root@test mysql]#/etc/init.d/mysqld start

再次查看是否是每表單獨表空間

mysql> showglobal variables like '%innodb_file_per%';

+-----------------------+-------+

|Variable_name | Value |

+-----------------------+-------+

|innodb_file_per_table | ON |

+-----------------------+-------+

1 row in set (0.00sec)

恢復數據

m ysql> source~/1.sql

[root@test2 data]#ll wpdb/

total 220

-rw-r--r--. 1 mysqlmysql 61 Apr 6 11:05 db.opt

-rw-r--r--.1 mysql mysql 8646 Apr 6 11:05 students.frm

-rw-r--r--.1 mysql mysql 98304 Apr 6 11:05students.ibd

-rw-r--r--. 1 mysql mysql 8556 Apr 6 11:05 tb4.frm

-rw-r--r--. 1 mysql mysql 98304 Apr 6 11:05 tb4.ibd

如上所示每個表都有單獨對應的表空間了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章