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 Undo表空間配置MySql
- MySQL 增加InnoDB系統表空間大小MySql
- MySQL 系統表空間檔案解析MySql
- MySQL InnoDB臨時表空間配置MySql
- MySQL innodb表使用表空間物理檔案複製表MySql
- MySQL 減少InnoDB系統表空間的大小MySql
- MySQL InnoDB表空間加密MySql加密
- 達夢資料庫系統表空間資料檔案遷移過程資料庫
- 表空間和資料檔案的管理
- MySQL InnoDB File-Per-Table表空間MySql
- MySQL InnoDB日誌檔案配置MySql
- Configure innodb 表空間
- MySQL 磁碟空間滿導致表空間相關資料檔案損壞故障處理MySql
- oracle 普通表空間資料檔案壞塊Oracle
- 表空間(資料檔案shrink)收縮示例
- 新建的表空間(或資料檔案)丟失以及控制檔案丟失,有新建表空間(或資料檔案)前的控制文
- Innodb:Undo 表空間巨大
- 2.5.9 在資料庫建立期間支援大檔案表空間資料庫
- Oracle臨時表空間檢視、新增臨時表空間資料檔案、修改預設臨時表空間 方法!Oracle
- 2.5.4 為 SYSAUX 表空間指定資料檔案屬性UX
- PostgreSQL在不同的表空間移動資料檔案SQL
- 表空間與資料檔案的offline和online操作
- Oracle 表空間增加檔案Oracle
- Mysql InnoDB刪除資料後釋放磁碟空間的方法MySql
- InnoDB資料字典詳解-系統表
- Oracle案例11——Oracle表空間資料庫檔案收縮Oracle資料庫
- MySQL:如何快速的檢視Innodb資料檔案MySql
- MySQL底層概述—4.InnoDB資料檔案MySql
- innodb表空間儲存結構
- 關於丟失表空間資料檔案的處理方式
- MYSQL造資料佔用臨時表空間MySql
- oracle dg庫資料檔案空間不足Oracle
- 為Zabbix MySQL設定獨立表空間innodb_file_per_tableMySql
- PostgreSQL:表空間-->資料庫-->表SQL資料庫
- 帝國CMS系統資料庫配置檔案是哪個檔案?資料庫
- mysql Innodb表空間解除安裝、遷移、裝載的使用方法MySql
- Oracle 刪除使用者、表空間、資料檔案、使用者下的所有表Oracle
- MySQL 傳輸表空間MySql