Debian上的MySQL表空間主要用于存儲數據庫中的數據和索引
首先,創建一個新的目錄作為表空間。例如,創建一個名為my_innodb_ts
的目錄:
sudo mkdir /var/lib/mysql/my_innodb_ts
接下來,編輯MySQL配置文件/etc/mysql/my.cnf
(如果使用的是自定義配置文件,請找到相應的文件路徑),在[mysqld]
部分添加以下內容:
innodb_data_home_dir = /var/lib/mysql
innodb_data_file_path = my_innodb_ts:10M:autoextend
innodb_file_per_table = ON
這里,我們指定了表空間的目錄為/var/lib/mysql/my_innodb_ts
,并為該表空間分配了10MB的初始大小。autoextend
表示表空間可以根據需要自動擴展。
保存配置文件并重啟MySQL服務:
sudo systemctl restart mysql
現在,您可以創建一個新表,并將其存儲在剛剛創建的表空間中。例如,創建一個名為test_table
的表:
CREATE TABLE test_table (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT DATA DIRECTORY='/var/lib/mysql/my_innodb_ts';
注意,我們在CREATE TABLE
語句中添加了DATA DIRECTORY='/var/lib/mysql/my_innodb_ts'
,這告訴MySQL將新表存儲在指定的表空間中。
至此,您已經成功地在Debian上為MySQL創建了表空間,并將一個新表存儲在其中。