mysql給資料量大的表新增索引的辦法

2021-10-23 04:35:04 字數 500 閱讀 9556

有乙個問題,一張表有3百萬條記錄,隨著時間的增加,記錄量會更多,此時查詢速度很慢。在建立此表前沒有未相應字段新增索引,所以此時需要為表新增索引。但是因為資料量大的原因,索引新增不成功,想了很多辦法,終於在短時間內解決了。

辦法如下:

1、進入mysql介面。mysql -uroot -hlocalhost -plovelive gm;

2、匯出相應表的資料。select * from tab into outfile 'tab.txt'; 此處tab.txt檔案在mysql的data目錄裡

3、刪除相應表的資料,並置第一條記錄為0。truncate tab;

4、建立索引。create index idx_name using btree on tab (col);

索引的方式有:btree、rtree、hash、fulltext、spatial

5、匯入檔案到相應表。load data infile '/mysql/data/tab.txt' into table tab;

MySQL資料量大小查詢

找到information schema 資料庫 存放了其他的資料庫的資訊 a 伺服器中登入並進入information schema use information schema b 使用第三方工具找到庫,查詢即可 1 查詢所有資料的大小 示例以mb為單位 select concat round ...

SQL Server表的資料量大小查詢

今天想在伺服器上還原乙個db,發現磁碟空間不夠,檢視發現,其中乙個db竟然有56g了。因此想收縮一下這個db,發現大小沒多大變化。然後在網上找了找sql指令碼,看能不能檢視下哪個表的資料量那麼大。網上找到的指令碼 create table temp name nvarchar 100 rows ch...

mysql表資料量大時檢視行數和所佔物理空間

近日需要對一張mysql表進行分表,先查一下它目前的資料量,沒多想直接使用了以下sql,id為主鍵,看起來好像沒什麼問題,沒想到由於資料量太大,跑出來結果需要很久很久。select count id from table name 可以從mysql自帶的information schema庫里檢視相...