CREATE TABLESPACE
功能描述
在数据库中创建一个新的表空间。
本文档只介绍
CREATE TABLESPACE
语句兼容MySQL的特性,原Vastbase的CREATE TABLESPACE
语法未做删除和修改,详见CREATE TABLESPACE。
Vastbase在MySQL兼容模式下,支持CREATE TABLESPACE
语句如下特性用法:
由于路径的特殊字符校验,在使用ADD DATAFILE创建表空间时,若输入路径以.ibd
结尾,那么Vastbase会将路径名称更改为以_ibd
结尾。
注意事项
该功能仅在数据库兼容模式为MySQL时支持(即数据库实例初始化时指定DBCOMPATIBILITY='B')。
语法格式
CREATE TABLESPACE tablespace_name
tablespace_details;
其中创建表空间的详细信息tablespace_details为:
[ OWNER user_name ] [RELATIVE] LOCATION 'directory' [ MAXSIZE 'space_size' ] [with_option_clause] [ ENGINE [=] engine_name ]
| ADD DATAFILE 'directory' [ ENGINE [=] engine_name ]
参数说明
ENGINE [=] engine_name
指定存储引擎,该语法仅做语法兼容,不实现功能。
示例
1、使用ADD DATAFILE
语法创建表空间,输入路径以.ibd
结尾。
CREATE TABLESPACE test_tbspace_ibd ADD DATAFILE 'test_tbspace1.ibd';
返回结果为:
WARNING: Suffix ".ibd" of datafile path detected. The actual path will be renamed as "test_tbspace1_ibd"
CREATE TABLESPACE
2、在表空间test_tbspace1.ibd中创建表。
CREATE TABLE t_tbspace(num int) TABLESPACE test_tbspace_ibd;
3、查询表结构。
\d t_tbspace
返回结果为:
Table "public.t_tbspace"
Column | Type | Modifiers | Attalias
--------+---------+-----------+----------
num | integer | | num
Tablespace: "test_tbspace_ibd"