您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關MYSQL中怎么設置表空間,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
首先你的了解到 MYSQL 的變化,之前ibdata 文件存儲的數據 主要由
1 data dictionary 數據字典
2 change buffer
3 doublewrite buffer
4 undo logs
等組成,所以對 ibdata 文件的要求很大,并且希望是多個文件來支持MYSQL 的運行。
現在的ibdata 文件,已經將 undo logs doublewrite 等文件移出了 ibdata 文件(在MYSQL 5.7 官方沒有找到,在percona 版本中有innodb_parallel_doublewrite_path 的默認值,會在數據目錄中產生一個xb_doublewrite的文件
所以ibdata 文件的功能已經減少了。
另在innodb_file_per_table 是必須要打開的,不能再將所有數據都在灌入到ibdata文件中。
另外創建表已經可以直接使用類似 tablespace 這樣的方式,并且可以進行表在表空間的移動。但目前這樣做的情況是少之又少。
但我們需要知道如果遇到這樣問題如何處理,例如系統中有幾個表比較HOT ,那我們有一個其他的 data path 掛載了 SSD 盤,如何將部分HOT 表的文件移植到SSD 的磁盤上,就會遇到上面的要建立 table space 然后在建表的時候指定 在 SSD 上的TABLE SPACE。
具體操作是,參見下圖,需要注意的有以下幾點
1 建表的格式是什么 dynamic 還是 compressed 或者 compact
2 建立表空間時你這是的 file_block_size 是多少,是否符合你要的表的格式需要的 block_size???
以上就是MYSQL中怎么設置表空間,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。