MySQL InnoDB系統表空間資料檔案配置
系統表空間資料檔案配置
系統表空間資料檔案是透過innodb_data_file_path和innodb_data_home_dir配置選項來進行配置的。
innodb_data_file_path配置選項被用來配置InnoDB系統表空間資料檔案。innodb_data_file_path應該是一個或多個資料檔案的規範列表。如果要命名多個資料檔案,使用分號(;)來進行分隔:
innodb_data_file_path=datafile_spec1[;datafile_spec2]...
例如,下面的設定建立一個最小大小的系統表空間:
[mysqld] innodb_data_file_path=ibdata1:12M:autoextend
上面的設定配置一個12MB大小命名為ibdata1且自動擴充套件的資料檔案。這裡沒有指定檔案路徑,因此,InnoDB將在MySQL資料目錄中建立該檔案。
資料檔案大小可以透過K,M,或G字尾來指示KB,MG或GB。
如果一個表空間包含一個名為ibdata1固定大小為50MB和一個名為ibdata2大小為50MB自動擴充套件的資料檔案可以進行以下配置:
[mysqld] innodb_data_file_path=ibdata1:50;ibdata2:50:autoextend
資料檔案規範的完整語法包括檔名,檔案大小和多個選項屬性:
file_name:file_size[:autoextend[:max:max_file_size]]
autoexten和max屬性只能用於innodb_data_file_path行中的最後一個資料檔案
如果對最後一個資料檔案指定了autoextend,當表空間中沒有可用空間時InnoDB會擴充套件資料檔案大小。預設情況下是一次擴充套件64MB。為了修改增量,可以修改innodb_autoextend_increment系統變數。
如果儲存表空間資料檔案的磁碟空間填滿,可以在其實磁碟上給表空間增加資料檔案。
InnoDB不知道檔案系統的最大檔案大小,因此要注意檔案系統的最大檔案大小,比如2GB。為了給自動擴充套件的資料檔案指定一個最大大小,在autoextend屬性後面使用max屬性。只在限制磁碟使用至關重要的情況下使用max屬性,因為超過最大大小會導致致命的錯誤,可能包括崩潰。下面的設定允許ibdata1增長到限制所指定的500MB:
[mysqld] innodb_data_file_path=ibdata1:12M:autoextend:max:500M
預設情況下InnoDB在MySQL資料目錄(datadir)中建立表空間檔案。為了顯式指定儲存位置,使用innodb_data_home_dir選項。例如,為了在名為myibdata目錄中建立兩個名為ibdata1和ibdata2的資料檔案,使用如下配置:
[mysqld] innodb_data_home_dir=/path/to/myibdata/ innodb_data_file_path=ibdata1:50M;ibdata2:50M:autoextend
注意:在給innodb_data_home_dir指定值時需要使用斜杆。
InnoDB不會建立目錄,因此確保在啟動MySQL伺服器之前指定的myibdata目錄已經存在。還要確保MySQL伺服器對所指定的目錄有正確的許可權來建立檔案。更通俗地說,伺服器必須在需要建立資料檔案的任何目錄中具有訪問許可權。
InnoDB透過將innodb_data_home_dir的值與資料檔名進行文字連線來形成每個資料檔案的目錄路徑。如果在my.cnf中沒有指定innodb_data_home_dir選項,那麼預設值是“dot”目錄./,意思是MySQL資料目錄。(MySQL伺服器在開始執行時將其當前工作目錄更改為資料目錄。)
如果將innodb_data_home_dir指定為空字串,則可以為innodb_data_file_path值中列出的資料檔案指定絕對路徑。下面的示例等價於上面的設定:
[mysqld] innodb_data_home_dir= innodb_data_file_path=/path/to/myibdata/ibdata1:50M;/path/to/myibdata/ibdata2:50M:autoextend
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26015009/viewspace-2871743/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL innodb共享表空間新增表空間資料檔案方法MySql
- MySQL InnoDB Undo表空間配置MySql
- 移動資料檔案、系統表空間檔案、臨時表空間檔案
- MySQL 增加InnoDB系統表空間大小MySql
- InnoDB資料表空間檔案平滑遷移
- MySQL 系統表空間檔案解析MySql
- MySQL InnoDB臨時表空間配置MySql
- MySQL innodb表使用表空間物理檔案複製表MySql
- MySQL 減少InnoDB系統表空間的大小MySql
- MySQL InnoDB表空間加密MySql加密
- MySQL InnoDB 共享表空間和獨立表空間MySql
- MySQL InnoDB 共享表空間和獨立表空間MySql
- 達夢資料庫系統表空間資料檔案遷移過程資料庫
- Oracle 表空間與資料檔案Oracle
- 表空間和資料檔案管理
- oracle 資料檔案表空間管理Oracle
- 表空間中有資料也可以壓縮表空間(資料檔案)大小
- 表空間&資料檔案和控制檔案(zt)
- 表空間和資料檔案的管理
- oracle 表空間 資料檔案 筆記Oracle筆記
- 資料檔案,表空間的移動
- 表空間資料檔案故障處理
- 線上遷移表空間資料檔案
- Oracle 表空間資料檔案遷移Oracle
- 表空間新增資料檔案的疑惑
- MySQL InnoDB File-Per-Table表空間MySql
- oracle 將表空間下的資料檔案從檔案系統遷移到ASM磁碟組OracleASM
- 檢視Oracle資料庫表空間大小,是否需要增加表空間的資料檔案Oracle資料庫
- oracle 普通表空間資料檔案壞塊Oracle
- 表空間(資料檔案shrink)收縮示例
- oracle 回收表空間的資料檔案大小Oracle
- 誤刪oracle資料庫表空間檔案Oracle資料庫
- 重新命名資料檔案和表空間
- 錯誤新增表空間的資料檔案
- MySQL 磁碟空間滿導致表空間相關資料檔案損壞故障處理MySql
- MySQL InnoDB日誌檔案配置MySql
- Sqlserver delete表部分資料釋放資料檔案空間SQLServerdelete
- Oracle資料庫表空間的資料檔案大小上限。Oracle資料庫