您好,登錄后才能下訂單哦!
這篇文章主要介紹“添加和刪除InnoDB數據和日志文件的方法”,在日常操作中,相信很多人在添加和刪除InnoDB數據和日志文件的方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”添加和刪除InnoDB數據和日志文件的方法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
--from 官方文檔
添加和刪除InnoDB數據和日志文件
這一節描述在InnoDB表空間耗盡空間之時,或者你想要改變日志文件大小之時,你可以做的一些事情。
最簡單的,增加InnoDB表空間大小的方法是從開始配置它為自動擴展的。為表空間定義里的最后一個數據文件指定autoextend屬性。然后在文件耗盡空間之時,InnoDB以8MB為 增量自動增加該文件的大小。增加的大小可以通過設置innodb_autoextend_increment值來配置,這個值以MB為單位,默認的是8。
作為替代,你可以通過添加另一個數據文件來增加表空間的尺寸。要這么做的話,你必須停止MySQL服務器,編輯my.cnf文件 ,添加一個新數據文件到innodb_data_file_path的末尾,然后再次啟動服務器。
如果最后一個數據文件是用關鍵字autoextend定義的,編輯my.cnf文件的步驟必須考慮最后一個數據文件已經增長到多大。獲取數據文件的尺寸,把它四舍五入到最接近乘積1024 × 1024bytes (= 1MB),然后在innodb_data_file_path中明確指定大致的尺寸。然后你可以添加另一個數據文件。記得只有innodb_data_file_path里最后一個數據可以被指定為自動擴展。
作為一個例子。假設表空間正好有一個自動擴展文件ibdata1:
innodb_data_home_dir = innodb_data_file_path = /ibdata/ibdata1:10M:autoextend
假設這個數據文件過一段時間已經長到988MB。下面是添加另一個總擴展數據文件之后的配置行:
innodb_data_home_dir = innodb_data_file_path = /ibdata/ibdata1:988M;/disk2/ibdata2:50M:autoextend
當你添加一個新文件到表空間的之后,請確信它并不存在。當你重啟服務器之時,InnoDB創建并初始化這個文件。
當前,你不能從表空間刪除一個數據文件。要增加表空間的大小,使用如下步驟:
1. 使用mysqldump轉儲所有InnoDB表。
2. 停止服務器。
3. 刪除所有已存在的表空間文件。
4. 配置新表空間。
5. 重啟服務器。
6. 導入轉儲文件。
如果你想要改變你的InnoDB日志文件的數量和大小,你必須要停止MySQL服務器,并確信它被無錯誤地關閉。隨后復制舊日志文件到 一個安全的地方以防萬一某樣東西在關閉時出錯而你需要用它們來恢復表空間。從日志文件目錄刪除所有舊日志文件,編輯my.cnf來改變日志文件配置,并再 次啟動MySQL服務器。mysqld在啟動之時發現沒有日志文件,然后告訴你它正在創建一個新的日志文件。
到此,關于“添加和刪除InnoDB數據和日志文件的方法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。