对比传统本地盘的数据库,TDSQL-C MySQL 版中的大表存储有什么优势?
TDSQL-C MySQL 版中的一张表,物理上会被拆分到 N 台存储服务器上存储,因此对一张表的 I/O 会被分摊到多块存储磁盘中,I/O 读取的整体吞吐性能要远优于集中式的本地盘数据库。
创建数据库、表的数量有限制吗?
如何创建数据库/表?
TDSQL-C MySQL 版支持多种方式创建数据库/表。
通过 TDSQL-C MySQL 版控制台,可快捷创建数据库/表,详细方法请参见 创建数据库。
通过 DMC 管理平台,可个性化创建数据库/表。
登录终端执行 SQL 命令创建数据库/表,登录终端可参见 连接集群。
创建数据库的 SQL 语句是 create database,命令为:
create database <数据库名>;
创建表的 SQL 语句是 create table,命令为:
create table <表名> (<表定义选项>)<表选项><分区选项>;<表定义选项>的格式为:列名1 类型1 [,…] 列名n 类型n
示例:选择创建表的数据库 test_db,创建 tb_emp1 数据表。
mysql> USE test_db;Database changedmysql> CREATE TABLE tb_emp1-> (-> id INT(11),-> name VARCHAR(25),-> deptId INT(11),-> salary FLOAT-> );Query OK, 0 rows affected (0.37 sec)
在同一个 TDSQL-C MySQL 版的数据库里复制一个数据量很大的表(如将整张表 A 复制到表 B 中),什么方式比较合适?
您可以使用如下 SQL 语句直接复制:
create table B as select * from A
TDSQL-C MySQL 版是否支持表的分区?
支持。需要通过裁剪大表来控制查询访问的数据量并且希望该裁剪对业务代码透明(无需修改业务代码)的场景下,适合使用分区表。
如何快速变更大表结构?
TDSQL-C MySQL 版支持 Instant DDL 功能,通过 instant 算法来避免数据拷贝,进而实现大表快速修改列的功能,不拷贝数据,不占用磁盘空间和磁盘 I/O,业务高峰期可以实现秒级变更。详细功能介绍请参见 Instant DDL 功能介绍。