mysql如何解除索引 MySQL 索引刪除

2021-10-18 16:10:26 字數 1841 閱讀 9560

mysql 索引刪除

簡介:在本教程中,您將學習如何使用mysql drop index語句刪除表的現有索引。

mysql drop index語法

要從表中刪除現有索引,請使用以下drop index語句:

drop index index_name on table_name

[algorithm_option | lock_option];

在這個語法中:

首先,指定要在drop index關鍵字後刪除的索引的名稱。

其次,指定索引所屬的表的名稱。

演算法algorithm_option允許您指定用於索引中刪除特定的演算法。以下顯示了algorithm_option子句的語法:

algorithm [=]

對於索引刪除,支援以下演算法:

copy:表逐行複製到新錶,drop index然後在原始表的副本上執行。併發資料操作語句例如

inplace:表被重建到位而不是複製到新錶。mysql在索引刪除操作的準備和執行階段期間在表上發出獨佔元資料鎖。演算法允許併發資料操作語句。

請注意,algorithm子句是可選項。如果你跳過它,mysql會使用inplace。如果inplace不支援,mysql使用copy。

使用default與省略algorithm子句具有相同的效果。

鎖lock_option控制併發的電平讀出並同時索引被移除的表寫操作。

以下顯示了以下語法lock_option:

lock [=]

支援以下鎖定模式:

default:這允許您具有給定演算法的最大併發級別。首先,如果支援,它允許併發讀取和寫入。如果不支援,如果支援則允許併發讀取。如果不是,請強制執行獨佔訪問。

none:如果none支援,則可以進行併發讀寫。否則,mysql會發出錯誤。

shared:如果shared支援,則可以進行併發讀取,但不能寫入。如果不支援併發讀取,mysql會發出錯誤。

exclusive:這會強制執行獨佔訪問。

mysql drop index示例

讓我們為演示建立乙個新錶:

create table leads(

lead_id int auto_increment,

first_name varchar(100) not null,

last_name varchar(100) not null,

email varchar(255) not null,

information_source varchar(255),

index name(first_name,last_name),

unique email(email),

primary key(lead_id)

以下語句從leads表中刪除name索引:

drop index name on leads;

以下語句使用特定演算法並鎖定leads表中的email索引:

drop index email on leads

algorithm = inplace

lock = default;

mysql drop primary key索引

要刪除primary主鍵的索引,請使用以下語句:

drop index `primary` on table_name;

以下語句建立乙個以t主鍵命名的新錶:

create table t(

pk int primary key,

c varchar(10)

要刪除主鍵索引,請使用以下語句:

drop index `primary` on t;

在本教程中,您學習了如何使用mysql drop index語句刪除表的現有索引。

mysql死鎖後狀態 mysql如何解除死鎖狀態

第一種 前提條件 找到執行非常慢的sql 如何找呢 還原客戶遇到的問題場景,從控制台找到所執行的sql,一句句的去執行,直到找到執行非常慢的sql 1.查詢是否鎖表 show open tables where in use 0 2.查詢程序 如果您有super許可權,您可以看到所有執行緒。否則,您...

world 文件保護如何解除

解除word文件保護三種方法 方法一 插入檔案法 啟動word,新建乙個空白文件,執行 插入 檔案命令,開啟插入檔案對話方塊,定位到需要解除保護的文件所在的資料夾,選中相應文件,單擊插入按鈕,將加密保護的文件插入到新文件中,文件保護會被自動撤銷。方法二 檔案另存法 開啟保護的文件,執行 檔案 另存為...

物件導向 如何解除具體依賴

解除依賴就是松耦合,松耦合就一定好嗎?當然不是程式的耦合度與內聚度要放在一起說,當然,對於領域層來說,適當的減少類與類之間的依賴是很有必要的,看下面我的這段 乙個例子,乙個訂單系統,它根據國家有不同的下單方法,對於低層 層 是一樣的,但對於領域層,也叫業務邏輯層,它是不一樣的,可能小日本下單打 拍,...