mysql學習筆記 第五天

來源:互聯網
上載者:User

標籤:style   blog   color   使用   io   資料   ar   2014   

使用分區資料表:
  分區資料表和merge資料表具有相似的作用,但是分區資料表確確實實是一個資料表
  ,不像merge是列出資料表的邏輯關係,並且分區資料表可以包括像myisam以外的
  的資料表。
建立分區資料表:
  create table 裡給出資料列和索引,然後用partition by 定義一個用來把資料行分配
  到各個分區的分區函數:[將資料表分成四個區]

create table log_partition(     dt datetime not null,     info varchar(100) not null,     index(dt))   partition by range(year(dt))        (          partition p0 values less than (2010),          partition p1 values less than (2011),          partition p2 values less than (2012),           partition p3 values less than maxvalue        );
 
將maxvalue再進行分區
alter log_partition reorganize partitioninto ( partition p4 values less than (2013),partition p5 values less than (2014),partition p6 values less than maxvalue);  

 

 

分區被包含在分區資料表所屬於的資料庫的子目錄中,需要使用data_directory和index_dirctory分區選項;

federated(同盟)引擎
      可以訪問其他主機由另一個mysql伺服器管理的資料表

刪除資料表:
      drop table table_name1,table_name2,...]
      在不確定刪除的資料庫是否存在時,使用drop table if exist table_name,在建立指令碼的時候使用if exist 會更加的安全,
      如要刪除臨時資料表加上temporary關鍵字:drop temporary table table_name;
建立索引:
    唯一索引:不允許索引項目本身出現重複的值(primary,unqiue)
    普通索引:允許索引出現重複值
fulltext索引:全文索引,只適合myisam引擎
spatial索引只能使用與myisam資料表,只用於not null屬性,所涉及的列全部帶索引
hash(散列索引):這是memory的預設索引類型,但是memory索引還可以使用btree;
        hash是精確尋找,比較尋找的時候使用btree更好
使用alter table和create index給現有資料表添加索引
     alter table table_name add [index,unique,primary key,fulltext,spatial] index_name(index_columns)     ps:index_name是可選的
如果某個索引是primary key和spatial,那麼帶索引的必須是not null屬性
如果想限制獨不能重複的值,可以建立primary key或者unique索引
    (1)但是每一個資料表只有一個primary key,而unique卻可以有多
    (2)primary key不能包括null值,但是unqie卻可以,而且可以使多個null值
除了primary key,其他的索引幾乎都可以使用create index語句:create index index_name on table_name(index_name)(一次只能建立一個索引)
在建立表的時候定義索引:
          

create table table_name(id int,index [index_name](id));對於primary key和unqie來說可以是:create table table_name(id int primary key[unqie]);

menory的預設索引是hash(散列索引),但用memory資料表進行範圍比較(id<100)建立btree比hash更好

create table tb_name(id int,index using btree(id))engine=memory;

對某個字串首碼編輯索引,文法是columns(n)n是前面的n個字元

create table tb_name(name char(30) NOT NULL,adress binary(60) NOT NULL,index(name(10)),index(adress(15)));

對於blob和text資料列則只能建立首碼型索引
重建索引:
    repair table table_name quick;
查看索引:
    show index from table_name或show keys from table_name ps:查看index_name
刪除索引:
    drop index index_name on tb_name
    alter table tb_name drop index index_name




    

    

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.