mysql表管理

來源:互聯網
上載者:User
1.複製表

當你需要建立一個恰好懷某個已有表結構一致的表時,可以使用

create table...like語句來複製表結構;使用insert into...select

 語句複製部分或者全部表資料。

 

2.暫存資料表

需要一個建立僅供臨時使用,並且自動刪除的表?那麼用暫存資料表吧,

可以使用create temporary table..語句來建立一個暫存資料表,在和

mysql伺服器的串連關閉之後,建立的暫存資料表將被自動刪除。

 

普通的建表語句:

create temporary table tbl_name(...列定義...);

根據查詢結果建表:

create temporary table tbl_name select ...;

 

需要注意的是保證暫存資料表名在應用程式內部唯一。

暫存資料表具有的另外一個特性是,暫存資料表可以使用普通表的表名。

這樣做的結果是,在暫存資料表的生命週期內,它將與之同名的普通表,

利用這個特性,可以建立一個普通表的臨機操作備份,對暫存資料表可心做

任意操作,而不影響真實資料。

 

3.檢查或改變某個表的儲存引擎

mysql支援多種儲存引擎,每一種都有不同的特性。例如,InnoDB和BDB支援事務,

而MyISAM不支援(事務)。如果你需要確定一張表是否支援事務的話,就確定它所

使用的引擎。如果你需要在一個事務中使用改表,但是對應的引擎不支援,你可以將

改錶轉換到一個支援事務的引擎上。

 

你可以使用information_schema,或使用show table status,或使用show create

table語句,來確定一張表當前使用的引擎。如下:

(1)select engine from information_schema.tables

where table_schema = 'mail' and table_name = 'test'

(2)show table status like 'test';

(3)show create table 'test';

 

使用alter table以及一個engine子句,來改變一張表所用的引擎。例如:

alter table mail engine = InnoDB;

注意:改變一個很大的表所有的儲存引擎可能會耗費很長時間,並花費大量

cpu以及i/o資源。

...未完待續

 

 

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.