你的說法應該是
CREATE TABLE db.tb (
tb_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY
)
ENGINE=InnoDB
DATA DIRECTORY='d:/Abc';
或
CREATE TABLE db.tb (
tb_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY
)
ENGINE=InnoDB
DATA DIRECTORY='d:\\Abc';
因爲寫在字符串中的反斜槓你得加倍,你失蹤了=
也爲賽義德阿里塔奇提到。
您應該檢查innodb_file_per_table配置選項啓用:
SELECT @@innodb_file_per_table; -- should return 1
Documentation
注:
在InnoDB中INDEX DIRECTORY
的情況下,將不再需要,因爲.idb
文件包含數據和索引,see manual:
使用文件按表格模式創建的每個InnoDB表會在數據庫 目錄內進入其 自己的表空間文件,其擴展名爲.ibd。該文件包含表格數據和 表格的所有索引。由innodb_file_per_table 選項控制的文件按表模式影響InnoDB存儲使用情況和性能的許多方面, 並且在MySQL 5.6.7和更高版本中默認啓用。
可能的重複http://stackoverflow.com/questions/12143561/data-directory-mysql – 2014-09-01 19:56:54
您在分配數據目錄時也缺少'='符號。 – 2014-09-01 20:00:08
「\」是[esacpe chaacter](http://dev.mysql.com/doc/refman/5.0/en/string-literals.html),所以請嘗試:'... DATA DIRECTORY'd:\\ Abc ';' – Rimas 2014-09-01 20:21:58