我正在运行 Mariadb 5.5,并且在 InnoDB 模式下有一个表。由于表的大小已经非常大(7 亿行)并且预计会变得更大,因此我对一些列建立了索引,以便更快地搜索。
同时,我们买了一个SSD硬盘,我想我应该把mysql的tmp文件夹放在里面,这样就可以用来做一些事情。索引并变得更快。我的问题是,是否也可以将索引移动到 SSD 文件夹?它们是否可以以某种方式“分离”并放在那里以使事情变得更快,或者不是?
谢谢!
最佳答案
表病人记录:
CREATE TABLE
Patient_records (
MRD_sample_FORMAT_id int(11) NOT NULL,
DataType char(1) NOT NULL,
SequencingOrigin char(1) NOT NULL,
ChrNo varchar(2) NOT NULL,
ChrPos int(10) unsigned NOT NULL,
snpID varchar(20) NOT NULL,
NuclREF varchar(500) NOT NULL,
NuclALT varchar(3000) NOT NULL,
QualityLevel float NOT NULL,
FilterString char(1) NOT NULL,
InfoString varchar(1000) NOT NULL,
GT varchar(20) DEFAULT NULL,
AD varchar(20) DEFAULT NULL,
DP varchar(20) DEFAULT NULL,
GQ varchar(20) DEFAULT NULL,
PL varchar(20) DEFAULT NULL,
KEY
fk_患者_idx (
MRD_sample_FORMAT_id ),
KEY
ChrNo (
ChrNo ) USING BTREE,
KEY
snpID (
snpID ),
KEY
idx_ Patient_records_ChrNo (
ChrNo ),
KEY
position_chrom (
ChrPos )
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
表病人查找:
CREATE TABLE
Patient_lookup (
MRD_sample_FORMAT_id int(11) NOT NULL,
AnalyticalInfo varchar(150) NOT NULL,
MRD_SAMPLE_ID varchar(50) NOT NULL,
PRIMARY KEY (
MRD_sample_FORMAT_id ),
UNIQUE KEY
MRD_SAMPLE_ID (
MRD_SAMPLE_ID ),
KEY
MRD_SAMPLE_ID_2 (
MRD_SAMPLE_ID ),
KEY
AnalyticalInfo (
AnalyticalInfo )
) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
关于mysql - Mysql的列索引可以单独保存吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56605106/